28 #include <selforg/storeable.h>
47 void track(
double time);
70 OdeAgent(
const std::list<PlotOption>& plotOptions,
double noisefactor = 1,
const std::string&
name =
"OdeAgent",
const std::string& revision =
"$ID$") __attribute__ ((deprecated));
88 return Agent::init(controller, robot, wiring, seed);
91 virtual void step(
double noise,
double time);
140 virtual bool store(FILE* f)
const;
173 void constructor_helper(
const GlobalData* globalData);
void close()
Definition: odeagent.cpp:42
Interface for objects, that can be stored and restored to/from a file stream (binary).
Definition: storeable.h:33
TrackRobot tracker
Definition: odeagent.h:42
virtual void setTraceThickness(int tracethickness)
Definition: odeagent.h:130
Abstract class for robot controller (with some basic functionality).
Definition: abstractcontroller.h:46
virtual bool removeOperator(Operator *o)
removes the given operator: it is not deleted (memory wise)
Definition: odeagent.cpp:302
virtual int getTraceLength()
Definition: odeagent.h:124
This class provides tracking possibilies of a robot.
Definition: trackrobots.h:60
virtual void addOperator(Operator *o, bool addToConfigurable=true)
adds an operator to the agent (the operator is deleted on destruction of the agent!) ...
Definition: odeagent.cpp:292
virtual void setTrackOptions(const TrackRobot &trackrobot)
sets the trackoptions which starts spatial tracking of a robot
Definition: odeagent.cpp:195
AbstractRobot * robot
Definition: agent.h:102
Trackable * obj
Definition: odeagent.h:41
Position lastpos
Definition: odeagent.h:40
virtual bool unfixateRobot(GlobalData &global)
release the robot in case it is fixated and turns true in this case
Definition: odeagent.cpp:273
TrackRobot trackrobot
Definition: agent.h:109
AbstractWiring * wiring
Definition: wiredcontroller.h:154
Abstract class (interface) for trackable objects (used for robots)
Definition: trackable.h:39
virtual void step(double noise, double time)
Performs an step of the agent, including sensor reading, pushing sensor values through the wiring...
Definition: odeagent.cpp:129
iparamkey name
Definition: inspectable.h:251
dummy (does nothing) is there for compatibility, might be removed later
Definition: plotoption.h:42
virtual ~OdeAgent()
Definition: odeagent.cpp:113
std::list< Operator * > OperatorList
Definition: odeagent.h:57
Abstract wiring-object between controller and robot.
Definition: abstractwiring.h:39
void drawTrace(GlobalData &global)
draw the trace
Definition: odeagent.cpp:54
virtual bool stopTracking()
stop tracking (returns true of tracking was on);
Definition: odeagent.cpp:205
Color color
Definition: odeagent.h:43
Definition: position.h:30
void track(double time)
actually write the log files and stuff
Definition: odeagent.cpp:48
virtual void beforeStep(GlobalData &global)
should be called before step() or stepOnlyWiredController() and calls operators and robot->sense() ...
Definition: odeagent.cpp:138
This class contains options for the use of an external plot utility like guilogger or neuronviz or ju...
Definition: plotoption.h:66
virtual void trace(GlobalData &global)
continues the trace by one segment
Definition: odeagent.cpp:188
std::list< PlotOption > PlotOptionList
Definition: odeagent.h:56
virtual void setMotorsGetSensors()
Special function for the class Simulation to seperate the step of the WiredController (plus TrackRobo...
Definition: odeagent.cpp:255
The Agent contains a controller, a robot and a wiring, which connects robot and controller.
Definition: agent.h:52
virtual bool setTraceLength(int tracelength)
Definition: odeagent.h:127
virtual void removeOperators()
removes (and deletes) all operators
Definition: odeagent.cpp:309
Data structure holding all essential global information.
Definition: globaldata.h:57
Specialised agent for ode robots.
Definition: odeagent.h:62
void init()
Definition: odeagent.cpp:36
std::list< osg::Vec3 > pnts
Definition: odeagent.h:52
virtual bool store(FILE *f) const
stores the object to the given file stream (ASCII preferred).
Definition: odeagent.cpp:280
virtual bool init(AbstractController *controller, OdeRobot *robot, AbstractWiring *wiring, long int seed=0)
initializes the object with the given controller, robot and wiring and initializes plotoptionengine ...
Definition: odeagent.h:86
Definition: operator.h:42
TraceDrawer()
Definition: odeagent.h:39
OdeAgent(const PlotOption &plotOption=PlotOption(NoPlot), double noisefactor=1, const std::string &name="OdeAgent", const std::string &revision="$ID$") __attribute__((deprecated))
Definition: odeagent.cpp:86
virtual const OdeRobot * getRobot() const
Returns a const pointer to the robot.
Definition: odeagent.h:121
virtual void stepOnlyWiredController(double noise, double time)
Special function for the class Simulation to seperate the step of the WiredController (plus TrackRobo...
Definition: odeagent.cpp:178
Abstract class for ODE robots.
Definition: oderobot.h:64
AbstractController * controller
Definition: wiredcontroller.h:153
std::list< TraceDrawer > TraceDrawerList
Definition: odeagent.h:58
virtual bool init(AbstractController *controller, AbstractRobot *robot, AbstractWiring *wiring, long int seed=0)
initializes the object with the given controller, robot and wiring and initializes the output options...
Definition: agent.cpp:61
virtual void fixateRobot(GlobalData &global, int primitiveID=-1, double time=0)
fixates the given primitive of the robot at its current position to the world for a certain time...
Definition: odeagent.cpp:267
double noisefactor
factor that is muliplied with noise stength
Definition: wiredcontroller.h:166
virtual bool restore(FILE *f)
loads the object from the given file stream (ASCII preferred).
Definition: odeagent.cpp:285
virtual OdeRobot * getRobot()
Returns a pointer to the robot.
Definition: odeagent.h:117
Definition: odeagent.h:37
bool initialized
Definition: odeagent.h:51
virtual void addTracking(unsigned int primitiveIndex, const TrackRobot &trackrobot, const Color &color)
adds tracking for individual primitives
Definition: odeagent.cpp:233