#include <ArActionRobotJoydrive.h>
Inheritance diagram for ArActionRobotJoydrive:
This class creates its own ArJoyHandler to get input from the joystick. Then it will scale the speed between 0 and the given max for velocity and turning, up and down on the joystick go forwards/backwards while right and left go right and left. You must press in one of the two joystick buttons for the class to pay attention to the joystick.
NOTE: The joystick does not save calibration information, so you must calibrate the joystick before each time you use it. To do this, press the button for at least a half a second while the joystick is in the middle. Then let go of the button and hold the joystick in the upper left for at least a half second and then in the lower right corner for at least a half second.
Public Member Functions | |
ArActionRobotJoydrive (const char *name="robotJoyDrive", bool requireDeadmanPushed=true) | |
Constructor. | |
virtual ArActionDesired * | fire (ArActionDesired currentDesired) |
virtual const ArActionDesired * | getDesired (void) const |
virtual ArActionDesired * | getDesired (void) |
virtual void | setRobot (ArRobot *robot) |
virtual | ~ArActionRobotJoydrive () |
Destructor. | |
Protected Member Functions | |
void | connectCallback (void) |
bool | handleJoystickPacket (ArRobotPacket *packet) |
Protected Attributes | |
int | myButton1 |
int | myButton2 |
ArFunctorC< ArActionRobotJoydrive > | myConnectCB |
bool | myDeadZoneLast |
ArActionDesired | myDesired |
ArRetFunctor1C< bool, ArActionRobotJoydrive, ArRobotPacket * > | myHandleJoystickPacketCB |
int | myJoyX |
int | myJoyY |
ArTime | myPacketReceivedTime |
bool | myRequireDeadmanPushed |
int | myThrottle |
|
Constructor.
|