#include <ArServerModeDrive.h>
Inheritance diagram for ArServerModeDrive:
Public Member Functions | |
virtual void | activate (void) |
The function called when the mode is activated, subclass must provide. | |
void | addControlCommands (ArServerHandlerCommands *handlerCommands) |
This adds commands that'll let you disable and enable safe driving. | |
ArServerModeDrive (ArServerBase *server, ArRobot *robot, bool takeControlOnJoystick=false) | |
virtual void | deactivate (void) |
The function called when the mode is deactivated, subclass must provide. | |
void | driveJoystick (double vel, double rotVel) |
virtual ArActionGroup * | getActionGroup (void) |
This function should return the action group this mode uses. | |
bool | getSafeDriving (void) |
void | serverDriveJoystick (ArServerClient *client, ArNetPacket *packet) |
void | setExtraUnsafeAction (ArAction *action) |
this action will be activated in unsafe mode | |
void | setSafeDriving (bool safe) |
void | setThrottleParams (int lowSpeed, int highSpeed) |
virtual void | userTask (void) |
The ArMode's user task, don't need one, subclass must provide if needed. | |
virtual | ~ArServerModeDrive () |
Protected Member Functions | |
void | joyUserTask (void) |
void | serverSafeDrivingDisable (void) |
void | serverSafeDrivingEnable (void) |
Protected Attributes | |
ArActionGroupInput | myDriveGroup |
bool | myDriveSafely |
ArAction * | myExtraUnsafeAction |
ArServerHandlerCommands * | myHandlerCommands |
ArActionInput * | myInputAction |
ArActionJoydrive | myJoydriveAction |
ArJoyHandler * | myJoyHandler |
ArFunctorC< ArServerModeDrive > | myJoyUserTaskCB |
bool | myNewDriveSafely |
double | myRotVel |
ArFunctor2C< ArServerModeDrive, ArServerClient *, ArNetPacket * > | myServerDriveJoystickCB |
ArFunctorC< ArServerModeDrive > | myServerSafeDrivingDisableCB |
ArFunctorC< ArServerModeDrive > | myServerSafeDrivingEnableCB |
ArActionStop | myStopAction |
bool | myTakeControlOnJoystick |
double | myVel |
Definition at line 34 of file ArServerModeDrive.h.
|
|
Definition at line 68 of file ArServerModeDrive.cpp. |
|
The function called when the mode is activated, subclass must provide.
Implements ArServerMode. Definition at line 73 of file ArServerModeDrive.cpp. References driveJoystick(). Referenced by joyUserTask(). |
|
This adds commands that'll let you disable and enable safe driving.
Definition at line 123 of file ArServerModeDrive.cpp. References ArServerHandlerCommands::addCommand(), myHandlerCommands, myServerSafeDrivingDisableCB, and myServerSafeDrivingEnableCB. Referenced by main(). |
|
The function called when the mode is deactivated, subclass must provide.
Implements ArServerMode. Definition at line 78 of file ArServerModeDrive.cpp. References ArServerMode::baseDeactivate(), ArActionGroup::deactivate(), and myDriveGroup. |
|
|
This function should return the action group this mode uses.
Reimplemented from ArServerMode. Definition at line 49 of file ArServerModeDrive.h. References myDriveGroup. |
|
Definition at line 104 of file ArServerModeDrive.cpp. References myDriveSafely. |
|
Definition at line 188 of file ArServerModeDrive.cpp. References activate(), ArJoyHandler::getButton(), ArServerMode::getName(), ArJoyHandler::haveJoystick(), ArServerMode::isActive(), ArLog::log(), myJoyHandler, and myTakeControlOnJoystick. |
|
Definition at line 175 of file ArServerModeDrive.cpp. References driveJoystick(), ArRobot::lock(), and ArRobot::unlock(). |
|
Definition at line 116 of file ArServerModeDrive.cpp. References ArRobot::lock(), setSafeDriving(), and ArRobot::unlock(). |
|
Definition at line 109 of file ArServerModeDrive.cpp. References ArRobot::lock(), setSafeDriving(), and ArRobot::unlock(). |
|
this action will be activated in unsafe mode
Definition at line 53 of file ArServerModeDrive.h. References myExtraUnsafeAction. |
|
Definition at line 84 of file ArServerModeDrive.cpp. References driveJoystick(), ArServerMode::isActive(), ArLog::log(), myDriveSafely, myNewDriveSafely, myRotVel, and myVel. Referenced by serverSafeDrivingDisable(), and serverSafeDrivingEnable(). |
|
Definition at line 136 of file ArServerModeDrive.cpp. References myJoydriveAction, and ArActionJoydrive::setThrottleParams(). Referenced by ArServerModeDrive(). |
|
The ArMode's user task, don't need one, subclass must provide if needed.
Reimplemented from ArServerMode. Definition at line 204 of file ArServerModeDrive.cpp. References ArMath::fabs(), ArRobot::forceTryingToMove(), ArJoyHandler::getButton(), ArRobot::getRotVel(), ArRobot::getStallValue(), ArRobot::getVel(), ArJoyHandler::haveJoystick(), ArRobot::isLeftMotorStalled(), ArRobot::isRightMotorStalled(), myJoyHandler, and ArServerMode::setActivityTimeToNow(). |
|
Definition at line 64 of file ArServerModeDrive.h. Referenced by ArServerModeDrive(), deactivate(), driveJoystick(), and getActionGroup(). |
|
Definition at line 67 of file ArServerModeDrive.h. Referenced by ArServerModeDrive(), driveJoystick(), getSafeDriving(), and setSafeDriving(). |
|
Definition at line 59 of file ArServerModeDrive.h. Referenced by ArServerModeDrive(), driveJoystick(), and setExtraUnsafeAction(). |
|
Definition at line 73 of file ArServerModeDrive.h. Referenced by addControlCommands(), and ArServerModeDrive(). |
|
Definition at line 62 of file ArServerModeDrive.h. Referenced by ArServerModeDrive(), and driveJoystick(). |
|
Definition at line 61 of file ArServerModeDrive.h. Referenced by ArServerModeDrive(), driveJoystick(), and setThrottleParams(). |
|
Definition at line 60 of file ArServerModeDrive.h. Referenced by ArServerModeDrive(), joyUserTask(), and userTask(). |
|
Definition at line 66 of file ArServerModeDrive.h. Referenced by ArServerModeDrive(). |
|
Definition at line 68 of file ArServerModeDrive.h. Referenced by driveJoystick(), and setSafeDriving(). |
|
Definition at line 70 of file ArServerModeDrive.h. Referenced by driveJoystick(), and setSafeDriving(). |
|
Definition at line 65 of file ArServerModeDrive.h. Referenced by ArServerModeDrive(). |
|
Definition at line 75 of file ArServerModeDrive.h. Referenced by addControlCommands(). |
|
Definition at line 74 of file ArServerModeDrive.h. Referenced by addControlCommands(). |
|
Definition at line 63 of file ArServerModeDrive.h. Referenced by ArServerModeDrive(). |
|
Definition at line 71 of file ArServerModeDrive.h. Referenced by ArServerModeDrive(), and joyUserTask(). |
|
Definition at line 69 of file ArServerModeDrive.h. Referenced by driveJoystick(), and setSafeDriving(). |