Klamp't  0.9.0
JointTrackingController.h
1 #ifndef JOINT_TRACKING_CONTROLLER_H
2 #define JOINT_TRACKING_CONTROLLER_H
3 
4 #include "Controller.h"
5 
6 namespace Klampt {
7 
12 {
13  public:
15  virtual ~JointTrackingController() {}
16  virtual const char* Type() const { return "JointTrackingController"; }
17  virtual void Update(Real dt);
18  virtual void Reset();
19  virtual bool ReadState(File& f) {
20  if(!RobotController::ReadState(f)) return false;
21  if(!qdesDefault.Read(f)) return false;
22  return true;
23  }
24  virtual bool WriteState(File& f) const {
25  if(!RobotController::WriteState(f)) return false;
26  if(!qdesDefault.Write(f)) return false;
27  return true;
28  }
29 
30  //commands
31  virtual vector<string> Commands() const;
32  virtual bool SendCommand(const string& name,const string& str);
33 
35  virtual void GetDesiredState(Config& q_des,Vector& dq_des);
36 
37  Config qdesDefault;
38 };
39 
40 } //namespace Klampt
41 
42 #endif
A controller base class that reads out a desired servo position and velocity using the method GetDesi...
Definition: JointTrackingController.h:11
A base class for a robot controller. The base class does nothing.
Definition: Controller.h:29
The main robot type used in RobotSim.
Definition: Robot.h:83
Definition: ContactDistance.h:6
virtual void GetDesiredState(Config &q_des, Vector &dq_des)
subclasses should override this