DriveWheel.hh
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef DRIVEWHEEL_HH
00027 #define DRIVEWHEEL_HH
00028
00029
00030 #include "Wheel.hh"
00031
00032 namespace gazebo
00033 {
00034 class HingeJoint;
00035
00038
00047
00048
00049 class DriveWheel: public Wheel
00050 {
00052 public: DriveWheel ( );
00053
00055 public: virtual ~DriveWheel();
00056
00058 public: void Connect(Joint *joint, int type);
00059
00061 public: void Update(float speed, float steer=0);
00062
00064 public: void SetSteerTorque(float newTorque);
00065
00067 public: void SetTorque(float newTorque);
00068
00070 public: void Stop();
00071
00073 public: void SetSuspension(float spring, float damping, float step);
00074
00075 private: HingeJoint *joint;
00076 private: float torque;
00077 private: float steerTorque;
00078 private: float speedCmd;
00079 private: float steerCmd;
00080
00081
00082 };
00083
00085
00086
00087 }
00088
00089 #endif