#include <ArRangeBuffer.h>
Public Member Functions | |
void | addReading (double x, double y) |
Adds a new reading to the buffer. | |
void | addReadingConditional (double x, double y, double closeDist) |
Adds a new reading to the buffer if some conditions are met. | |
void | applyTransform (ArTransform trans) |
Applies a transform to the buffer. | |
ArRangeBuffer (int size) | |
Constructor. | |
void | beginInvalidationSweep (void) |
Begins a walk through the getBuffer list of readings. | |
void | beginRedoBuffer (void) |
This begins a redoing of the buffer. | |
void | clear (void) |
Clears all the readings in the range buffer. | |
void | clearOlderThan (int milliSeconds) |
Resets the readings older than this many seconds. | |
void | clearOlderThanSeconds (int seconds) |
Resets the readings older than this many seconds. | |
void | endInvalidationSweep (void) |
Ends the invalidation sweep. | |
void | endRedoBuffer (void) |
End redoing the buffer. | |
std::list< ArPoseWithTime * > * | getBuffer (void) |
Gets a pointer to a list of readings. | |
const std::list< ArPoseWithTime * > * | getBuffer (void) const |
Gets a pointer to a list of readings. | |
std::vector< ArPoseWithTime > * | getBufferAsVector (void) |
Gets the buffer as an array instead of as a std::list. | |
double | getClosestBox (double x1, double y1, double x2, double y2, ArPose position, unsigned int maxRange, ArPose *readingPos=NULL, ArPose targetPose=ArPose(0, 0, 0)) const |
Gets the closest reading, from a rectangular box, in robot LOCAL coords. | |
double | getClosestPolar (double startAngle, double endAngle, ArPose position, unsigned int maxRange, double *angle=NULL) const |
Gets the closest reading, on a polar system. | |
ArPose | getEncoderPoseTaken () const |
Gets the encoder pose of the robot when readings were taken. | |
ArPose | getPoseTaken () const |
Gets the pose of the robot when readings were taken. | |
size_t | getSize (void) const |
Gets the size of the buffer. | |
void | invalidateReading (std::list< ArPoseWithTime * >::iterator readingIt) |
While doing an invalidation sweep a reading to the list to be invalidated. | |
void | redoReading (double x, double y) |
Add a reading to the redoing of the buffer. | |
void | reset (void) |
same as clear, but old name | |
void | setEncoderPoseTaken (ArPose p) |
Sets the pose of the robot when readings were taken. | |
void | setPoseTaken (ArPose p) |
Sets the pose of the robot when readings were taken. | |
void | setSize (size_t size) |
Sets the size of the buffer. | |
virtual | ~ArRangeBuffer () |
Destructor. | |
Static Public Member Functions | |
static double | getClosestBoxInList (double x1, double y1, double x2, double y2, ArPose position, unsigned int maxRange, ArPose *readingPos, ArPose targetPose, const std::list< ArPoseWithTime * > *buffer) |
Gets the closest reading, from an arbitrary buffer. | |
static double | getClosestPolarInList (double startAngle, double endAngle, ArPose position, unsigned int maxRange, double *angle, const std::list< ArPoseWithTime * > *buffer) |
Gets the closest reading, from an arbitrary buffer. | |
Protected Attributes | |
std::list< ArPoseWithTime * > | myBuffer |
ArPose | myBufferPose |
ArPose | myEncoderBufferPose |
bool | myHitEnd |
std::list< ArPoseWithTime * > | myInvalidBuffer |
std::list< std::list< ArPoseWithTime * >::iterator >::iterator | myInvalidIt |
std::list< std::list< ArPoseWithTime * >::iterator > | myInvalidSweepList |
std::list< ArPoseWithTime * >::iterator | myIterator |
int | myNumRedone |
ArPoseWithTime * | myReading |
std::list< ArPoseWithTime * >::iterator | myRedoIt |
std::list< ArPoseWithTime * >::reverse_iterator | myRevIterator |
size_t | mySize |
std::vector< ArPoseWithTime > | myVector |
const std::list<ArPoseWithTime *>* ArRangeBuffer::getBuffer | ( | void | ) | const |
Gets a pointer to a list of readings.
Java and Python Wrappers: Not available in Java or Python wrapper libraries.