|
LMMS
|
Public Member Functions | |
| RenderingOpSequenceCalculator (AudioProcessorGraph &g, const Array< AudioProcessorGraph::Node * > &nodes, Array< void * > &renderingOps) | |
| int | getNumAudioBuffersNeeded () const noexcept |
| int | getNumCVBuffersNeeded () const noexcept |
| int | getNumMidiBuffersNeeded () const noexcept |
Private Types | |
| enum | { freeNodeID = 0xffffffff , zeroNodeID = 0xfffffffe , anonymousNodeID = 0xfffffffd } |
Private Member Functions | |
| int | getNodeDelay (const uint32 nodeID) const |
| void | setNodeDelay (const uint32 nodeID, const int latency) |
| int | getInputLatencyForNode (const uint32 nodeID) const |
| void | createRenderingOpsForNode (AudioProcessorGraph::Node &node, Array< void * > &renderingOps, const int ourRenderingIndex) |
| int | getFreeBuffer (const AudioProcessor::ChannelType channelType) |
| int | getReadOnlyEmptyBuffer () const noexcept |
| int | getBufferContaining (const AudioProcessor::ChannelType channelType, const uint32 nodeId, const uint outputChannel) const noexcept |
| void | markAnyUnusedBuffersAsFree (const int stepIndex) |
| bool | isBufferNeededLater (const AudioProcessor::ChannelType channelType, int stepIndexToSearchFrom, uint inputChannelOfIndexToIgnore, const uint32 nodeId, const uint outputChanIndex) const |
| void | markBufferAsContaining (const AudioProcessor::ChannelType channelType, int bufferNum, uint32 nodeId, int outputIndex) |
Static Private Member Functions | |
| static bool | isNodeBusy (uint32 nodeID) noexcept |
Private Attributes | |
| AudioProcessorGraph & | graph |
| const Array< AudioProcessorGraph::Node * > & | orderedNodes |
| Array< uint > | audioChannels |
| Array< uint > | cvChannels |
| Array< uint32 > | audioNodeIds |
| Array< uint32 > | cvNodeIds |
| Array< uint32 > | midiNodeIds |
| Array< uint32 > | nodeDelayIDs |
| Array< int > | nodeDelays |
| int | totalLatency |
Used to calculate the correct sequence of rendering ops needed, based on the best re-use of shared buffers at each stage.
|
inline |
|
inlineprivate |
|
inlineprivatenoexcept |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlineprivatenoexcept |
|
inlineprivate |
|
inlinestaticprivatenoexcept |
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
private |
|
private |
|
private |