Acoustic Research Tool (ART)
v0.10
|
This class provides a generic interface for all time-domain simulations and is used by the ARTtimeSimulator class.
All time modules have to be derived from this class and have to implement the addIPort(), setCurrentIndex() and simulateCurrentIndex() methods.
Classes | |
class | FPortType |
This class represents an input function or lookup table. More... | |
class | globalParameterType |
This class represents all parameters which have global scope within the time module they are associated with. More... | |
class | IPortType |
This class represents all input ports of time modules and actually refers to an existing output/function port. More... | |
class | localParameterType |
This class represents all parameters which only have local scope within the time module they are associated with. More... | |
class | OPortType |
This class represents all output ports of time modules and saves the actual values of each time index and the evaluation expression. More... | |
class | PortType |
Parent class of all port types (input, output, function) which can be added to a time module. More... | |
class | timeProperty |
This is the generic class representing all types of attributes which can be added to a time module. More... |
Public Member Functions | |
ARTItimeModule (const string &name, const string &sds="", const string &lds="", const string &htm="") | |
Constructor of the ARTItimeModule class. | |
ARTItimeModule (const ARTItimeModule &orig) | |
Copy constructor which creates a new time module based on the given time module. | |
virtual ARTItimeModule * | Create (const string &name, const string &sds="", const string &lds="", const string &htm="")=0 |
Factory function which creates a new interface time module object based on the current child class implementation. | |
virtual void | addIPort (const string &name, const ARTdataProp *refPort)=0 |
Adds a new input port to the current time module. | |
virtual ARTdataProp * | getPort (const string &name) |
Returns a pointer to the port object with the given name. | |
virtual void | setLocalParameter (const string &name, const string &expr) |
Sets the definition of the local parameter with the given name. | |
virtual void | setLocalParameter (const string &name, const std::complex< double > &val) |
Sets the definition of the local parameter with the given name. | |
virtual void | setLocalParameter (const string &name, const double val) |
Sets the definition of the local parameter with the given name. | |
virtual void | addGlobalParameter (const ARTdataProp *parameter) |
Adds a global parameter to the current time module by registering it to all output ports and local parameters. | |
virtual void | removeGlobalParameter (const string &name) |
Removes the definition of the given global parameter from all output ports and local parameters. | |
virtual void | setSimulator (ARTsimulator *sim) |
Sets the simulator of the current time module and all its output ports. | |
virtual void | setCurrentIndex (int idx)=0 |
Sets the current time module and all output ports to the given time index. | |
virtual void | simulateCurrentIndex (int idx)=0 |
Triggers the evaluation of all output ports of the time module for the given time index. | |
virtual | ~ARTItimeModule () |
Destructor of the ARTItimeModule class. | |
Public Member Functions inherited from ARTobject | |
ARTobject (const string name, const string sds="", const string lds="", const string htm="") | |
objects must have a name, the rest is optional | |
ARTobject (const ARTobject &orig) | |
copy constructor | |
virtual ARTcell * | clone () |
ARTproperty * | GetProperties (ARTproperty *pos) |
iterate through property list (pass NULL to restart iteration, receive NULL after last element) | |
ARTproperty * | FindProperty (const string nam) |
find and return named property (or return NULL if no match) | |
ARTproperty * | AppendProperty (const string name, const string sds="", const string lds="", const string htm="") |
Append new property with given name to ARTobject. | |
ARTdataProp * | AppendDataProp (const string name, ARTvariant *val, const string sds="", const string lds="", const string htm="") |
append new data property with given name to ARTobject | |
ARTdataProp * | AppendDataProp (const string name, const double val, const string sds="", const string lds="", const string htm="") |
ARTdataProp * | AppendDataProp (const string name, const float val, const string sds="", const string lds="", const string htm="") |
ARTdataProp * | AppendDataProp (const string name, const string val, const string sds="", const string lds="", const string htm="") |
ARTdataProp * | AppendDataProp (const string name, const int val, const string sds="", const string lds="", const string htm="") |
ARTdataProp * | AppendDataProp (const string name, const string *val, const string sds="", const string lds="", const string htm="") |
ARTdataProp * | AppendDataProp (ARTdataProp *dataProp) |
ARTlistProp * | AppendListProp (const string name, const string sds="", const string lds="", const string htm="") |
append new listableProperty with given name | |
bool | DeleteProperty (ARTproperty *prp) |
delete current property (which was recently accessed by GetProperties, FindProperty or AppendProperty) | |
ARTmethod * | GetMethods (ARTmethod *pos) |
iterate through method list (pass NULL to restart iteration, receive NULL after last element) | |
ARTmethod * | FindMethod (const string nam) |
find and return named method (or return NULL if no match) | |
ARTmethod * | AppendMethod (const string name, const string sds="", const string lds="", const string htm="") |
append new method with given name | |
bool | DeleteMethod (ARTmethod *mtd) |
delete current method (which was recently accessed by GetProperties, FindProperty or AppendProperty) | |
void | SetPropertyList (list< ARTproperty * > &l) |
void | CopyPropertyListEntries (ARTobject *obj) |
copies properties from other objects (also copying the objects of all list-entries). OVERWRITES list own list! | |
void | CopyMethodListEntries (ARTobject *obj) |
copies methods from other objects (also copying the objects of all list-entries). OVERWRITES list own list! | |
list< ARTproperty * > | GetPropertyList () |
list< ARTmethod * > | GetMethodList () |
Public Member Functions inherited from ARTcell | |
ARTcell (const string name="", const string sds="", const string lds="", const string htm="") | |
ARTcell (const ARTcell &orig) | |
const string & | GetName () const |
const string & | GetShortDescription () const |
const string & | GetLongDescription () const |
const string & | GetHelpFilename () const |
void | SetName (const string name) |
Protected Attributes | |
ARTtimeSimulator * | _simulator |
Simulator object to which the current time module belongs. | |
Protected Attributes inherited from ARTobject | |
list< ARTproperty * > | propertyList_ |
list< ARTproperty * >::iterator | piter_ |
list< ARTmethod * > | methodList_ |
list< ARTmethod * >::iterator | miter_ |
Protected Attributes inherited from ARTcell | |
string | name_ |
Identifier of ARTObject. | |
string | shortDesc_ |
Short Description of ARTObject (single line hint) | |
string | longDesc_ |
Long Description of ARTObject (multi line text) | |
string | helpFile_ |
File name of HTML help file for ARTObject. |
|
inlineexplicit |
Constructor of the ARTItimeModule class.
[in] | name | Represents the unique identifier of the time module. |
[in] | sds | Short description (single line) of the time module. |
[in] | lds | Long description of the time module. |
[in] | htm | Path to help file in HTML format. |
|
inline |
Copy constructor which creates a new time module based on the given time module.
[in] | orig | The original time module to copy. |
|
virtual |
Adds a global parameter to the current time module by registering it to all output ports and local parameters.
[in] | parameter | Pointer to the global parameter object. |
ARTerror | If the given object is no valid global parameter or there is another property with the same name. |
Reimplemented in ARTtimeModule.
|
pure virtual |
Adds a new input port to the current time module.
[in] | name | Locally unique identifier of the new input port. |
[in] | refPort | Pointer to an existing output port which will be associated with the new input port. |
ARTerror | If the given name already exists for another object in the current time module. |
Implemented in DWGconeJunctionModule, DWGcylinderJunctionModule, DWGcylinderModule, fractionalDelayModule, sinewaveModule, multiplicationModule, addModule, ARTtimeModule, simpleDelayModule, amplificationModule, rectangularModule, heavisideModule, impulseModule, and inputFunctionModule.
|
pure virtual |
Factory function which creates a new interface time module object based on the current child class implementation.
[in] | name | Represents the unique identifier of the time module. |
[in] | sds | Short description (single line) of the time module. |
[in] | lds | Long description of the time module. |
[in] | htm | Path to help file in HTML format. |
Implemented in DWGconeJunctionModule, DWGconeModule, DWGcylinderJunctionModule, DWGcylinderModule, fractionalDelayModule, sinewaveModule, multiplicationModule, addModule, ARTtimeModule, simpleDelayModule, amplificationModule, rectangularModule, heavisideModule, impulseModule, and inputFunctionModule.
|
virtual |
Returns a pointer to the port object with the given name.
ARTerror | If no port with the given name could be found in the current module. |
Reimplemented in DWGconeJunctionModule, DWGcylinderJunctionModule, DWGcylinderModule, fractionalDelayModule, sinewaveModule, multiplicationModule, addModule, simpleDelayModule, amplificationModule, rectangularModule, heavisideModule, impulseModule, and inputFunctionModule.
|
virtual |
Removes the definition of the given global parameter from all output ports and local parameters.
[in] | name | The name of the global parameter. |
ARTerror | In case no global parameter with the given name could be found in the current time module. |
Reimplemented in ARTtimeModule.
|
pure virtual |
Sets the current time module and all output ports to the given time index.
[in] | idx | The time index which will be set. |
Implemented in DWGconeJunctionModule, DWGcylinderJunctionModule, DWGcylinderModule, fractionalDelayModule, sinewaveModule, multiplicationModule, addModule, ARTtimeModule, simpleDelayModule, amplificationModule, rectangularModule, heavisideModule, impulseModule, and inputFunctionModule.
|
virtual |
Sets the definition of the local parameter with the given name.
[in] | name | Name of the parameter. |
[in] | expr | The new evaluation expression of the local parameter. |
If | no local parameter with the given name could be found within the current time module. |
|
virtual |
Sets the definition of the local parameter with the given name.
[in] | name | Name of the parameter. |
[in] | val | The new complex value of the local parameter. |
If | no local parameter with the given name could be found within the current time module. |
|
virtual |
Sets the definition of the local parameter with the given name.
[in] | name | Name of the parameter. |
[in] | val | The new complex value of the local parameter. |
If | no local parameter with the given name could be found within the current time module. |
|
virtual |
Sets the simulator of the current time module and all its output ports.
[in] | sim | A pointer to a valid ARTtimeSimulator object. |
|
pure virtual |
Triggers the evaluation of all output ports of the time module for the given time index.
[in] | idx | The time index which will be simulated. |
Implemented in DWGconeJunctionModule, DWGcylinderJunctionModule, DWGcylinderModule, fractionalDelayModule, sinewaveModule, multiplicationModule, addModule, ARTtimeModule, simpleDelayModule, amplificationModule, rectangularModule, heavisideModule, impulseModule, and inputFunctionModule.
|
protected |
Simulator object to which the current time module belongs.