|
virtual bool | addExtraToFileParser (ArFileParser *fileParser, bool isAddLineHandler) |
| Adds the handlers for the data points and lines keywords to the given file parser. More...
|
|
virtual bool | addToFileParser (ArFileParser *fileParser) |
|
| ArMapScan (const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
| Constructor. More...
|
|
| ArMapScan (const ArMapScan &other) |
| Copy constructor.
|
|
virtual void | clear () |
| Resets the scan data, clearing all points and line segments.
|
|
virtual const char * | getDisplayString (const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
|
virtual ArPose | getLineMaxPose (const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
|
virtual ArPose | getLineMinPose (const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
|
virtual std::vector< ArLineSegment > * | getLines (const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
|
virtual const char * | getLinesKeyword () const |
| Returns the keyword that designates the scan's data lines in the map file.
|
|
virtual ArPose | getMaxPose (const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
|
virtual ArPose | getMinPose (const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
|
virtual int | getNumLines (const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
|
virtual int | getNumPoints (const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
|
virtual std::vector< ArPose > * | getPoints (const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
|
virtual const char * | getPointsKeyword () const |
| Returns the keyword that designates the scan's data points in the map file.
|
|
virtual int | getResolution (const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
|
virtual const char * | getScanType () const |
| Returns the unique string identifier of the associated scan type.
|
|
virtual ArTime | getTimeChanged () const |
| Returns the time at which the scan data was last changed.
|
|
virtual bool | isSortedLines (const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) const |
|
virtual bool | isSortedPoints (const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) const |
|
virtual void | loadDataPoint (double x, double y) |
|
virtual void | loadLineSegment (double x1, double y1, double x2, double y2) |
|
ArMapScan & | operator= (const ArMapScan &other) |
| Assignment operator.
|
|
virtual bool | readDataPoint (char *line) |
|
virtual bool | readLineSegment (char *line) |
|
virtual bool | remExtraFromFileParser (ArFileParser *fileParser) |
| Removes the handlers for the data points and lines keywords from the given file parser.
|
|
virtual bool | remFromFileParser (ArFileParser *fileParser) |
|
virtual void | setLines (const std::vector< ArLineSegment > *lines, const char *scanType=ARMAP_DEFAULT_SCAN_TYPE, bool isSortedLines=false, ArMapChangeDetails *changeDetails=NULL) |
|
virtual void | setPoints (const std::vector< ArPose > *points, const char *scanType=ARMAP_DEFAULT_SCAN_TYPE, bool isSortedPoints=false, ArMapChangeDetails *changeDetails=NULL) |
|
virtual void | setResolution (int resolution, const char *scanType=ARMAP_DEFAULT_SCAN_TYPE, ArMapChangeDetails *changeDetails=NULL) |
|
virtual bool | unite (ArMapScan *other, bool isIncludeDataPointsAndLines=false) |
| Combines the given other scan with this one. More...
|
|
virtual void | writeLinesToFunctor (ArFunctor2< int, std::vector< ArLineSegment > *> *functor, const char *scanType=ARMAP_DEFAULT_SCAN_TYPE, ArFunctor1< const char *> *keywordFunctor=NULL) |
|
virtual void | writeLinesToFunctor (ArFunctor1< const char *> *functor, const char *endOfLineChars, const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
| Writes the scan's data lines (and introductory keyword) to the given functor.
|
|
virtual void | writePointsToFunctor (ArFunctor2< int, std::vector< ArPose > *> *functor, const char *scanType=ARMAP_DEFAULT_SCAN_TYPE, ArFunctor1< const char *> *keywordFunctor=NULL) |
|
virtual void | writePointsToFunctor (ArFunctor1< const char *> *functor, const char *endOfLineChars, const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
| Writes the scan's data points (and introductory keyword) to the given functor.
|
|
virtual void | writeScanToFunctor (ArFunctor1< const char *> *functor, const char *endOfLineChars, const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
|
virtual | ~ArMapScan () |
| Destructor.
|
|
| ArMapScanInterface () |
| Default constructor.
|
|
virtual | ~ArMapScanInterface () |
| Destructor.
|
|
|
bool | addHandlerToFileParser (ArFileParser *fileParser, const char *keyword, ArRetFunctor1< bool, ArArgumentBuilder *> *handler) |
| Adds the specified argument handler to the given file parser.
|
|
const char * | getKeywordPrefix () const |
| Returns the keyword prefix for this scan type.
|
|
bool | handleDisplayString (ArArgumentBuilder *arg) |
| Callback to handle the Display string.
|
|
bool | handleIsSortedLines (ArArgumentBuilder *arg) |
|
bool | handleIsSortedPoints (ArArgumentBuilder *arg) |
|
bool | handleLine (ArArgumentBuilder *arg) |
|
bool | handleLineMaxPos (ArArgumentBuilder *arg) |
|
bool | handleLineMinPos (ArArgumentBuilder *arg) |
|
bool | handleMaxPos (ArArgumentBuilder *arg) |
|
bool | handleMinPos (ArArgumentBuilder *arg) |
|
bool | handleNumLines (ArArgumentBuilder *arg) |
|
bool | handleNumPoints (ArArgumentBuilder *arg) |
|
bool | handlePoint (ArArgumentBuilder *arg) |
|
bool | handleResolution (ArArgumentBuilder *arg) |
|
bool | parseNumber (char *line, size_t lineLen, size_t *charCountOut, int *numOut) const |
| Parses an integer from the given text line.
|
|
bool | parsePose (ArArgumentBuilder *arg, const char *keyword, ArPose *poseOut) |
| Parses a pose from the given arguments.
|
|
bool | parseWhitespace (char *line, size_t lineLen, size_t *charCountOut) const |
| Parses whitespace from the given text line.
|
|
virtual void | writeLinesToFunctor (ArFunctor1< const char *> *functor, const std::vector< ArLineSegment > &lines, const char *endOfLineChars, const char *scanType=ARMAP_DEFAULT_SCAN_TYPE) |
| Writes the list of data lines to the given functor. More...
|
|
|
std::string | myDisplayString |
| Displayable text for this scan type.
|
|
ArRetFunctor1C< bool, ArMapScan, ArArgumentBuilder * > | myDisplayStringCB |
| Callback to parse the displayable text for this scan type.
|
|
bool | myIsSortedLines |
| Whether the data lines in myLines have been sorted in ascending order.
|
|
ArRetFunctor1C< bool, ArMapScan, ArArgumentBuilder * > | myIsSortedLinesCB |
| Callback to parse whether the lines in the map file have been sorted.
|
|
bool | myIsSortedPoints |
| Whether the data points in myPoints have been sorted in ascending order.
|
|
ArRetFunctor1C< bool, ArMapScan, ArArgumentBuilder * > | myIsSortedPointsCB |
| Callback to parse whether the points in the map file have been sorted.
|
|
bool | myIsSummaryScan |
| Whether this is a special summary of the other scans.
|
|
std::string | myKeywordPrefix |
| The prefix prepended to the map file keywords (e.g. DATA and LINES)
|
|
ArRetFunctor1C< bool, ArMapScan, ArArgumentBuilder * > | myLineCB |
| Callback to parse a data line.
|
|
ArPose | myLineMax |
| Maximum x/y values of all of the data lines in the scan.
|
|
ArRetFunctor1C< bool, ArMapScan, ArArgumentBuilder * > | myLineMaxPosCB |
| Callback to parse the maximum line pose from the map file.
|
|
ArPose | myLineMin |
| Minimum x/y values of all of the data lines in the scan.
|
|
ArRetFunctor1C< bool, ArMapScan, ArArgumentBuilder * > | myLineMinPosCB |
| Callback to parse the minimum line pose from the map file.
|
|
std::vector< ArLineSegment > | myLines |
| List of data lines contained in this scan data.
|
|
std::string | myLinesKeyword |
| The keyword that designates this scan's data lines in the map file.
|
|
std::string | myLogPrefix |
| The prefix prepended to the output log file messages.
|
|
ArPose | myMax |
| Maximum x/y values of all of the data points in the scan.
|
|
ArRetFunctor1C< bool, ArMapScan, ArArgumentBuilder * > | myMaxPosCB |
| Callback to parse the maximum pose from the map file.
|
|
ArPose | myMin |
| Minimum x/y values of all of the data points in the scan.
|
|
ArRetFunctor1C< bool, ArMapScan, ArArgumentBuilder * > | myMinPosCB |
| Callback to parse the minimum poise from the map file.
|
|
int | myNumLines |
| Number of data lines in the scan.
|
|
ArRetFunctor1C< bool, ArMapScan, ArArgumentBuilder * > | myNumLinesCB |
| Callback to parse the number of data lines in the map file.
|
|
int | myNumPoints |
| Number of data points in the scan.
|
|
ArRetFunctor1C< bool, ArMapScan, ArArgumentBuilder * > | myNumPointsCB |
| Callback to parse the number of data points in the map file.
|
|
ArRetFunctor1C< bool, ArMapScan, ArArgumentBuilder * > | myPointCB |
| Callback to parse a data point.
|
|
std::vector< ArPose > | myPoints |
| List of data points contained in this scan data.
|
|
std::string | myPointsKeyword |
| The keyword that designates this scan's data points in the map file.
|
|
int | myResolution |
| Resolution of the data points (in mm).
|
|
ArRetFunctor1C< bool, ArMapScan, ArArgumentBuilder * > | myResolutionCB |
| Callback to parse the resolution in the map file.
|
|
std::string | myScanType |
| The unique string identifier of this scan type.
|
|
ArTime | myTimeChanged |
| Time that this scan data was last modified.
|
|
The map data related to the sensable obstacles in the environment.
ArMapScan encapsulates the data for a particular sensor that is generated during the scanning process (i.e. during the creation of a .2d file). The class's primary attributes are the points and line segments that were detected during the scan. It contains methods to get and set these coordinates, and to read and write the data from and to a file.
The scanType
parameters identify the sensor used for scanning. The parameter is used in the constructor, but it is generally disregarded in the other methods. (The method signatures are defined in ArMapScanInterface, which is also implemented by ArMap. The map provides access to the scan data for all of the sensors – and therefore uses the scanType
parameters. This interface was chosen in order to maintain backwards compatibility with the original map.)
If the scanType is specified, then it is used as a prefix to the DATA and LINES tags that are contained in the map file.