This processing object is mainly an aggregate of out controls, that can be connected with other POs in controls, as usual. More...
#include <Controller.hxx>
Public Member Functions | |
Controller () | |
Controller (const ControllerConfig &c) | |
const char * | GetClassName () const |
Override it in every subclass and retur the name of that class. | |
bool | Do () |
Supervised mode execution method (using ports). | |
const ProcessingConfig & | GetConfig () const |
Configuration getter. | |
virtual bool | ConcreteConfigure (const ProcessingConfig &) |
Configuration method interface. | |
void | EnqueueControl (unsigned id, TControlData data) |
Interface for the users of the class. | |
TControlData | LastDequeuedValue (unsigned id) |
Public Attributes | |
OutControlArray | OutControls |
std::vector< TControlData > | OutValues |
This processing object is mainly an aggregate of out controls, that can be connected with other POs in controls, as usual.
This objecte can be wrapped by a Midi Object or View and generate ControlSend messages. It works by asynchronously receiving messages, keeping them enqueued and synchronously dispatching them, at Do() time.
Note that if mulithreading is enabled, the EnqueueControl calls can be done from different threads than the execution method. A lock for the mDataQueue structure ensures it.
Definition at line 77 of file Controller.hxx.
CLAM::Controller::Controller | ( | ) |
Definition at line 36 of file Controller.cxx.
CLAM::Controller::Controller | ( | const ControllerConfig & | c | ) | [inline] |
Definition at line 81 of file Controller.hxx.
References CLAM::Processing::Configure().
bool CLAM::Controller::ConcreteConfigure | ( | const ProcessingConfig & | ) | [virtual] |
Configuration method interface.
The Processing base class forces all the concrete classes derived from it to implement this method, which must actually perform the specific configuration tasks.
Note that the user can not call this method directly. He will use Configure instead. The argument is expected to be an object of the necesary concrete configuration class.
Reference | to the configuration object. |
true if the processing object is left in a consistent state, and can be executed.
This | method must throw a bad_cast exception if the argument is not an object of the expected configuration class. |
Reimplemented from CLAM::Processing.
Definition at line 42 of file Controller.cxx.
bool CLAM::Controller::Do | ( | ) | [inline, virtual] |
Supervised mode execution method (using ports).
Implements CLAM::Processing.
Definition at line 88 of file Controller.hxx.
References OutControls, and OutValues.
void CLAM::Controller::EnqueueControl | ( | unsigned | id, | |
TControlData | data | |||
) |
Interface for the users of the class.
As: a sliders view class, a midi class...
Definition at line 88 of file Controller.cxx.
const char* CLAM::Controller::GetClassName | ( | ) | const [inline, virtual] |
Override it in every subclass and retur the name of that class.
Implements CLAM::Processing.
Definition at line 86 of file Controller.hxx.
const ProcessingConfig & CLAM::Controller::GetConfig | ( | ) | const [virtual] |
Configuration getter.
Gets the configuration parameters used to create the object.
Reimplemented from CLAM::Processing.
Definition at line 82 of file Controller.cxx.
TControlData CLAM::Controller::LastDequeuedValue | ( | unsigned | id | ) |
Definition at line 100 of file Controller.cxx.
Definition at line 119 of file Controller.hxx.
Referenced by Do().
std::vector<TControlData> CLAM::Controller::OutValues |
Definition at line 120 of file Controller.hxx.
Referenced by Do().