Public Member Functions |
| SegwayRMP (ConfigFile *cf, int section) |
virtual int | MainSetup () |
| Sets up the resources needed by the driver thread.
|
virtual void | MainQuit () |
| Cleanup method for driver thread (called when main exits)
|
virtual int | ProcessMessage (QueuePointer &resp_queue, player_msghdr *hdr, void *data) |
| Message handler.
|
int | CanBusSetup () |
| Sets up the CAN bus for communication.
|
int | USBSetup () |
| Sets up the USB bus for communication.
|
| ThreadedDriver (ConfigFile *cf, int section, bool overwrite_cmds, size_t queue_maxlen, int interf) |
| Constructor with implicit interface.
|
| ThreadedDriver (ConfigFile *cf, int section, bool overwrite_cmds=true, size_t queue_maxlen=PLAYER_MSGQUEUE_DEFAULT_MAXLEN) |
| Constructor for multiple-interface drivers.
|
virtual | ~ThreadedDriver () |
| Destructor.
|
virtual int | Setup () |
| Initialize the driver.
|
virtual int | Shutdown () |
| Finalize the driver.
|
virtual int | Terminate () |
| Terminate the driver.
|
virtual void | Main (void)=0 |
| Main method for driver thread.
|
bool | Wait (double TimeOut=0.0) |
| Wait for new data to arrive on the driver's queue.
|
virtual void | Update () |
| Update non-threaded drivers.
|
bool | HasSubscriptions () |
virtual void | Publish (player_devaddr_t addr, QueuePointer &queue, uint8_t type, uint8_t subtype, void *src=NULL, size_t deprecated=0, double *timestamp=NULL, bool copy=true) |
| Publish a message via one of this driver's interfaces.
|
virtual void | Publish (player_devaddr_t addr, uint8_t type, uint8_t subtype, void *src=NULL, size_t deprecated=0, double *timestamp=NULL, bool copy=true) |
| Publish a message via one of this driver's interfaces.
|
virtual void | Publish (QueuePointer &queue, player_msghdr_t *hdr, void *src, bool copy=true) |
| Publish a message via one of this driver's interfaces.
|
virtual void | Publish (player_msghdr_t *hdr, void *src, bool copy=true) |
| Publish a message via one of this driver's interfaces.
|
| Driver (ConfigFile *cf, int section, bool overwrite_cmds, size_t queue_maxlen, int interf) |
| Constructor for single-interface drivers.
|
| Driver (ConfigFile *cf, int section, bool overwrite_cmds=true, size_t queue_maxlen=PLAYER_MSGQUEUE_DEFAULT_MAXLEN) |
| Constructor for multiple-interface drivers.
|
virtual | ~Driver () |
| Destructor.
|
int | GetError () |
| Get last error value.
|
virtual int | Subscribe (player_devaddr_t addr) |
| Subscribe to this driver.
|
virtual int | Subscribe (QueuePointer &queue, player_devaddr_t addr) |
| Subscribe to this driver.
|
virtual int | Unsubscribe (player_devaddr_t addr) |
| Unsubscribe from this driver.
|
virtual int | Unsubscribe (QueuePointer &queue, player_devaddr_t addr) |
| Unsubscribe from this driver.
|
void | ProcessMessages (int maxmsgs) |
| Process pending messages.
|
void | ProcessMessages (void) |
| Process pending messages.
|
virtual int | ProcessInternalMessages (QueuePointer &resp_queue, player_msghdr *hdr, void *data) |
| Internal message handler.
|
virtual bool | RegisterProperty (const char *key, Property *prop, ConfigFile *cf, int section) |
| Property registration.
|
virtual bool | RegisterProperty (Property *prop, ConfigFile *cf, int section) |
| Property registration.
|
Private Member Functions |
int | HandlePositionConfig (QueuePointer &resp_queue, uint32_t subtype, void *data, size_t len) |
int | HandlePosition3DConfig (QueuePointer &resp_queue, uint32_t subtype, void *data, size_t len) |
int | Read () |
int | CanBusRead () |
int | USBRead () |
int | Diff (uint32_t from, uint32_t to, bool first) |
int | Write (CanPacket &pkt) |
virtual void | Main () |
void | MakeStatusCommand (CanPacket *pkt, uint16_t cmd, uint16_t val) |
void | MakeVelocityCommand (CanPacket *pkt, int32_t xspeed, int32_t yawspeed) |
void | MakeShutdownCommand (CanPacket *pkt) |
void | UpdateData (rmp_frame_t *) |