|
| ParVector (string newName, string newDescription, Member newMember, int newSize, Type newDef, Type newMin, Type newMax, bool depSafe=false, bool readonly=false, bool limits=true, SetFn newSetFn=0, InsFn newInsFn=0, DelFn newDelFn=0, GetFn newGetFn=0, DefFn newDefFn=0, DefFn newMinFn=0, DefFn newMaxFn=0, StringGetFn newStringGetFn=0) |
| Standard constructor. More...
|
|
| ParVector (string newName, string newDescription, Member newMember, Type newUnit, int newSize, Type newDef, Type newMin, Type newMax, bool depSafe=false, bool readonly=false, bool limits=true, SetFn newSetFn=0, InsFn newInsFn=0, DelFn newDelFn=0, GetFn newGetFn=0, DefFn newDefFn=0, DefFn newMinFn=0, DefFn newMaxFn=0, StringGetFn newStringGetFn=0) |
| Standard constructor. More...
|
|
| ParVector (string newName, string newDescription, Member newMember, int newSize, Type newDef, Type newMin, Type newMax, bool depSafe=false, bool readonly=false, int limits=Interface::limited, SetFn newSetFn=0, InsFn newInsFn=0, DelFn newDelFn=0, GetFn newGetFn=0, DefFn newDefFn=0, DefFn newMinFn=0, DefFn newMaxFn=0, StringGetFn newStringGetFn=0) |
| Standard constructor. More...
|
|
| ParVector (string newName, string newDescription, Member newMember, Type newUnit, int newSize, Type newDef, Type newMin, Type newMax, bool depSafe=false, bool readonly=false, int limits=Interface::limited, SetFn newSetFn=0, InsFn newInsFn=0, DelFn newDelFn=0, GetFn newGetFn=0, DefFn newDefFn=0, DefFn newMinFn=0, DefFn newMaxFn=0, StringGetFn newStringGetFn=0) |
| Standard constructor. More...
|
|
virtual void | tset (InterfacedBase &ib, Type val, int i) const |
| Set the i'th element of a container of member variables of ib to val.
|
|
virtual void | tinsert (InterfacedBase &ib, Type val, int i) const |
| Insert a new object before the i'th element of a container of member variables of ib and set it to val.
|
|
virtual void | erase (InterfacedBase &ib, int i) const |
| Remove the i'th element of a container of member variables of ib.
|
|
virtual StringVector | get (const InterfacedBase &ib) const |
| Return the values of a container of member variables of ib in a vector of strings. More...
|
|
virtual TypeVector | tget (const InterfacedBase &ib) const |
| Return the values of a container of member variables of ib in a vector of Type.
|
|
virtual Type | tminimum (const InterfacedBase &ib, int i) const |
| Return the minimum value allowed for the i'th element of a container of member variables of ib.
|
|
virtual Type | tmaximum (const InterfacedBase &ib, int i) const |
| Return the maximum value allowed for the i'th element of a container of member variables of ib.
|
|
virtual Type | tdef (const InterfacedBase &, int) const |
| Return the default value for the i'th element of a container of member variables of ib.
|
|
virtual Type | tdef () const |
| Return the general default value for this parameter vector.
|
|
void | setSetFunction (SetFn sf) |
| Give a pointer to a member function to be used by tset().
|
|
void | setInsertFunction (InsFn ifn) |
| Give a pointer to a member function to be used by tinsert().
|
|
void | setGetFunction (GetFn gf) |
| Give a pointer to a member function to be used by tget().
|
|
void | setEraseFunction (DelFn df) |
| Give a pointer to a member function to be used by terase().
|
|
void | setDefaultFunction (GetFn df) |
| Give a pointer to a member function to be used by tdef().
|
|
void | setMinFunction (GetFn mf) |
| Give a pointer to a member function to be used by tminimum().
|
|
void | setMaxFunction (GetFn mf) |
| Give a pointer to a member function to be used by tmaximum().
|
|
void | setStringGetFunction (StringGetFn gf) |
| Give a pointer to a member function to be used by get().
|
|
virtual void | doxygenDescription (ostream &stream) const |
| Print a description to be included in the Doxygen documentation to the given stream.
|
|
| ParVectorTBase (string newName, string newDescription, string newClassName, const type_info &newTypeInfo, Type newUnit, int newSize, bool depSafe, bool readonly, int limits) |
| Standard constructor. More...
|
|
virtual | ~ParVectorTBase () |
| Destructor.
|
|
virtual string | type () const |
| Return a code for the type of this parameter.
|
|
virtual string | doxygenType () const |
| Return a string describing the type of interface to be included in the Doxygen documentation.
|
|
virtual string | fullDescription (const InterfacedBase &ib) const |
| Return a complete description of this parameter vector.
|
|
virtual void | set (InterfacedBase &ib, string val, int i) const |
| Set the i'th element of a container of member variables of ib to val. More...
|
|
virtual void | insert (InterfacedBase &ib, string val, int i) const |
| Insert a new object before the i'th element of a container of member variables of ib and set it to val. More...
|
|
virtual string | minimum (const InterfacedBase &ib, int i) const |
| Return the minimum value allowed for the i'th element of a container of member variables of ib. More...
|
|
virtual string | maximum (const InterfacedBase &ib, int i) const |
| Return the maximum value allowed for the i'th element of a container of member variables of ib. More...
|
|
virtual string | def (const InterfacedBase &ib, int i) const |
| Return the default value for the i'th element of a container of member variables of ib. More...
|
|
virtual string | def () const |
| Return the general default value for this parameter vector. More...
|
|
virtual void | setDef (InterfacedBase &ib, int i) const |
| set the i'th element of a container of member variables of ib to its default value.
|
|
Type | unit () const |
| Get the unit which an Type object is divided (multiplied) by when written to (read from) a stream via a double. More...
|
|
void | unit (Type u) |
| Set the unit which an Type object is divided (multiplied) by when written to (read from) a stream via a double. More...
|
|
| ParVectorBase (string newName, string newDescription, string newClassName, const type_info &newTypeInfo, int newSize, bool depSafe, bool readonly, int limits) |
| Standard constructor. More...
|
|
virtual | ~ParVectorBase () |
| Destructor.
|
|
virtual string | exec (InterfacedBase &, string action, string arguments) const |
| The general interface method overriding the one in InterfaceBase. More...
|
|
bool | limited () const |
| True if there the variable is limited from above and below.
|
|
bool | upperLimit () const |
| True if there the variable is limited from abovew.
|
|
bool | lowerLimit () const |
| True if there the variable is limited from below.
|
|
void | setLimited () |
| Set a flag indicating that there are limits associated with the variables.
|
|
void | setUnlimited () |
| Set a flag indicating if there are no limits associated with the variables.
|
|
int | size () const |
| Get the size of the container being interfaced. More...
|
|
void | setSize (int sz) |
| Set the size of the container being interfaced. More...
|
|
void | setVariableSize () |
| Set the size of the container being interfaced to -1, i.e. More...
|
|
| InterfaceBase (string newName, string newDescription, string newClassName, const type_info &newTypeInfo, bool depSafe, bool readonly) |
| Standard constructor. More...
|
|
virtual | ~InterfaceBase () |
| The destructor.
|
|
string | tag (int pos=-1) const |
| Create a tag for this interface using its name and optional poisitional argument.
|
|
virtual bool | notDefault (InterfacedBase &) const |
| Returns true if the setting for this interface has been changed from its default value.
|
|
map< string, string > & | objectDefaults (InterfacedBase &) const |
| Returns the map of objectDefaults of the given object.
|
|
virtual void | rebind (InterfacedBase &, const TranslationMap &, const IVector &=IVector()) const |
| Rebind all references in ib according to the translation map. More...
|
|
virtual IVector | getReferences (const InterfacedBase &) const |
| For derived classes interfacing references between Interfaced objects, return the references for this interface.
|
|
string | description () const |
| Return the description of this interface.
|
|
string | className () const |
| Return the class name for the class this interface is defined for.
|
|
bool | dependencySafe () const |
| Get the flag saying whether changing an object with this interface may change the state of a dependent object .
|
|
void | setDependencySafe () |
| Set the flag saying whether changing an object with this interface may change the state of a dependent object .
|
|
void | setDependencySensitive () |
| Set the flag saying whether changing an object with this interface may change the state of a dependent object .
|
|
bool | readOnly () const |
| Get the flag saying whether this interface is allowed to change an object.
|
|
void | setReadOnly () |
| Set the flag saying that this interface is allowed to change an object.
|
|
void | setReadWrite () |
| Unset the flag saying that this interface is allowed to change an object.
|
|
bool | anonymous () const |
| Return true if this interface is anonyous, ie. More...
|
|
double | rank () const |
| Get the rank for this interface. More...
|
|
void | rank (double r) |
| Set the rank for this interface. More...
|
|
void | setHasDefault (bool b) |
| Indicate that this interface has a default value.
|
|
| Named (const string &newName=string()) |
| Constructor with name.
|
|
const string & | name () const |
| Return name.
|
|
bool | operator== (const Named &other) const |
| Test for equality.
|
|
bool | operator< (const Named &other) const |
| Lexicographical comparison.
|
|
template<typename T, typename Type>
class ThePEG::ParVector< T, Type >
The ParVector and its base classes ParVectorTBase and ParVectorBase defines an interface to a class derived from the InterfacedBase, through which vectors (or any other container) of simple member variables can be manuipulated.
ParVector is templated on the type of the member variable and the type of the InterfacedBase class, and is derived from the InterfaceBase class via ParVectorTBase (which is templated only on the class of the member variable) and ParVectorBase.
For each InterfacedBase class exactly one static ParVector object should created for each member variable of container type which should be interfaced. This object will automatically register itself with the BaseRepository class.
- See also
- Parameter
-
InterfacedBase
-
InterfaceBase
Definition at line 532 of file ParVector.h.