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
Base Class Reference

#include <base.h>

Inheritance diagram for Base:
Collaboration diagram for Base:

Public Member Functions

 Base (const std::string &caption="LpzRobots Simulator (Martius et al)")
 
virtual void makePhysicsScene ()
 create the ground plane More...
 
virtual void makeScene (OsgScene *scene, const OsgConfig &config)
 creates the base scene graph with world, sky and floor and shadow and HUD and stores it in scene More...
 
virtual osg::Node * makeSky (const OsgConfig &config)
 
virtual osg::Node * makeGround (const OsgConfig &config)
 
virtual osg::Node * createHUD (OsgScene *scene, const OsgConfig &config)
 creates hud and is supposed to return the camera to it and adds the geode of the hud to the scene More...
 
virtual void createHUDManager (osg::Geode *geode, osgText::Font *font)
 
virtual void makeLights (osg::Group *node, const OsgConfig &config)
 adds light to the node More...
 
virtual osgShadow::ShadowedScene * createShadowedScene (osg::Node *sceneToShadow, osg::LightSource *lightSource, int shadowType)
 Shadow types: 1 - ShadowVolume 2 - ShadowTextue 3 - ParallelSplitShadowMap 4 - SoftShadowMap 5 - ShadowMap. More...
 
virtual void setGroundTexture (const char *filename)
 
virtual Substance getGroundSubstance ()
 
virtual void setGroundSubstance (const Substance &substance)
 
virtual void setCaption (const std::string &caption)
 sets the cpation that is printed at the right of the status line More...
 
virtual void setTitle (const std::string &title)
 sets the title that is printed in the center of the status line More...
 
virtual StatLineProperties getStatLineProperties ()
 
virtual void setStatLineProperties (const StatLineProperties &statlineprop)
 sets the properties of the status line, do it before the scene is initialized More...
 
virtual HUDStatisticsManagergetHUDSM ()
 Create HUDStatisticsManager and register it for being called back every step. More...
 
virtual ~Base ()
 
- Public Member Functions inherited from Configurable
 Configurable ()
 
 Configurable (const std::string &name, const std::string &revision)
 intialise with name and revision (use "$ID$") More...
 
virtual ~Configurable ()
 
virtual void notifyOnChange (const paramkey &key)
 Is called when a parameter was changes via setParam(). More...
 
virtual void addParameter (const paramkey &key, paramval *val, paramval minBound, paramval maxBound, const paramdescr &descr=paramdescr())
 This is the new style for adding configurable parameters. More...
 
virtual void addParameter (const paramkey &key, paramval *val, const paramdescr &descr=paramdescr())
 See addParameter(const paramkey& key, paramval* val, paramval minBound, paramval maxBound, const paramdescr& descr) More...
 
virtual void addParameter (const paramkey &key, parambool *val, const paramdescr &descr=paramdescr())
 See addParameter(const paramkey& key, paramval* val) but for bool values. More...
 
virtual void addParameter (const paramkey &key, paramint *val, paramint minBound, paramint maxBound, const paramdescr &descr=paramdescr())
 See addParameter(const paramkey& key, paramval* val) but for int values. More...
 
virtual void addParameter (const paramkey &key, paramint *val, const paramdescr &descr=paramdescr())
 
virtual void addParameterDef (const paramkey &key, paramval *val, paramval def, paramval minBound, paramval maxBound, const paramdescr &descr=paramdescr())
 This function is only provided for convenience. More...
 
virtual void addParameterDef (const paramkey &key, paramval *val, paramval def, const paramdescr &descr=paramdescr())
 
virtual void addParameterDef (const paramkey &key, parambool *val, parambool def, const paramdescr &descr=paramdescr())
 See addParameterDef(const paramkey&, paramval*, paramval) More...
 
virtual void addParameterDef (const paramkey &key, paramint *val, paramint def, paramint minBound, paramint maxBound, const paramdescr &descr=paramdescr())
 See addParameterDef(const paramkey&, paramval*, paramval) More...
 
virtual void addParameterDef (const paramkey &key, paramint *val, paramint def, const paramdescr &descr=paramdescr())
 
virtual void setParamDescr (const paramkey &key, const paramdescr &descr, bool traverseChildren=true)
 sets a description for the given parameter More...
 
int getId () const
 return the id of the configurable objects, which is created by random on initialisation More...
 
virtual paramkey getName () const
 return the name of the object More...
 
virtual paramkey getRevision () const
 returns the revision of the object More...
 
virtual void setName (const paramkey &name, bool callSetNameOfInspectable=true)
 Sets the name of the configurable. More...
 
virtual void setRevision (const paramkey &revision)
 sets the revision Hint: { return "$ID$"; } More...
 
virtual paramval getParam (const paramkey &key, bool traverseChildren=true) const
 returns the value of the requested parameter or 0 (+ error message to stderr) if unknown. More...
 
virtual bool hasParam (const paramkey &key, bool traverseChildren=true) const
 Returns if the requested parameter is part of the configurable or their children. More...
 
virtual bool setParam (const paramkey &key, paramval val, bool traverseChildren=true)
 sets the value of the given parameter or does nothing if unknown. More...
 
virtual void setParamBounds (const paramkey &key, paramval minBound, paramval maxBound, bool traverseChildren=true)
 Sets the bounds (minBound and maxBound) of the given parameter. More...
 
virtual void setParamBounds (const paramkey &key, paramint minBound, paramint maxBound, bool traverseChildren=true)
 
virtual void setParamBounds (const paramkey &key, paramvalBounds bounds, bool traverseChildren=true)
 
virtual void setParamBounds (const paramkey &key, paramintBounds bounds, bool traverseChildren=true)
 
virtual paramlist getParamList () const
 The list of all parameters with there value as allocated lists. More...
 
virtual std::list< paramkeygetAllParamNames (bool traverseChildren=true)
 returns all names that are configureable More...
 
virtual parammap getParamValMap () const
 
virtual paramintmap getParamIntMap () const
 
virtual paramboolmap getParamBoolMap () const
 
virtual paramdescr getParamDescr (const paramkey &key, bool traverseChildren=true) const
 returns the description for the given parameter More...
 
virtual paramvalBounds getParamvalBounds (const paramkey &key, bool traverseChildren=true) const
 
virtual paramintBounds getParamintBounds (const paramkey &key, bool traverseChildren=true) const
 
virtual bool hasParamDescr (const paramkey &key, bool traverseChildren=true) const
 
virtual bool hasParamvalBounds (const paramkey &key, bool traverseChildren=true) const
 
virtual bool hasParamintBounds (const paramkey &key, bool traverseChildren=true) const
 
virtual bool storeCfg (const char *filenamestem, const std::list< std::string > &comments=std::list< std::string >())
 stores the key values paires into the file : filenamestem.cfg including the comments given in the list More...
 
virtual bool restoreCfg (const char *filenamestem)
 restores the key values paires from the file : filenamestem.cfg More...
 
void print (FILE *f, const char *prefix, int columns=90, bool traverseChildren=true) const
 prints the keys, values and descriptions to the file. Each line is prefixed More...
 
bool parse (FILE *f, const char *prefix=0, bool traverseChildren=true)
 parses the configuration from the given file More...
 
virtual void addConfigurable (Configurable *conf)
 Adds a configurable as a child object. More...
 
virtual void removeConfigurable (Configurable *conf)
 Removes a configurable as a child object. More...
 
virtual const configurableListgetConfigurables () const
 Returns the list containing all configurable children. More...
 
virtual void configurableChanged ()
 Indicates that the configurable itself or the configurable children attached to this configurable have changed. More...
 
- Public Member Functions inherited from BackCaller
 BackCaller ()
 
virtual ~BackCaller ()
 
virtual void addCallbackable (Callbackable *callbackableInstance, CallbackableType type=BackCaller::DEFAULT_CALLBACKABLE_TYPE)
 Adds a Callbackable instance to this caller instance. More...
 
virtual void removeCallbackable (Callbackable *callbackableInstance, CallbackableType type=BackCaller::DEFAULT_CALLBACKABLE_TYPE)
 Removes a Callbackable instance from this caller instance. More...
 
virtual void removeAllCallbackables (CallbackableType type)
 Removes all Callbackable instances from this caller instance. More...
 
virtual void callBack (CallbackableType type=BackCaller::DEFAULT_CALLBACKABLE_TYPE)
 Calls all registered callbackable classes of the determined type. More...
 
virtual void callBackQMP (CallbackableType type=BackCaller::DEFAULT_CALLBACKABLE_TYPE)
 Calls all registered callbackable classes of the determined type. More...
 

Static Public Member Functions

static int contains (char **list, int len, const char *str)
 returns the index+1 if the list contains the given string or 0 if not More...
 

Static Public Attributes

static const int PHYSICS_CALLBACKABLE = 1
 called each ode/physics step More...
 
static const int GRAPHICS_CALLBACKABLE = 2
 called each osg/draw step More...
 
- Static Public Attributes inherited from Configurable
static const CallbackableType CALLBACK_CONFIGURABLE_CHANGED = 11
 
- Static Public Attributes inherited from BackCaller
static const CallbackableType DEFAULT_CALLBACKABLE_TYPE = 0
 This is the default Callbackable type. More...
 

Protected Member Functions

virtual void setTimeStats (double time, double realtimefactor, double truerealtimefactor, bool pause)
 
virtual void changeShadowTechnique ()
 Changes the currently used shadow technique. More...
 
virtual void base_close ()
 deletes the stuff that is created on makescene and the like More...
 
- Protected Member Functions inherited from Configurable
void copyParameters (const Configurable &, bool traverseChildren=true)
 copies the internal params of the given configurable More...
 
void printdescr (FILE *f, const char *prefix, const paramkey &key, int columns, int indent) const
 

Protected Attributes

dGeomID ground
 
OsgHandle osgHandle
 
OdeHandle odeHandle
 
std::string caption
 
std::string title
 
std::string groundTexture
 
osg::Group * dummy
 
osg::Node * hud
 
osgText::Text * timestats
 
osgText::Text * captionline
 
osgText::Text * titleline
 
StatLineProperties statlineprop
 
Primitiveplane
 
HUDStatisticsManagerhUDStatisticsManager
 this manager provides methods for displaying statistics on the graphical window! More...
 
int ReceivesShadowTraversalMask
 
int CastsShadowTraversalMask
 
int shadowTexSize
 
bool useNVidia
 

Additional Inherited Members

- Public Types inherited from Configurable
typedef std::string paramkey
 
typedef std::string paramdescr
 
typedef double paramval
 
typedef std::list< std::pair
< paramkey, paramval > > 
paramlist
 
typedef std::map< paramkey,
paramval * > 
parammap
 
typedef bool parambool
 
typedef std::list< std::pair
< paramkey, parambool > > 
paramboollist
 
typedef std::map< paramkey,
parambool * > 
paramboolmap
 
typedef int paramint
 
typedef std::list< std::pair
< paramkey, paramint > > 
paramintlist
 
typedef std::map< paramkey,
paramint * > 
paramintmap
 
typedef std::map< paramkey,
paramdescr
paramdescrmap
 
typedef std::pair< paramval,
paramval
paramvalBounds
 
typedef std::map< paramkey,
paramvalBounds
paramvalBoundsMap
 
typedef std::pair< paramint,
paramint
paramintBounds
 
typedef std::map< paramkey,
paramintBounds
paramintBoundsMap
 
typedef std::pair< paramkey,
paramval * > 
paramvalpair
 
typedef std::pair< paramkey,
parambool * > 
paramboolpair
 
typedef std::pair< paramkey,
paramint * > 
paramintpair
 
typedef std::vector
< Configurable * > 
configurableList
 
- Public Types inherited from BackCaller
typedef unsigned long CallbackableType
 

Constructor & Destructor Documentation

Base ( const std::string &  caption = "LpzRobots Simulator (Martius et al)")
~Base ( )
virtual

Member Function Documentation

void base_close ( )
protectedvirtual

deletes the stuff that is created on makescene and the like

void changeShadowTechnique ( )
protectedvirtual

Changes the currently used shadow technique.

The switch is realized between: 0 - NoShadow 3 - ParallelSplitShadowMap 4 - SoftShadowMap 5 - ShadowMap (simple) Currently not supported by this function: 1 - ShadowVolume 2 - ShadowTextue

int contains ( char **  list,
int  len,
const char *  str 
)
static

returns the index+1 if the list contains the given string or 0 if not

osg::Node * createHUD ( OsgScene scene,
const OsgConfig config 
)
virtual

creates hud and is supposed to return the camera to it and adds the geode of the hud to the scene

void createHUDManager ( osg::Geode *  geode,
osgText::Font *  font 
)
virtual
osgShadow::ShadowedScene * createShadowedScene ( osg::Node *  sceneToShadow,
osg::LightSource *  lightSource,
int  shadowType 
)
virtual

Shadow types: 1 - ShadowVolume 2 - ShadowTextue 3 - ParallelSplitShadowMap 4 - SoftShadowMap 5 - ShadowMap.

Shadow types: 1 - LightSpacePerspectiveShadowMap 2 - ShadowTextue 3 - ParallelSplitShadowMap 4 - SoftShadowMap 5 - ShadowMap.

ShadowVolume

ShadowTexture

ParallelSplitShadowMap

SoftShadowMap

ShadowMap

Substance getGroundSubstance ( )
virtual
HUDStatisticsManager * getHUDSM ( )
virtual

Create HUDStatisticsManager and register it for being called back every step.

But do not display if the system is initialised with -nographics.

Returns
the actual HUDStatisticsManager
virtual StatLineProperties getStatLineProperties ( )
inlinevirtual
Node * makeGround ( const OsgConfig config)
virtual
void makeLights ( osg::Group *  node,
const OsgConfig config 
)
virtual

adds light to the node

void makePhysicsScene ( )
virtual

create the ground plane

void makeScene ( OsgScene scene,
const OsgConfig config 
)
virtual

creates the base scene graph with world, sky and floor and shadow and HUD and stores it in scene

Node * makeSky ( const OsgConfig config)
virtual
void setCaption ( const std::string &  caption)
virtual

sets the cpation that is printed at the right of the status line

void setGroundSubstance ( const Substance substance)
virtual
virtual void setGroundTexture ( const char *  filename)
inlinevirtual
virtual void setStatLineProperties ( const StatLineProperties statlineprop)
inlinevirtual

sets the properties of the status line, do it before the scene is initialized

void setTimeStats ( double  time,
double  realtimefactor,
double  truerealtimefactor,
bool  pause 
)
protectedvirtual
void setTitle ( const std::string &  title)
virtual

sets the title that is printed in the center of the status line

Member Data Documentation

std::string caption
protected
osgText::Text* captionline
protected
int CastsShadowTraversalMask
protected
osg::Group* dummy
protected
const int GRAPHICS_CALLBACKABLE = 2
static

called each osg/draw step

dGeomID ground
protected
std::string groundTexture
protected
osg::Node* hud
protected
HUDStatisticsManager* hUDStatisticsManager
protected

this manager provides methods for displaying statistics on the graphical window!

OdeHandle odeHandle
protected
OsgHandle osgHandle
protected
const int PHYSICS_CALLBACKABLE = 1
static

called each ode/physics step

Primitive* plane
protected
int ReceivesShadowTraversalMask
protected
int shadowTexSize
protected
StatLineProperties statlineprop
protected
osgText::Text* timestats
protected
std::string title
protected
osgText::Text* titleline
protected
bool useNVidia
protected

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