Robot Simulator of the Robotics Group for Self-Organization of Control  0.8.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
IValue Class Referenceabstract

This class is a interface for a value which is part of a gen. More...

#include <IValue.h>

Inheritance diagram for IValue:
Collaboration diagram for IValue:

Public Member Functions

 IValue (std::string name)
 constructor Needs a string for the name of the value. More...
 
virtual ~IValue ()
 default destructor More...
 
virtual IValueoperator* (const IValue &) const =0
 the mul. More...
 
virtual IValueoperator+ (const IValue &) const =0
 the add operator. More...
 
virtual operator std::string (void) const
 the cast operator for a cast in type string More...
 
virtual bool store (FILE *f) const
 store the value in a file More...
 
virtual bool restore (FILE *f)
 restore the value from a file More...
 
- Public Member Functions inherited from Inspectable
 Inspectable (const iparamkey &name="")
 TYPEDEFS END. More...
 
virtual ~Inspectable ()
 
virtual iparamkeylist getInternalParamNames () const
 The list of the names of all internal parameters given by getInternalParams(). More...
 
virtual iparamvallist getInternalParams () const
 
virtual iparamvalptrlist getInternalParamsPtr () const
 be careful: matrices will be ignored More...
 
virtual ilayerlist getStructuralLayers () const
 Specifies which parameter vector forms a structural layer (in terms of a neural network) The ordering is important. More...
 
virtual iconnectionlist getStructuralConnections () const
 Specifies which parameter matrix forms a connection between layers (in terms of a neural network) The orderning is not important. More...
 
virtual void addInspectableValue (const iparamkey &key, iparamval const *val, const std::string &descr=std::string())
 This is the new style for adding inspectable values. More...
 
virtual void addInspectableMatrix (const iparamkey &key, const matrix::Matrix *m, bool only4x4AndDiag=true, const std::string &descr=std::string())
 This is the new style for adding inspectable values. More...
 
virtual void addInspectableDescription (const iparamkey &key, const std::string &descr)
 adds a description for the given parameter using info-lines The line will start (appart from the #I) with a D for description followed by the key end then followed by the string. More...
 
virtual void addInfoLine (std::string infoLine)
 Adds an info line to this inspectable instance. More...
 
virtual void addInfoLines (std::list< std::string > infoLineList)
 Adds a bunch of infolines with addInfoLine to this inspectable instance. More...
 
virtual void removeInfoLines ()
 Removes all infolines from this inspectable instance. More...
 
virtual const infoLinesListgetInfoLines () const
 Returns all infolines added to this inspectable instance. More...
 
virtual void addInspectable (Inspectable *insp)
 Adds an inspectable as a child object. More...
 
virtual void removeInspectable (Inspectable *insp)
 Removes an inspectable as a child object. More...
 
virtual void setNameOfInspectable (const iparamkey &name)
 set the name of the inspectable More...
 
virtual const iparamkey getNameOfInspectable () const
 return the name of the inspectable, getName() would conflict with Configurable::getName() too often More...
 
virtual const inspectableListgetInspectables () const
 Returns the list containing all inspectable children. More...
 

Protected Attributes

std::string m_name
 the name of this class. More...
 
- Protected Attributes inherited from Inspectable
iparamkey name
 
iparampairlist mapOfValues
 
imatrixpairlist mapOfMatrices
 
infoLinesList infoLineStringList
 

Additional Inherited Members

- Public Types inherited from Inspectable
typedef std::string iparamkey
 
typedef double iparamval
 
typedef std::pair< iparamkey,
iparamval const * > 
iparampair
 
typedef std::pair< iparamkey,
std::pair< const
matrix::Matrix *, bool > > 
imatrixpair
 
typedef std::list< iparamkeyiparamkeylist
 
typedef std::list< std::string > infoLinesList
 
typedef std::list< iparamvaliparamvallist
 
typedef std::list< iparamval
const * > 
iparamvalptrlist
 
typedef std::list< iparampairiparampairlist
 
typedef std::list< imatrixpairimatrixpairlist
 
typedef struct Inspectable::ILayer ILayer
 
typedef struct
Inspectable::IConnection 
IConnection
 
typedef std::list< ILayerilayerlist
 
typedef std::list< IConnectioniconnectionlist
 
typedef std::list< const
Inspectable * > 
inspectableList
 

Detailed Description

This class is a interface for a value which is part of a gen.

Over this concept is it paissible to make the Gen and the GenFactory independent from his saved type.

Constructor & Destructor Documentation

IValue ( std::string  name)

constructor Needs a string for the name of the value.

In the normal way it is the Type of the Value. For example "templateValue".

Parameters
name(string) the name
~IValue ( )
virtual

default destructor

Member Function Documentation

operator std::string ( void  ) const
virtual

the cast operator for a cast in type string

Returns
(string) the value as string

Reimplemented in TemplateValue< Typ, toString >.

virtual IValue* operator* ( const IValue ) const
pure virtual

the mul.

operator. Dosn't change this class!!!

Parameters
(constIValue&) the other part of the operation
Returns
(IValue*) the result

Implemented in TemplateValue< Typ, toString >.

virtual IValue* operator+ ( const IValue ) const
pure virtual

the add operator.

Dosn't change this class!!!

Parameters
(constIValue&) the other part of the operation
Returns
(IValue*) the result

Implemented in TemplateValue< Typ, toString >.

bool restore ( FILE *  f)
virtual

restore the value from a file

Parameters
f(FILE*) the file where the value inside
Returns
(bool) true if all ok.

Reimplemented in TemplateValue< Typ, toString >.

bool store ( FILE *  f) const
virtual

store the value in a file

Parameters
f(FILE*) the file to store
Returns
(bool) true if all ok.

Reimplemented in TemplateValue< Typ, toString >.

Member Data Documentation

std::string m_name
protected

the name of this class.


The documentation for this class was generated from the following files: