EpuckDriver Class Reference

Plug-in driver for the e-puck robot, in conformity with Player version 2.1. More...

#include <epuckDriver.hpp>

Inheritance diagram for EpuckDriver:
Collaboration diagram for EpuckDriver:

List of all members.


Detailed Description

Plug-in driver for the e-puck robot, in conformity with Player version 2.1.

This class implements the player driver interface, and perform all comunication with the player-server. It must to have a pointer for each class that controls a e-puck device for which there are a player interface, and bind them with player-server.

Author:
Renato Florentino Garcia
Date:
November 2008

Public Member Functions

 EpuckDriver (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.
virtual int Subscribe (player_devaddr_t addr)
 Subscribe to this driver.
virtual int Unsubscribe (player_devaddr_t addr)
 Unsubscribe from this driver.

Static Public Member Functions

static DriverEpuckDriver_Init (ConfigFile *cf, int section)

Private Member Functions

virtual void Main ()
 Main method for driver thread.

Private Attributes

const unsigned EXPECTED_EPUCK_SIDE_VERSION
player_devaddr_t position2dAddr
player_position2d_data_t posData
std::auto_ptr< EpuckPosition2depuckPosition2d
player_devaddr_t irAddr
player_ir_data_t irData
std::auto_ptr< EpuckIRepuckIR
player_devaddr_t cameraAddr
player_camera_data_t cameraData
std::auto_ptr< EpuckCameraepuckCamera
player_devaddr_t ringLEDAddr [EpuckLEDs::RING_LEDS_NUM]
player_blinkenlight_data_t ringLEDsData [EpuckLEDs::RING_LEDS_NUM]
player_devaddr_t frontLEDAddr
player_blinkenlight_data_t frontLEDData
player_devaddr_t bodyLEDAddr
player_blinkenlight_data_t bodyLEDData
std::auto_ptr< EpuckLEDsepuckLEDs
SerialPortserialPort

Member Function Documentation

void EpuckDriver::MainQuit ( void  ) [virtual]

Cleanup method for driver thread (called when main exits)

Overload this method and to do additional cleanup when the driver thread exits.

Reimplemented from ThreadedDriver.

int EpuckDriver::Subscribe ( player_devaddr_t  addr) [virtual]

Subscribe to this driver.

The Subscribe() and Unsubscribe() methods are used to control subscriptions to the driver; a driver MAY override them, but usually won't.

Parameters:
addrAddress of the device to subscribe to (the driver may have more than one interface).
Returns:
Returns 0 on success.

Reimplemented from Driver.

References player_devaddr::interf.

int EpuckDriver::Unsubscribe ( player_devaddr_t  addr) [virtual]

Unsubscribe from this driver.

The Subscribe() and Unsubscribe() methods are used to control subscriptions to the driver; a driver MAY override them, but usually won't.

Parameters:
addrAddress of the device to unsubscribe from (the driver may have more than one interface).
Returns:
Returns 0 on success.

Reimplemented from Driver.

References player_devaddr::interf.


The documentation for this class was generated from the following files: