00001 #ifndef PHPLAYERPOSITION_H 00002 #define PHPLAYERPOSITION_H 00003 00004 #include <phPlayerDevice.h> 00005 #include <phPositionData.h> 00006 00007 typedef struct ph_player_position_t *ph_player_position; 00008 00009 /* ------------------------------------------------------------------------ */ 00010 class phPlayerPosition : public phPlayerDevice 00011 { 00012 private: 00013 ph_player_position m_position; 00014 00015 int m_enabled; 00016 double m_last_vx; 00017 double m_last_vy; 00018 double m_last_va; 00019 double m_last_qx; 00020 double m_last_qy; 00021 double m_last_qa; 00022 int m_last_state; 00023 00024 phPositionData *m_data; 00025 00026 int setCmdVel ( double vx, double vy, double va, int state ); 00027 int setCmdPose ( double qx, double qy, double qa, int state ); 00028 00029 public: 00030 phPlayerPosition ( ); 00031 phPlayerPosition ( int index, phPlayerClient *client ); 00032 ~phPlayerPosition ( ); 00033 00034 int set ( int index, phPlayerClient *client ); 00035 00036 int subscribe ( int access, int index, phPlayerClient *client ); 00037 int subscribe ( int access = phMODE_ALL); 00038 int unsubscribe (); 00039 00040 int enable (int enable = 1); 00041 int disable (int disable = 1); 00042 int isEnabled (); 00043 00044 int getGeometry (); 00045 00046 int move(double translate, double rotate); 00047 int stop(int state = 0); 00048 00049 int getData( phPositionData &data ); 00050 00051 void *getId(); 00052 int updateData(); 00053 }; 00054 00055 #endif /* PHPLAYERPOSITION_H */
Copyright (C) 2002 - 2007 |
Philip D.S. Thoren ( pthoren@users.sourceforge.net ) University Of Massachusetts at Lowell Robotics Lab |