AURobotServers  4
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
UFeatureData Class Reference

#include <ufeaturepool.h>

Inheritance diagram for UFeatureData:
Inheritance graph

Public Member Functions

bool addSegment (ULineSegment *seg, int segInt, double segVal, const char *idStr)
 
void clear ()
 
const char * getDataType ()
 
UTime getScanTime ()
 
ULineSegmentgetSegs ()
 
int getSegsCnt ()
 
int * getSegsInt ()
 
int getSegsMax ()
 
double * getSegsVal ()
 
int getTypeMax ()
 
bool isA (const char *key)
 
bool isValid ()
 
void moveLocalToOdo (UPose scanPose, UPosRot sensorPose)
 
 UFeatureData ()
 
 ~UFeatureData ()
 
- Public Member Functions inherited from ULock
bool lock ()
 
void lockInit ()
 
void post ()
 
bool tryLock ()
 
bool tryWait ()
 
 ULock ()
 
void unlock ()
 
bool wait ()
 
 ~ULock ()
 

Public Attributes

int coordinateRef
 
bool isNewest
 
UPose pose
 
UTime scanTime
 
ULineSegment segs [MAX_SEGMENTS]
 
int segsCnt
 
int segsInt [MAX_SEGMENTS]
 
char segsStr [MAX_SEGMENTS][MAX_SEG_STR_LENGTH]
 
double segsValue [MAX_SEGMENTS]
 
char type [MAX_TYPE_LENGTH]
 
bool valid
 

Static Public Attributes

static const int MAX_SEG_STR_LENGTH = 16
 
static const int MAX_SEGMENTS = 40
 
static const int MAX_TYPE_LENGTH = 5
 

Constructor & Destructor Documentation

UFeatureData::UFeatureData ( )

Constructor

References clear().

UFeatureData::~UFeatureData ( )

Destructor

Member Function Documentation

bool UFeatureData::addSegment ( ULineSegment seg,
int  segInt,
double  segVal,
const char *  idStr 
)
void UFeatureData::clear ( void  )
const char* UFeatureData::getDataType ( )
inline

Get line data type

References type.

Referenced by UNavPaint::paintFeatures(), and UNavView::paintFeatures().

UTime UFeatureData::getScanTime ( )
inline

Get segment scan time

References moveLocalToOdo(), and scanTime.

ULineSegment* UFeatureData::getSegs ( )
inline

Get line segment

References segs.

Referenced by UNavPaint::paintFeatures(), and UNavView::paintFeatures().

int UFeatureData::getSegsCnt ( )
inline

Get segment count

References clear(), and segsCnt.

Referenced by UNavPaint::paintFeatures(), and UNavView::paintFeatures().

int* UFeatureData::getSegsInt ( )
inline

Get line integer array

References segsInt.

Referenced by UNavPaint::paintFeatures(), and UNavView::paintFeatures().

int UFeatureData::getSegsMax ( )
inline

Get max number of segments allowed

References MAX_SEGMENTS.

double* UFeatureData::getSegsVal ( )
inline

Get (double) value array

References segsValue.

Referenced by UNavPaint::paintFeatures().

int UFeatureData::getTypeMax ( )
inline

Get max number of characters in type string

References MAX_TYPE_LENGTH.

Referenced by UFeaturePool::addData().

bool UFeatureData::isA ( const char *  key)
inline

Compare this type with a key string. Compare is case sensitive. Returns true if type match.

References type.

Referenced by UFeaturePool::markAsNotNew().

bool UFeatureData::isValid ( )
inline

Is scan data valid

References valid.

void UFeatureData::moveLocalToOdo ( UPose  scanPose,
UPosRot  sensorPose 
)

Member Data Documentation

int UFeatureData::coordinateRef

Is the dataset valid in robot coordinates or anothe grid system valid values are -1 = local robot coordinates 0 odometry coordinates 1 UTM coordinates 2 map coordinates

Referenced by clear(), UResLaserIfSf::handleSF(), and moveLocalToOdo().

bool UFeatureData::isNewest
const int UFeatureData::MAX_SEG_STR_LENGTH = 16
static

Max length of string value for a segment

Referenced by addSegment(), UResLaserIfSf::handleRoad(), and UResLaserIfSf::handleSF().

const int UFeatureData::MAX_SEGMENTS = 40
static

Max number of segments

Referenced by addSegment(), and getSegsMax().

const int UFeatureData::MAX_TYPE_LENGTH = 5
static

Maximum string length of segment type

Referenced by getTypeMax(), UResLaserIfSf::handlePass(), UResLaserIfSf::handleRoad(), and UResLaserIfSf::handleSF().

UPose UFeatureData::pose
UTime UFeatureData::scanTime
ULineSegment UFeatureData::segs[MAX_SEGMENTS]
int UFeatureData::segsCnt

Number of segments in array

Referenced by UFeaturePool::addData(), addSegment(), clear(), getSegsCnt(), and moveLocalToOdo().

int UFeatureData::segsInt[MAX_SEGMENTS]

Data integer for general use, e.g. for road lines (left=0, center=1 right=2)

Referenced by UFeaturePool::addData(), addSegment(), and getSegsInt().

char UFeatureData::segsStr[MAX_SEGMENTS][MAX_SEG_STR_LENGTH]
double UFeatureData::segsValue[MAX_SEGMENTS]

An extra double value associated to each feature

Referenced by UFeaturePool::addData(), addSegment(), and getSegsVal().

char UFeatureData::type[MAX_TYPE_LENGTH]

Segment type (c-string) typically holding the XML tag name

Referenced by UFeaturePool::addData(), getDataType(), UResLaserIfSf::handlePass(), UResLaserIfSf::handleRoad(), UResLaserIfSf::handleSF(), and isA().

bool UFeatureData::valid

Is the dataset valid

Referenced by UFeaturePool::addData(), clear(), and isValid().


The documentation for this class was generated from the following files: