TracktionEngine
Public Member Functions | Public Attributes | List of all members
tracktion::engine::SubSampleWaveAudioNode Class Reference
Inheritance diagram for tracktion::engine::SubSampleWaveAudioNode:

Public Member Functions

 SubSampleWaveAudioNode (Engine &e, const AudioFile &af, legacy::EditTimeRange editTime, double off, legacy::EditTimeRange loop, LiveClipLevel level, double speed, const juce::AudioChannelSet &channels)
 
void getAudioNodeProperties (AudioNodeProperties &info) override
 
void visitNodes (const VisitorFn &v) override
 
bool purgeSubNodes (bool keepAudio, bool) override
 Tells the node to delete any sub-nodes that don't produce the required type of output. More...
 
void prepareAudioNodeToPlay (const PlaybackInitialisationInfo &info) override
 tells the node to initialise itself ready for playing from the given time. More...
 
bool isReadyToRender () override
 
void releaseAudioNodeResources () override
 tells the node that play has stopped, and it can free up anything it no longer needs. More...
 
void renderOver (const AudioRenderContext &rc) override
 
void renderAdding (const AudioRenderContext &rc) override
 
void prepareForNextBlock (const AudioRenderContext &rc) override
 
void renderSection (const AudioRenderContext &rc, legacy::EditTimeRange editTime)
 
- Public Member Functions inherited from tracktion::engine::AudioNode
 AudioNode ()
 
virtual ~AudioNode ()
 
virtual juce::ReferenceCountedObjectPtr< PlugingetPlugin () const
 
void callRenderAdding (const AudioRenderContext &)
 
void callRenderOver (const AudioRenderContext &)
 

Public Attributes

Engineengine
 

Additional Inherited Members

- Public Types inherited from tracktion::engine::AudioNode
using VisitorFn = std::function< void(AudioNode &)>
 
- Static Public Member Functions inherited from tracktion::engine::AudioNode
template<typename CallbackType >
static void invokeSplitRender (const AudioRenderContext &rc, CallbackType &target)
 

Constructor & Destructor Documentation

◆ SubSampleWaveAudioNode()

tracktion::engine::SubSampleWaveAudioNode::SubSampleWaveAudioNode ( Engine e,
const AudioFile af,
legacy::EditTimeRange  editTime,
double  off,
legacy::EditTimeRange  loop,
LiveClipLevel  level,
double  speed,
const juce::AudioChannelSet &  channels 
)

Member Function Documentation

◆ getAudioNodeProperties()

void tracktion::engine::SubSampleWaveAudioNode::getAudioNodeProperties ( AudioNodeProperties info)
overridevirtual

◆ visitNodes()

void tracktion::engine::SubSampleWaveAudioNode::visitNodes ( const VisitorFn v)
overridevirtual

◆ purgeSubNodes()

bool tracktion::engine::SubSampleWaveAudioNode::purgeSubNodes ( bool  keepAudio,
bool  keepMidi 
)
overridevirtual

Tells the node to delete any sub-nodes that don't produce the required type of output.

This optimises out any unplayable bits of the audio graph. Returns true if this node should be kept, false if this node can itself be deleted.

Implements tracktion::engine::AudioNode.

◆ prepareAudioNodeToPlay()

void tracktion::engine::SubSampleWaveAudioNode::prepareAudioNodeToPlay ( const PlaybackInitialisationInfo )
overridevirtual

◆ isReadyToRender()

bool tracktion::engine::SubSampleWaveAudioNode::isReadyToRender ( )
overridevirtual

◆ releaseAudioNodeResources()

void tracktion::engine::SubSampleWaveAudioNode::releaseAudioNodeResources ( )
overridevirtual

tells the node that play has stopped, and it can free up anything it no longer needs.

Implements tracktion::engine::AudioNode.

◆ renderOver()

void tracktion::engine::SubSampleWaveAudioNode::renderOver ( const AudioRenderContext rc)
overridevirtual

◆ renderAdding()

void tracktion::engine::SubSampleWaveAudioNode::renderAdding ( const AudioRenderContext rc)
overridevirtual

◆ prepareForNextBlock()

void tracktion::engine::SubSampleWaveAudioNode::prepareForNextBlock ( const AudioRenderContext rc)
overridevirtual

◆ renderSection()

void tracktion::engine::SubSampleWaveAudioNode::renderSection ( const AudioRenderContext rc,
legacy::EditTimeRange  editTime 
)

Member Data Documentation

◆ engine

Engine& tracktion::engine::SubSampleWaveAudioNode::engine

The documentation for this class was generated from the following file: