17 #ifndef _GAZEBO_JOINTCONTROLLER_HH_ 18 #define _GAZEBO_JOINTCONTROLLER_HH_ 23 #include <ignition/msgs.hh> 37 class JointControllerPrivate;
55 public:
void AddJoint(
JointPtr _joint);
59 public:
void RemoveJoint(
Joint *_joint);
62 public:
void Update();
69 public:
void SetJointPosition(
70 const std::string &_name,
double _position,
int _index = 0);
74 public:
void SetJointPositions(
75 const std::map<std::string, double> &_jointPositions);
84 public: std::map<std::string, JointPtr> GetJoints()
const;
89 public:
void SetPositionPID(
const std::string &_jointName,
96 public:
bool SetPositionTarget(
const std::string &_jointName,
97 const double _target);
102 public:
void SetVelocityPID(
const std::string &_jointName,
109 public:
bool SetVelocityTarget(
const std::string &_jointName,
110 const double _target);
117 public:
bool SetForce(
const std::string &_jointName,
const double _force);
122 public: std::map<std::string, common::PID> GetPositionPIDs()
const;
127 public: std::map<std::string, common::PID> GetVelocityPIDs()
const;
132 public: std::map<std::string, double> GetForces()
const;
137 public: std::map<std::string, double> GetPositions()
const;
142 public: std::map<std::string, double> GetVelocities()
const;
151 private:
bool OnJointCmdReq(
const ignition::msgs::StringMsg &_req,
152 ignition::msgs::JointCmd &_rep);
156 private:
void OnJointCommand(
const ignition::msgs::JointCmd &_msg);
175 public:
void SetJointPosition(
176 JointPtr _joint,
double _position,
int _index = 0);
179 private: JointControllerPrivate *dataPtr;
Forward declarations for the common classes.
Definition: Animation.hh:26
Forward declarations for transport.
A class for manipulating physics::Joint.
Definition: JointController.hh:44
boost::shared_ptr< Joint > JointPtr
Definition: PhysicsTypes.hh:117
default namespace for gazebo
Base class for all joints.
Definition: Joint.hh:50
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