00001 #ifndef SETTWIST_HANDLER_H 00002 #define SETTWIST_HANDLER_H 00003 00004 #include <vrep_ros_plugin/GenericObjectHandler.h> 00005 #include <geometry_msgs/TwistStamped.h> 00006 00015 class SetTwistHandler : public GenericObjectHandler 00016 { 00017 public: 00018 SetTwistHandler(); 00019 ~SetTwistHandler(); 00020 00024 void synchronize(); 00025 00029 void handleSimulation(); 00030 00034 unsigned int getObjectType() const; 00035 00037 const static unsigned int SET_OBJ_TWIST_DATA_MAIN=550; 00038 const static unsigned int SET_OBJ_TWIST_DATA_LIN_GAIN=SET_OBJ_TWIST_DATA_MAIN+1; 00039 const static unsigned int SET_OBJ_TWIST_DATA_ANG_GAIN=SET_OBJ_TWIST_DATA_LIN_GAIN+1; 00040 00041 protected: 00042 00046 void _initialize(); 00047 00051 ros::Subscriber _sub; 00052 00056 geometry_msgs::TwistStamped _twistCommands; 00057 00061 void TwistCommandCallback(const geometry_msgs::TwistStamped& msg); 00062 00066 simInt _isStatic; 00067 00068 simFloat _linGain; 00069 simFloat _angGain; 00070 }; 00071 00072 00073 #endif // ndef SETTWIST_HANDLER_H