17 #ifndef _GAZEBO_JOINTCONTROLLER_HH_
18 #define _GAZEBO_JOINTCONTROLLER_HH_
36 class JointControllerPrivate;
54 public:
void AddJoint(
JointPtr _joint);
57 public:
void Update();
64 public:
void SetJointPosition(
65 const std::string &_name,
double _position,
int _index = 0);
69 public:
void SetJointPositions(
70 const std::map<std::string, double> &_jointPositions);
79 public: std::map<std::string, JointPtr> GetJoints()
const;
84 public:
void SetPositionPID(
const std::string &_jointName,
91 public:
bool SetPositionTarget(
const std::string &_jointName,
97 public:
void SetVelocityPID(
const std::string &_jointName,
104 public:
bool SetVelocityTarget(
const std::string &_jointName,
110 public: std::map<std::string, common::PID> GetPositionPIDs()
const;
115 public: std::map<std::string, common::PID> GetVelocityPIDs()
const;
120 public: std::map<std::string, double> GetForces()
const;
125 public: std::map<std::string, double> GetPositions()
const;
130 public: std::map<std::string, double> GetVelocities()
const;
134 private:
void OnJointCmd(ConstJointCmdPtr &_msg);
153 public:
void SetJointPosition(
154 JointPtr _joint,
double _position,
int _index = 0);
157 private: JointControllerPrivate *dataPtr;
Forward declarations for transport.
A class for manipulating physics::Joint.
Definition: JointController.hh:43
boost::shared_ptr< Joint > JointPtr
Definition: PhysicsTypes.hh:117
default namespace for gazebo
boost::shared_ptr< Model > ModelPtr
Definition: PhysicsTypes.hh:93
Generic PID controller class.
Definition: PID.hh:36
A Time class, can be used to hold wall- or sim-time.
Definition: Time.hh:44