Acoustic Research Tool (ART)  v0.10
ToneHole Class Reference

Represents a tone hole in a circuit.

This class uses the HornElement classes CylinderSection and Branch to model the ton hole.

Inheritance diagram for ToneHole:
ARTmodelInterface ARTobject ARTcell

Classes

class  InputImpedanceFunc

Public Member Functions

 ToneHole (const string name="ToneHole", const string sds="a tone hole at the side of the instrument", const string lds="", const string htm="")
 The constructor for the tone hole prototype.
 ToneHole (const ToneHole &orig)
 A copy constructor.
virtual ARTmodelInterfaceCloneModel ()
 Returns a copy of the object by calling the copy constructor.
virtual void RadiationImpedance (WaveObjectInterface *&out)
 This function must be implemented because it is declared as pure virtual in the ARTmodelInterface.
virtual void InputImpedance (WaveObjectInterface *waveFront, WaveObjectInterface *&oSignal)
 Prepares the calculation of the input impedance in the waveobject passed as argument.
virtual void Pressure (WaveObjectInterface *, WaveObjectInterface *&)
 This function must be implemented because it is declared as pure virtual in the ARTmodelInterface.
void PrepareCalculation (int modes)
 This prepares the calculation in the attached CylinderSection and Branch objects, by setting all parameters.
int GetRadiationType ()
CylinderSectionGetTunnel ()
 Returns the CylinderSection object representing the tunnel. Used by the functionoid of this object.
BranchGetBranch ()
 Returns the branch object. Used by the functionoid of this object.
TerminationElementGetTermination ()
- Public Member Functions inherited from ARTmodelInterface
 ARTmodelInterface (const string name, const string sds, const string lds, const string htm)
 Use this constructor to fill the fields of super classes and initialize other fields.
 ARTmodelInterface (const ARTmodelInterface &orig)
 The copy constructor.
virtual void InputImpedance (vector< WaveObjectInterface * > &in, WaveObjectInterface *&oSignal)
virtual void Pressure (vector< WaveObjectInterface * > &in, WaveObjectInterface *&oSignal)
void SetSimulator (ARTsimulator *sim)
 Sets the simulator of the model to sim.
void SetCircuit (ARTcircuit *cir)
 Sets the circuit of the model to cir.
- 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 ARTcellclone ()
ARTpropertyGetProperties (ARTproperty *pos)
 iterate through property list (pass NULL to restart iteration, receive NULL after last element)
ARTpropertyFindProperty (const string nam)
 find and return named property (or return NULL if no match)
ARTpropertyAppendProperty (const string name, const string sds="", const string lds="", const string htm="")
 Append new property with given name to ARTobject.
ARTdataPropAppendDataProp (const string name, ARTvariant *val, const string sds="", const string lds="", const string htm="")
 append new data property with given name to ARTobject
ARTdataPropAppendDataProp (const string name, const double val, const string sds="", const string lds="", const string htm="")
ARTdataPropAppendDataProp (const string name, const float val, const string sds="", const string lds="", const string htm="")
ARTdataPropAppendDataProp (const string name, const string val, const string sds="", const string lds="", const string htm="")
ARTdataPropAppendDataProp (const string name, const int val, const string sds="", const string lds="", const string htm="")
ARTdataPropAppendDataProp (const string name, const string *val, const string sds="", const string lds="", const string htm="")
ARTdataPropAppendDataProp (ARTdataProp *dataProp)
ARTlistPropAppendListProp (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)
ARTmethodGetMethods (ARTmethod *pos)
 iterate through method list (pass NULL to restart iteration, receive NULL after last element)
ARTmethodFindMethod (const string nam)
 find and return named method (or return NULL if no match)
ARTmethodAppendMethod (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)

Additional Inherited Members

- Protected Attributes inherited from ARTmodelInterface
ARTcircuitcircuit
 This field must contain a pointer to the circuit which is being evaluated when.
ARTfreqSimulatorsimulator
 This field must contain a pointer to the simulator the element was created in.

Constructor & Destructor Documentation

ToneHole::ToneHole ( const string  name = "ToneHole",
const string  sds = "a tone hole at the side of the instrument",
const string  lds = "",
const string  htm = "" 
)
inline

The constructor for the tone hole prototype.

All properties, data properties and methods are appended in this constructor.

ToneHole::ToneHole ( const ToneHole orig)
inline

A copy constructor.

Used to copy the model when elements are created that use this model.

Member Function Documentation

virtual ARTmodelInterface* ToneHole::CloneModel ( )
inlinevirtual

Returns a copy of the object by calling the copy constructor.

Used to copy the model when elements are created that use this model.

Implements ARTmodelInterface.

virtual void ToneHole::InputImpedance ( WaveObjectInterface waveFront,
WaveObjectInterface *&  oSignal 
)
inlinevirtual

Prepares the calculation of the input impedance in the waveobject passed as argument.

Uses the functionoids of this object for calculation.

Parameters
oSignalThe waveobject the input impedance should be written to. If the pointer is null, a new waveobject will be created and the address written to oSignal.
waveFrontA waveobject of the impedance to be propagated through this model.

Implements ARTmodelInterface.

void ToneHole::PrepareCalculation ( int  modes)
inline

This prepares the calculation in the attached CylinderSection and Branch objects, by setting all parameters.

The function is called by the functionoid of this object.

Parameters
modesThe number of modes.
virtual void ToneHole::Pressure ( WaveObjectInterface ,
WaveObjectInterface *&   
)
inlinevirtual

This function must be implemented because it is declared as pure virtual in the ARTmodelInterface.

So far it is not implemented nor used and will just throw an exception of type ARTerror.

Implements ARTmodelInterface.

virtual void ToneHole::RadiationImpedance ( WaveObjectInterface *&  out)
inlinevirtual

This function must be implemented because it is declared as pure virtual in the ARTmodelInterface.

Tone holes can not be the last (outermost) element in a circuit, so this method will throw an exception of type ARTerror.

Implements ARTmodelInterface.