#include <ArBumpers.h>
Inheritance diagram for ArBumpers:

The class treats bumpers like a range device. When a bumper is bumped, it reports the approximate position of the bump in a buffer. The positions are kept current for a specified length of time.
Public Member Functions | |
| void | addBumpToBuffer (int bumpValue, int whichBumper) |
| ArBumpers (size_t currentBufferSize=30, size_t cumulativeBufferSize=30, const char *name="bumpers", int maxSecondsToKeepCurrent=15, double angleRange=135) | |
| void | processReadings (void) |
| virtual void | setRobot (ArRobot *robot) |
Protected Attributes | |
| double | myAngleRange |
| int | myBumpMask |
| ArFunctorC< ArBumpers > | myProcessCB |
| ArRobot * | myRobot |
| ArBumpers::ArBumpers | ( | size_t | currentBufferSize = 30, |
|
| size_t | cumulativeBufferSize = 30, |
|||
| const char * | name = "bumpers", |
|||
| int | maxSecondsToKeepCurrent = 15, |
|||
| double | angleRange = 135 | |||
| ) |
| currentBufferSize | The number of readings to store in the current Buffer | |
| cumulativeBufferSize | The number of readings in the cumulative buffer (This currently is not being used) | |
| name | The name of this range device | |
| maxSecondsToKeepCurrent | How long to keep readings in the current buffer | |
| angleRange | the range in front and behind the robot which is divided by the number of bumpers and used to detrmine where the sensor readings will be placed. |
| void ArBumpers::addBumpToBuffer | ( | int | bumpValue, | |
| int | whichBumper | |||
| ) |
| bumpValue | This is the value that tells which individual bumper has been triggered | |
| whichBumper | This value tells if the front or rear has been triggered |
| void ArBumpers::processReadings | ( | void | ) |
This function is called every 100 milliseconds.
1.4.7