Switchboard SDK
Loading...
Searching...
No Matches
switchboard::CrossfaderNode Class Reference

Mixes two input buses to a single one. More...

#include <CrossfaderNode.hpp>

Inheritance diagram for switchboard::CrossfaderNode:
switchboard::AudioProcessorNode switchboard::AudioNode

Public Member Functions

 CrossfaderNode ()
 Initializes a CrossfaderNode instance.
 
double getCrossfadeRatio () const
 Gets the current crossfade ratio.
 
void setCrossfadeRatio (const double newValue)
 Sets the crossfade ratio.
 
bool setNumberOfBuses (const uint numberOfInputBuses, const uint numberOfOutputBuses) override
 Sets number of buses.
 
bool setBusFormats (AudioBusFormatList &inputBusFormats, AudioBusFormatList &outputBusFormats) override
 Sets bus formats.
 
bool process (AudioBusList &inBuses, AudioBusList &outBuses) override
 Processes audio data from the given input buses and produces the audio output to the given output buses.
 
- Public Member Functions inherited from switchboard::AudioProcessorNode
virtual ~AudioProcessorNode ()=default
 AudioProcessorNode virtual destructor.
 
- Public Member Functions inherited from switchboard::AudioNode
 AudioNode ()
 AudioNode constructor.
 
virtual ~AudioNode ()=default
 AudioNode virtual destructor.
 
const std::string & getType () const
 Gets the type of the audio node.
 
virtual const std::string getDisplayName () const
 Gets the display name of the audio node.
 
virtual std::vector< std::unique_ptr< Parameter > > & getParameters ()
 Gets the parameters of the audio node.
 
virtual ParametergetParameter (const std::string &id)
 Gets the parameter with the given name.
 

Additional Inherited Members

- Public Attributes inherited from switchboard::AudioNode
std::string name
 The name of the audio node.
 
- Protected Member Functions inherited from switchboard::AudioNode
void initParameters (std::map< std::string, std::any > config)
 Initializes the node parameters from the given configuration values.
 
- Protected Attributes inherited from switchboard::AudioNode
std::string type
 
std::vector< std::unique_ptr< Parameter > > parameters
 

Detailed Description

Mixes two input buses to a single one.

CrossfaderNode class.

Member Function Documentation

◆ getCrossfadeRatio()

double switchboard::CrossfaderNode::getCrossfadeRatio ( ) const

Gets the current crossfade ratio.

0.0 is first bus only, 1.0 is second bus only.

Returns
The bus index.

◆ process()

bool switchboard::CrossfaderNode::process ( AudioBusList & inBuses,
AudioBusList & outBuses )
overridevirtual

Processes audio data from the given input buses and produces the audio output to the given output buses.

Should be overridden by subclasses.

Parameters
inBusesThe input buses that contain the audio data.
outBusesThe output buses which should be filled with the processed audio data.
Returns
True if audio was processed successfully, false otherwise.

Implements switchboard::AudioProcessorNode.

◆ setBusFormats()

bool switchboard::CrossfaderNode::setBusFormats ( AudioBusFormatList & inputBusFormats,
AudioBusFormatList & outputBusFormats )
overridevirtual

Sets bus formats.

Should be overridden by subclasses. Please note that setNumberOfBuses is guaranteed to be called before this method.

Parameters
inputBusFormatsThe input bus formats to set.
outputBusFormatsThe output bus formats to set.
Returns
True if the bus formats were set successfully, false otherwise.

Implements switchboard::AudioProcessorNode.

◆ setCrossfadeRatio()

void switchboard::CrossfaderNode::setCrossfadeRatio ( const double newValue)

Sets the crossfade ratio.

0.0 is first bus only, 1.0 is second bus only.

Parameters
newValueThe new crossfade ratio.

◆ setNumberOfBuses()

bool switchboard::CrossfaderNode::setNumberOfBuses ( const uint numberOfInputBuses,
const uint numberOfOutputBuses )
overridevirtual

Sets number of buses.

Should be overridden by subclasses

Parameters
numberOfInputBusesThe number of input buses to set.
numberOfOutputBusesThe number of output buses to set.
Returns
True for valid number of buses, false otherwise.

Implements switchboard::AudioProcessorNode.