TracktionEngine
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
engine::RackInstanceNode Class Referencefinal

Sends an input Node to a Rack bus handling the channel mapping and channel gain levels. More...

#include <tracktion_RackInstanceNode.h>

Inheritance diagram for engine::RackInstanceNode:

Public Types

using ChannelMap = std::vector< std::tuple< int, int, AutomatableParameter::Ptr > >
 

Public Member Functions

 RackInstanceNode (RackInstance::Ptr, std::unique_ptr< Node >, ChannelMap channelMap, ProcessState &, SampleRateAndBlockSize)
 Creates a RackInstanceNode that maps an input node channel to an output channel and applies a gain parameter to each mapped channel.
 
 ~RackInstanceNode () override
 
std::vector< Node * > getDirectInputNodes () override
 
tracktion::graph::NodeProperties getNodeProperties () override
 
void prepareToPlay (const tracktion::graph::PlaybackInitialisationInfo &) override
 
bool isReadyToProcess () override
 
void prefetchBlock (juce::Range< int64_t >) override
 
void preProcess (choc::buffer::FrameCount, juce::Range< int64_t >) override
 
void process (ProcessContext &) override
 
- Public Member Functions inherited from engine::TracktionEngineNode
 TracktionEngineNode (ProcessState &)
 Creates a TracktionEngineNode.
 
virtual ~TracktionEngineNode ()=default
 Destructor.
 
int getNumSamples () const
 Returns the number of samples in the current process block.
 
double getSampleRate () const
 Returns the sample rate of the current process block.
 
juce::Range< int64_t > getTimelineSampleRange () const
 Returns the timeline sample range of the current process block.
 
TimeRange getEditTimeRange () const
 Returns the edit time range of the current process block.
 
BeatRange getEditBeatRange () const
 Returns the edit beat range of the current process block.
 
juce::Range< int64_t > getReferenceSampleRange () const
 Returns the reference sample range (from the DeviceManager) of the current process block.
 
tempo::Key getKey () const
 Returns the key of the current process block.
 
double getPlaybackSpeedRatio () const
 Returns the playback speed ratio of the current process block.
 
std::optional< TimePosition > getTimeOfNextChange () const
 May return the time of the next tempo or time sig change.
 
std::optional< BeatPosition > getBeatOfNextChange () const
 May return the time of the next tempo or time sig change.
 
tracktion::graph::PlayHeadState & getPlayHeadState ()
 Returns the PlayHeadState in use.
 
tracktion::graph::PlayHead & getPlayHead ()
 Returns the PlayHead in use.
 
ProcessStategetProcessState ()
 Returns the ProcessState in use.
 
void setProcessState (ProcessState &)
 

Detailed Description

Sends an input Node to a Rack bus handling the channel mapping and channel gain levels.

Member Typedef Documentation

◆ ChannelMap

using engine::RackInstanceNode::ChannelMap = std::vector<std::tuple<int, int, AutomatableParameter::Ptr> >

Constructor & Destructor Documentation

◆ RackInstanceNode()

engine::RackInstanceNode::RackInstanceNode ( RackInstance::Ptr  ,
std::unique_ptr< Node >  ,
ChannelMap  channelMap,
ProcessState ,
SampleRateAndBlockSize   
)

Creates a RackInstanceNode that maps an input node channel to an output channel and applies a gain parameter to each mapped channel.

◆ ~RackInstanceNode()

engine::RackInstanceNode::~RackInstanceNode ( )
override

Member Function Documentation

◆ getDirectInputNodes()

std::vector< Node * > engine::RackInstanceNode::getDirectInputNodes ( )
override

◆ getNodeProperties()

tracktion::graph::NodeProperties engine::RackInstanceNode::getNodeProperties ( )
override

◆ prepareToPlay()

void engine::RackInstanceNode::prepareToPlay ( const tracktion::graph::PlaybackInitialisationInfo &  )
override

◆ isReadyToProcess()

bool engine::RackInstanceNode::isReadyToProcess ( )
override

◆ prefetchBlock()

void engine::RackInstanceNode::prefetchBlock ( juce::Range< int64_t >  )
override

◆ preProcess()

void engine::RackInstanceNode::preProcess ( choc::buffer::FrameCount  ,
juce::Range< int64_t >   
)
override

◆ process()

void engine::RackInstanceNode::process ( ProcessContext &  )
override

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