#include <additive_saw.hh>
Inheritance diagram for yase::AdditiveSaw:
Collaboration diagram for yase::AdditiveSaw:A sawtooth wave oscillator.
This module produces a sawtooth wave output and has all the inputs that an Oscillator has. It sums up sine waves according to the fourier expansion of a sawtooth wave. This is computationally expensive but very nice; or
| [input] | frequency The frequency |
| [input] | amplitude The amplitude |
| [input] | modulation A modulation input that modules that rate of the square wave |
| [input] | tuning This input has units in Cents. It tunes the input frequency of the oscillator. |
| [input] | harmonic The harmonic of the oscillator. The actual frequency will be frequency * 2^harmonic |
| [output] | signal The output of the oscillator |
Public Member Functions | |
| AdditiveSaw () | |
| Construct a sawtooth oscillator. The default is to set the type to "additive". | |
| void | init () |
| void | update () |
Public Member Functions inherited from yase::Oscillator | |
| void | init () |
| virtual void | update () |
Public Member Functions inherited from yase::Module | |
| 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 () |
|
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.
|
virtual |
This method should be overridden by derived classes. It will be called repeatedly by a synthesizer at a frequency determined by SAMPLE_RATE.
Reimplemented from yase::Oscillator.