#include <mixer.hh>
A mixer.
Take n input signals and output the wieghted sum of the signals using the "gain_*" inputs.
[in] | signal_i | The ith signal |
[in] | gain_i | The ith gain |
[out] | signal | The output |
Public Member Functions | |
Mixer (int n) | |
Construct a new mixer. | |
void | init () |
void | update () |
int | amplitude_index (int i) |
void | set_amplitude_input (int i, double value) |
double | get_amplitude_input (int i) |
void | extend () |
int | size () |
![]() | |
virtual void | init ()=0 |
virtual void | update ()=0 |
int | add_input (string name) |
int | add_output (string name) |
int | get_input_index (string name) const |
string | get_input_name (int index) const |
string | get_output_name (int index) const |
int | get_output_index (string name) const |
void | set_input (string name, double value) |
void | set_input (int index, double value) |
double | get_input (int index) const |
double | get_input (string name) const |
double | get_output (string name) const |
double | get_output (int index) const |
void | set_output (int index, double value) |
void | copy_inputs (const Module &source) |
void | copy_outputs (Module &destination) const |
void | configure (std::vector< std::tuple< string, double > > assignments) |
int | num_inputs () const |
int | num_outputs () const |
void | emit (Event e) |
void | set_ts (double s) |
double | get_ts () |
yase::Mixer::Mixer | ( | int | n | ) |
Construct a new mixer.
n | The number of signals to mix |
double yase::Mixer::get_amplitude_input | ( | int | i | ) |
The integer index of the gain input for the signal input i. If there are n inputs to the module, then "gain_i" is signal number n+i.
i | The index of the input |
|
virtual |
This method should be overridden by derived classes. It will usually be called once, after all modules and connections objects have been added to a synthesizer, but before the synthesizer starts running.
Implements yase::Module.
void yase::Mixer::set_amplitude_input | ( | int | i, |
double | value | ||
) |
Set the gain of input i to value. This method is faster than set_input("gain_i"), which should only be used during setup.
i | The index of the input |
value | The value to set the gain to |
|
virtual |
This method should be overridden by derived classes. It will be called repeatedly by a synthesizer at a frequency determined by SAMPLE_RATE.
Implements yase::Module.