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

Generates a specified signal to the output. More...

#include <GeneratorNode.hpp>

Inheritance diagram for switchboard::GeneratorNode:
switchboard::SingleBusAudioSourceNode switchboard::AudioSourceNode switchboard::AudioNode

Public Member Functions

 GeneratorNode (GeneratorType generatorType)
 Creates a GeneratorNode instance.
 
float getFrequency () const
 Gets the current frequency value of the generated signal.
 
void setFrequency (const float frequency)
 Sets the frequency of the generated signal.
 
float getAmplitude () const
 Gets the current amplitude value of the generated signal.
 
void setAmplitude (const float amplitude)
 Sets the amplitude of the generated signal.
 
float getDutyCycle () const
 Gets the current duty cycle of the generated signal.
 
void setDutyCycle (const float dutyCycle)
 Sets the duty cycle of the generated signal.
 
bool setBusFormat (AudioBusFormat &busFormat) override
 Sets bus format.
 
bool produce (AudioBus &bus) override
 Produces audio data in the given bus.
 
- Public Member Functions inherited from switchboard::SingleBusAudioSourceNode
bool setNumberOfBuses (const uint numberOfBuses) override
 Sets number of buses.
 
bool setBusFormats (AudioBusFormatList &busFormats) override
 Sets bus formats.
 
bool produce (AudioBusList &buses) override
 Produces audio data in the given buses.
 
- Public Member Functions inherited from switchboard::AudioSourceNode
- 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

Generates a specified signal to the output.

GeneratorNode class

Constructor & Destructor Documentation

◆ GeneratorNode()

switchboard::GeneratorNode::GeneratorNode ( GeneratorType generatorType)

Creates a GeneratorNode instance.

Parameters
generatorTypeThe type of the generator.

Member Function Documentation

◆ getAmplitude()

float switchboard::GeneratorNode::getAmplitude ( ) const

Gets the current amplitude value of the generated signal.

Returns
The amplitude value.

◆ getDutyCycle()

float switchboard::GeneratorNode::getDutyCycle ( ) const

Gets the current duty cycle of the generated signal.

Note
Only used by square wave generator.
Returns
The duty cycle value.

◆ getFrequency()

float switchboard::GeneratorNode::getFrequency ( ) const

Gets the current frequency value of the generated signal.

Note
No effect on noise generators.
Returns
The frequency value in Hz.

◆ produce()

bool switchboard::GeneratorNode::produce ( AudioBus & bus)
overridevirtual

Produces audio data in the given bus.

Should be overridden by subclasses.

Parameters
busThe bus that should be filled with audio data.
Returns
True if audio was produced successfully, false otherwise.

Implements switchboard::SingleBusAudioSourceNode.

◆ setAmplitude()

void switchboard::GeneratorNode::setAmplitude ( const float amplitude)

Sets the amplitude of the generated signal.

Parameters
amplitudeThe new amplitude value. Should be between 0 and 1.

◆ setBusFormat()

bool switchboard::GeneratorNode::setBusFormat ( AudioBusFormat & busFormat)
overridevirtual

Sets bus format.

Should be overridden by subclasses.

Parameters
busFormatThe bus format to set.
Returns
True if the bus format was set successfully, false otherwise.

Implements switchboard::SingleBusAudioSourceNode.

◆ setDutyCycle()

void switchboard::GeneratorNode::setDutyCycle ( const float dutyCycle)

Sets the duty cycle of the generated signal.

Note
Only used by square wave generator.
Parameters
dutyCycleThe new duty cycle value. Should be between 0 and 1.

◆ setFrequency()

void switchboard::GeneratorNode::setFrequency ( const float frequency)

Sets the frequency of the generated signal.

Note
No effect on noise generators.
Parameters
frequencyThe new frequency value in Hz.