MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ Sine() [4/4]

MayaFlux::Nodes::Generator::Sine::Sine ( const std::shared_ptr< Node > &  frequency_modulator,
const std::shared_ptr< Node > &  amplitude_modulator,
float  frequency = 440,
double  amplitude = 1,
float  offset = 0 
)

Constructor with both frequency and amplitude modulation.

Parameters
frequency_modulatorNode that modulates the frequency
amplitude_modulatorNode that modulates the amplitude
frequencyBase frequency in Hz (default: 440Hz)
amplitudeBase amplitude (default: 1.0)
offsetDC offset added to the output (default: 0.0)

Creates a sine oscillator with both frequency and amplitude modulation, enabling complex synthesis techniques like FM and AM simultaneously.

Definition at line 38 of file Sine.cpp.

39 : m_offset(offset)
40 , m_frequency_modulator(frequency_modulator)
41 , m_amplitude_modulator(amplitude_modulator)
42{
43 m_amplitude = amplitude;
44 m_frequency = frequency;
45 update_phase_increment(frequency);
46}
float m_frequency
Base frequency of the generator.
double m_amplitude
Base amplitude of the generator.
float m_offset
DC offset added to the output.
Definition Sine.hpp:217
void update_phase_increment(double frequency)
Updates the phase increment based on a new frequency.
Definition Sine.cpp:54
std::shared_ptr< Node > m_frequency_modulator
Node that modulates the frequency.
Definition Sine.hpp:222
std::shared_ptr< Node > m_amplitude_modulator
Node that modulates the amplitude.
Definition Sine.hpp:227

References MayaFlux::Nodes::Generator::Generator::m_amplitude, MayaFlux::Nodes::Generator::Generator::m_frequency, and update_phase_increment().

+ Here is the call graph for this function: