TracktionEngine
|
Determines how this block releates to other previous render blocks and if the play head has jumped in time. More...
Public Member Functions | |
PlayHeadState (PlayHead &ph) | |
void | update (juce::Range< int64_t > referenceSampleRange) |
Call once per block to update the jumped state. More... | |
bool | isContiguousWithPreviousBlock () noexcept |
Returns true if the play head did not jump and this block is contiguous with the previous block. More... | |
bool | didPlayheadJump () noexcept |
Returns true if the play head jumped. More... | |
bool | isFirstBlockOfLoop () noexcept |
Returns true if this is the first block of a loop. More... | |
bool | isLastBlockOfLoop () noexcept |
Returns true if this is the last block of a loop. More... | |
Public Attributes | |
PlayHead & | playHead |
Determines how this block releates to other previous render blocks and if the play head has jumped in time.
tracktion::graph::PlayHeadState::PlayHeadState | ( | PlayHead & | ph | ) |
void tracktion::graph::PlayHeadState::update | ( | juce::Range< int64_t > | referenceSampleRange | ) |
Call once per block to update the jumped state.
Usually called at the same time as the PlayHead::incrementReferenceSampleCount method.
References tracktion::graph::PlayHead::getLastUserInteractionTime(), tracktion::graph::PlayHead::getLoopRange(), tracktion::graph::PlayHead::isLooping(), tracktion::graph::PlayHead::isPlaying(), tracktion::graph::PlayHead::isRollingIntoLoop(), playHead, and tracktion::graph::PlayHead::referenceSamplePositionToTimelinePosition().
Referenced by tracktion::graph::NodePlayer::processWithPlayHeadState().
|
noexcept |
Returns true if the play head did not jump and this block is contiguous with the previous block.
References didPlayheadJump(), and isFirstBlockOfLoop().
|
noexcept |
Returns true if the play head jumped.
Referenced by isContiguousWithPreviousBlock().
|
noexcept |
Returns true if this is the first block of a loop.
Referenced by isContiguousWithPreviousBlock().
|
noexcept |
Returns true if this is the last block of a loop.
PlayHead& tracktion::graph::PlayHeadState::playHead |
Referenced by tracktion::engine::TracktionEngineNode::getPlayHead(), tracktion::engine::benchmark_utilities::prepareRenderAndDestroy(), tracktion::graph::NodePlayer::prepareToPlay(), tracktion::engine::MultiThreadedNodePlayer::process(), tracktion::engine::TracktionNodePlayer::process(), tracktion::graph::NodePlayer::processWithPlayHeadState(), and update().