TracktionEngine
Public Member Functions | List of all members
tracktion::engine::RackNodePlayer< NodePlayerType > Class Template Reference

Simple processor for a Node which uses an InputProvider to pass input in to the graph. More...

Public Member Functions

 RackNodePlayer (std::unique_ptr< tracktion::graph::Node > nodeToProcess)
 Creates an RackNodePlayer to process an Node with input. More...
 
 RackNodePlayer (std::unique_ptr< tracktion::graph::Node > nodeToProcess, double sampleRateToUse, int blockSizeToUse)
 Creates an RackNodePlayer to process an Node with input, sample rate and block size. More...
 
void prepareToPlay (double sampleRate, int blockSize)
 Preapres the processor to be played. More...
 
int getLatencySamples ()
 
int process (const tracktion::graph::Node::ProcessContext &pc)
 Processes a block of audio and MIDI data. More...
 
int process (const tracktion::graph::Node::ProcessContext &pc, TimeRange editTime, bool isPlaying, bool isScrubbing, bool isRendering)
 Processes a block of audio and MIDI data with a given PlayHead and EditTimeRange. More...
 

Detailed Description

template<typename NodePlayerType>
class tracktion::engine::RackNodePlayer< NodePlayerType >

Simple processor for a Node which uses an InputProvider to pass input in to the graph.

This simply iterate all the nodes attempting to process them in a single thread.

Constructor & Destructor Documentation

◆ RackNodePlayer() [1/2]

template<typename NodePlayerType >
tracktion::engine::RackNodePlayer< NodePlayerType >::RackNodePlayer ( std::unique_ptr< tracktion::graph::Node nodeToProcess)

Creates an RackNodePlayer to process an Node with input.

◆ RackNodePlayer() [2/2]

template<typename NodePlayerType >
tracktion::engine::RackNodePlayer< NodePlayerType >::RackNodePlayer ( std::unique_ptr< tracktion::graph::Node nodeToProcess,
double  sampleRateToUse,
int  blockSizeToUse 
)

Creates an RackNodePlayer to process an Node with input, sample rate and block size.

Member Function Documentation

◆ prepareToPlay()

template<typename NodePlayerType >
void tracktion::engine::RackNodePlayer< NodePlayerType >::prepareToPlay ( double  sampleRate,
int  blockSize 
)

Preapres the processor to be played.

◆ getLatencySamples()

template<typename NodePlayerType >
int tracktion::engine::RackNodePlayer< NodePlayerType >::getLatencySamples ( )

◆ process() [1/2]

template<typename NodePlayerType >
int tracktion::engine::RackNodePlayer< NodePlayerType >::process ( const tracktion::graph::Node::ProcessContext pc)

Processes a block of audio and MIDI data.

Returns the number of times a node was checked but unable to be processed.

◆ process() [2/2]

template<typename NodePlayerType >
int tracktion::engine::RackNodePlayer< NodePlayerType >::process ( const tracktion::graph::Node::ProcessContext pc,
TimeRange  editTime,
bool  isPlaying,
bool  isScrubbing,
bool  isRendering 
)

Processes a block of audio and MIDI data with a given PlayHead and EditTimeRange.

This should be used when processing ExternalPlugins or they will crash when getting the playhead info.


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