#include <configurable.h>
Inherited by AbstractController, AbstractRobot, and OdeConfig.
Inheritance diagram for Configurable:

Public Types | |
| typedef std::string | paramkey |
| typedef double | paramval |
| typedef std::list< std::pair< paramkey, paramval > > | paramlist |
Public Member Functions | |
| Configurable () | |
| Configurable (const std::string &name, const std::string &revision) | |
| intialise with name and revision (use "$ID$") | |
| virtual | ~Configurable () |
| int | getId () const |
| return the id of the configurable objects, which is created by random on initialisation | |
| virtual paramkey | getName () const |
| return the name of the object | |
| virtual paramkey | getRevision () const |
| returns the revision of the object | |
| virtual void | setName (const paramkey &name) |
| stes the name of the object | |
| virtual void | getRevision (const paramkey &revision) |
| sets the revision Hint: { return "$ID$"; } | |
| virtual paramval | getParam (const paramkey &key) const |
| returns the value of the requested parameter or 0 (+ error message to stderr) if unknown. | |
| virtual bool | setParam (const paramkey &key, paramval val) |
| sets the value of the given parameter or does nothing if unknown. | |
| virtual paramlist | getParamList () const |
| The list of all parameters with there value as allocated lists. | |
| bool | storeCfg (const char *filenamestem) |
| stores the key values paires into the file : filenamestem.cfg | |
| bool | restoreCfg (const char *filenamestem) |
| restores the key values paires from the file : filenamestem.cfg | |
| void | print (FILE *f, const char *prefix) const |
| void | parse (FILE *f) |
Static Public Member Functions | |
| static void | insertCVSInfo (paramkey &str, const char *file, const char *revision) |
| This is a utility function for inserting the filename and the revision number at the beginning of the given string buffer str and terminates it. | |
Classes | |
| struct | matchId |
| nice predicate function for finding by ID More... | |
Sort of Hashmap interface. Parameters are double values
The Configurator is a (planned) external tool that can be used for changing the values of configurable objects.
Protocoll for Configurator:
To Configurator (BNF notation): Conf := <Comp>* Comp := <CompName> <Pair>* CompName := [<string>][<int>]<newline> Pair := <alphanum>=<double><newline>
Example
[Component name which can contain spaces and digits and .,- ][ID1] key1 = value1 key2 = value2 . . [Other Component name which can contain spaces and digits and .,- ][ID2] key3 = value3
Answer: (from Communicator to Simulation environment)
1. On change of a parameter:
[ID] key=newvalue
key=newvalue
2. Request of the description as defined above.
#Something I don\'t care
| typedef std::string paramkey |
| typedef double paramval |
| Configurable | ( | ) | [inline] |
| Configurable | ( | const std::string & | name, | |
| const std::string & | revision | |||
| ) | [inline] |
intialise with name and revision (use "$ID$")
| virtual ~Configurable | ( | ) | [inline, virtual] |
| int getId | ( | ) | const [inline] |
return the id of the configurable objects, which is created by random on initialisation
| virtual paramkey getName | ( | ) | const [inline, virtual] |
return the name of the object
Reimplemented in DInvert3ChannelController, InvertMotorNStep, InvertMotorSpace, InvertNChannelController, and OdeConfig.
returns the value of the requested parameter or 0 (+ error message to stderr) if unknown.
| virtual paramlist getParamList | ( | ) | const [inline, virtual] |
The list of all parameters with there value as allocated lists.
Reimplemented in InvertController, InvertMotorController, SineController, OdeConfig, Arm2Segm, DefaultCaterPillar, DefaultSliderWheelie, DefaultWheelie, HurlingSnake, MuscledArm, Schlange, and Uwo.
| virtual void getRevision | ( | const paramkey & | revision | ) | [inline, virtual] |
sets the revision Hint: { return "$ID$"; }
| virtual paramkey getRevision | ( | ) | const [inline, virtual] |
returns the revision of the object
| void insertCVSInfo | ( | paramkey & | str, | |
| const char * | file, | |||
| const char * | revision | |||
| ) | [static] |
This is a utility function for inserting the filename and the revision number at the beginning of the given string buffer str and terminates it.
| str | buffer (call by reference) that should have space for file+revision+2 characters | |
| file | filename given by CVS i.e.
| |
| revision | revision number given by CVS i.e.
|
| void parse | ( | FILE * | f | ) |
| void print | ( | FILE * | f, | |
| const char * | prefix | |||
| ) | const |
| bool restoreCfg | ( | const char * | filenamestem | ) |
restores the key values paires from the file : filenamestem.cfg
| virtual void setName | ( | const paramkey & | name | ) | [inline, virtual] |
stes the name of the object
sets the value of the given parameter or does nothing if unknown.
| bool storeCfg | ( | const char * | filenamestem | ) |
stores the key values paires into the file : filenamestem.cfg
1.4.7