Alex exoskeleton
ALEX SoftwareDocumentation
Robot.h
Go to the documentation of this file.
1 
14 /*Header Guard*/
15 #ifndef ROBOT_H_INCLUDED
16 #define ROBOT_H_INCLUDED
17 #include <vector>
18 
19 #include "InputDevice.h"
20 #include "Joint.h"
21 #include "TrajectoryGenerator.h"
22 using namespace std;
23 
28 class Robot {
29  protected:
37  vector<Joint *> joints;
38 
39  vector<InputDevice *> inputs;
45 
46  public:
47  //Setup
52  ~Robot();
63  bool initialise();
69  virtual bool initialiseJoints() = 0;
75  virtual bool initialiseInputs() = 0;
85  virtual bool initialiseNetwork() = 0;
86 
87  //Robot objects
88 
89  //Core functions
95  virtual void updateRobot();
100  void printStatus();
105  void getJointStatus(int J_i);
106 
108 
112  void initialiseLog();
117  void logDataPoint(std::string data);
122  bool closeLog();
123 };
124 
125 #endif //ROBOT_H
TrajectoryGenerator * trajectoryGenerator
Trajectory Generator.
Definition: Robot.h:44
Abstract Class representing a robot. Includes vectors of Joint and InputDevice.
Definition: Robot.h:28
vector< Joint * > joints
Vector of pointers to Abstract <class>Joint<class> Objects, number and type must be specified by Soft...
Definition: Robot.h:37
Base class of Trajectory Generator. Will always be extended with specific implementations, and is relatively scarce, given the differences expected in the different trajectories.
Abstract class which is used to generate trajectorys for a Robot to follow.
vector< InputDevice * > inputs
Definition: Robot.h:39