#include <Module.h>
Inheritance diagram for syn::Module:
Public Methods | |
Module () | |
virtual | ~Module () |
virtual void | update ()=0 |
virtual bool | open ()=0 |
open the stream and set the audio format of this module read from the stream(s) by getting the right output terminal. More... | |
virtual void | close ()=0 |
virtual void | setInstanceName (const std::string &name) |
virtual std::string | getInstanceName () const |
virtual Module* | clone () const=0 |
get an exact copy of me. More... | |
bool | isTerminator () |
Returns true if self terminates the graph (no output terms). More... | |
bool | isInitiator () |
Returns true if self initiates the graph (no input terms). More... | |
statistics | |
virtual unsigned int | pcount () const |
parameter access | |
virtual void | getParam (const std::string &key, MultivariateType &value)=0 |
You need to support this parameter list in your modules. More... | |
virtual void | setParam (const std::string &key, const MultivariateType &value)=0 |
You need to support this parameter list in your modules. More... | |
bool | getOutput (const std::string &name, TerminalPtr &output) |
get a producer by name return false if output not found by given name. More... | |
bool | getInput (const std::string &name, TerminalPtr &input) |
access an input terminal. More... | |
std::map<std::string, TerminalPtr>& | outputs () |
std::map<std::string, TerminalPtr>& | inputs () |
TerminalPtr | createOutput (const std::string &name) |
create an output terminal, add it to the module with the given name. More... | |
TerminalPtr | createInput (const std::string &name) |
create an input terminal, add it to the module with the given name. More... | |
void | removeOutput (const std::string &name) |
remove a producer from the box. More... | |
void | inputsRemove (const std::string &name) |
remove a consumer from the box. More... | |
Protected Methods | |
void | setPutCount (int p) |
Protected Attributes | |
std::map<std::string, TerminalPtr> | mOutputTerminals |
std::map<std::string, TerminalPtr> | mInputTerminals |
std::map<std::string, MultivariateType> | mParams |
std::string | mName |
unsigned int | mPutCount |
specialize this to define how the inputs and outputs are connected. NOTES: Signal sources will have outputs. Optionally they will have inputs for realtime control of params. Output streams (openal, wav, raw, net, etc...) will have inputs only. Filters will have [n] inputs, and [k] outputs, some will be for data, others for param control.
Definition at line 73 of file Module.h.
|
|
|
|
|
|
open the stream and set the audio format of this module read from the stream(s) by getting the right output terminal.
Reimplemented in syn::DummyOutputModule, syn::FilterModule, syn::InstrumentModule, syn::IStreamModule, syn::MixerModule, syn::OpenALOutputModule, syn::OperatorModule, syn::OscModule, syn::SplitterModule, and syn::WaveTableOscModule. |
|
|
|
|
|
|
get an exact copy of me.
Reimplemented in syn::DummyOutputModule, syn::FilterModule, syn::InstrumentModule, syn::IStreamModule, syn::MixerModule, syn::OpenALOutputModule, syn::OperatorModule, syn::OscModule, syn::SplitterModule, and syn::WaveTableOscModule. |
|
Reimplemented in syn::SplitterModule. |
|
Returns true if self terminates the graph (no output terms).
|
|
Returns true if self initiates the graph (no input terms).
|
|
You need to support this parameter list in your modules. If you don't, then special features like instrument builders and runtime introspection of synth state will not work. Reimplemented in syn::AdsrEnvModule, syn::DummyOutputModule, syn::FilterModule, syn::InstrumentModule, syn::IStreamModule, syn::MixerModule, syn::OpenALOutputModule, syn::OperatorModule, syn::OscModuleBase, syn::SplitterModule, and syn::WaveTableOscModule. |
|
You need to support this parameter list in your modules. If you don't, then special features like instrument builders and runtime introspection of synth state will not work. Reimplemented in syn::AdsrEnvModule, syn::DummyOutputModule, syn::FilterModule, syn::InstrumentModule, syn::IStreamModule, syn::MixerModule, syn::OpenALOutputModule, syn::OperatorModule, syn::OscModuleBase, syn::SplitterModule, and syn::WaveTableOscModule. |
|
get a producer by name return false if output not found by given name.
Definition at line 184 of file Module.h. Referenced by syn::MixerModule::MixerModule().
|
|
access an input terminal. return false if input not found by given name. |
|
Definition at line 219 of file Module.h. Referenced by syn::SplitterModule::update().
|
|
Definition at line 220 of file Module.h. Referenced by syn::MixerModule::update().
|
|
create an output terminal, add it to the module with the given name.
Definition at line 259 of file Module.h. Referenced by syn::FilterModule::FilterModule(), syn::IStreamModule::IStreamModule(), syn::MixerModule::MixerModule(), syn::OperatorModule::OperatorModule(), syn::OscModule::OscModule(), syn::SplitterModule::SplitterModule(), syn::WaveTableOscModule::WaveTableOscModule(), and getOutput().
|
|
create an input terminal, add it to the module with the given name.
Definition at line 268 of file Module.h. Referenced by syn::DummyOutputModule::DummyOutputModule(), syn::FilterModule::FilterModule(), syn::IStreamModule::IStreamModule(), syn::OpenALOutputModule::OpenALOutputModule(), syn::OperatorModule::OperatorModule(), syn::OscModule::OscModule(), syn::SplitterModule::SplitterModule(), syn::WaveTableOscModule::WaveTableOscModule(), and getInput().
|
|
remove a producer from the box.
|
|
remove a consumer from the box.
|
|
Definition at line 237 of file Module.h. Referenced by syn::WaveTableOscModule::update(), syn::OscModule::update(), syn::OperatorModule::update(), syn::OpenALOutputModule::update(), syn::IStreamModule::update(), syn::FilterModule::update(), and syn::DummyOutputModule::update().
|
|
|
|
|
|
|
|
|
|
|