24 #ifndef __SPLITCONTROL_H
25 #define __SPLITCONTROL_H
27 #include <selforg/abstractcontroller.h>
28 #include <selforg/onecontrollerperchannel.h>
61 std::string controllerName,
82 virtual bool store(FILE* f)
const {
return false;}
84 virtual bool restore(FILE* f) {
return false;}
90 std::vector<AbstractController*>
ctrl;
ControllerGenerator * controllerGenerator
Definition: splitcontrol.h:93
void addMotorIdx(int m)
Definition: splitcontrol.h:45
virtual std::vector< AbstractController * > getControllers() const
Definition: splitcontrol.h:87
Abstract class for robot controller (with some basic functionality).
Definition: abstractcontroller.h:46
std::vector< Assoziation > Assoziations
Definition: splitcontrol.h:50
int motornumber
Definition: splitcontrol.h:97
virtual void init(int sensornumber, int motornumber, RandGen *randGen=0)
initialisation of the controller with the given sensor/ motornumber Must be called before use...
Definition: splitcontrol.cpp:55
random generator with 48bit integer arithmentic
Definition: randomgenerator.h:34
std::vector< AbstractController * > ctrl
Definition: splitcontrol.h:90
virtual int getSensorNumber() const
Definition: splitcontrol.h:77
double * sensorbuffer
Definition: splitcontrol.h:99
virtual bool store(FILE *f) const
stores the object to the given file stream (ASCII preferred).
Definition: splitcontrol.h:82
std::list< int > motors
Definition: splitcontrol.h:48
double sensor
Definition: abstractcontroller.h:48
int numCtrlCreateBeforeInit
Definition: splitcontrol.h:95
void addSensorIdx(int s)
Definition: splitcontrol.h:44
std::list< int > sensors
Definition: splitcontrol.h:47
Definition: splitcontrol.h:42
int numContextSensors
Definition: splitcontrol.h:96
virtual void step(const sensor *sensors, int sensornumber, motor *motors, int motornumber)
performs one step (includes learning).
Definition: splitcontrol.cpp:92
class for using multiple controller with one robot.
Definition: splitcontrol.h:39
virtual bool restore(FILE *f)
loads the object from the given file stream (ASCII preferred).
Definition: splitcontrol.h:84
SplitControl(ControllerGenerator *controllerGenerator, const Assoziations &assoziations, std::string controllerName, int numCtrlCreateBeforeInit=1, int numContextSensors=0)
Definition: splitcontrol.cpp:30
Assoziations assoz
Definition: splitcontrol.h:94
double * motorbuffer
Definition: splitcontrol.h:100
double motor
Definition: abstractcontroller.h:49
virtual void stepNoLearning(const sensor *sensors, int sensornumber, motor *motors, int motornumber)
performs one step without learning.
Definition: splitcontrol.cpp:116
virtual ~SplitControl()
Definition: splitcontrol.cpp:47
int sensornumber
Definition: splitcontrol.h:98
virtual int getMotorNumber() const
Definition: splitcontrol.h:78
generator for controller
Definition: onecontrollerperchannel.h:55