AURobotServers  4
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
UResAvoid Class Reference

#include <uresavoid.h>

Inheritance diagram for UResAvoid:
Inheritance graph

Public Member Functions

void closeLogAvoid ()
 
const char * codeXmlRobotFront (char *buff, const int buffCnt)
 
UManSeqfindPathToHere (UPose exitPose, double endVel, bool exitPoseRel, UTime *tod, bool directTestOnly)
 
UTime getCalcTime ()
 
UPose getCurrentPose ()
 
const char * getLogAvoidFileName ()
 
UAvoidPathPoolgetPathPool ()
 
bool isLogAvoidOpen ()
 
virtual bool methodCall (const char *name, const char *paramOrder, char **strings, const double *doubles, double *value, UDataBase **returnStruct=NULL, int *returnStructCnt=NULL)
 
virtual bool methodCallV (const char *name, const char *paramOrder, UVariable *params[], UDataBase **returnStruct, int *returnStructCnt)
 
bool openLogAvoid ()
 
virtual const char * print (const char *preString, char *buff, int buffCnt)
 
bool setResource (UResBase *resource, bool remove)
 
virtual const char * snprint (const char *preString, char *buff, int buffCnt)
 
 UResAvoid ()
 
void UResAvoidInit ()
 
bool useRev2 ()
 
virtual ~UResAvoid ()
 
- Public Member Functions inherited from UResVarPool
int addMethod (const char *formalName, const char *paramTypes, const char *comment)
 
int addMethodV (const char *formalName, const char *paramTypes, const char *comment)
 
UVarPooladdStruct (const char *name, const char *comment, bool copy=false)
 
UVariableaddVar (const char *name, const double initialValue, const char *type, const char *comment)
 
UVariableaddVar (const char *name, const char *initialValue, const char *type, const char *comment)
 
UVariableaddVarA (const char *name, const char *initialValue, const char *type, const char *comment)
 
bool callGlobal (const char *name, const char *paramOrder, char **strings, const double *doubles, double *value, UDataBase **returnStruct, int *returnStructCnt)
 
bool callGlobalV (const char *name, const char *paramOrder, UVariable **params, UDataBase **returnStruct, int *returnStructCnt)
 Call a method from the root var pool scope It may be in the structure direct (no '.') or in any sub-structure that the 'name.subname' indicate. More...
 
bool callLocal (const char *name, const char *paramOrder, char **strings, const double *doubles, double *value, UDataBase **returnStruct, int *returnStructCnt)
 
bool callVS (const char *function, const char *stringParam)
 
int callVSCD (const char *function, const char *strPar, UDataBase *data, int cooSys)
 
void createBaseVar ()
 
virtual bool createVarSpace (const int varCnt, const int structCnt, const int methCnt, const char *note, bool copy=false)
 
bool getGlobalString (const char *name, const char **value)
 
bool getGlobalValue (const char *name, double *value)
 
bool getGlobalValue (const char *name, const char **value)
 
bool getGlobalValue (const char *name, bool *value)
 
bool getGlobalValue (const char *name, UTime *value)
 
bool getLocalValue (const char *name, double *value)
 get a value in this variable tree More...
 
bool getLocalValue (const char *name, bool *value)
 
bool getLocalValue (const char *name, UTime *value)
 
double getLocalValue (int idx)
 
UPosition getLocalValue3D (int idx)
 
UPosRot getLocalValue6D (int idx)
 
bool getLocalValueBool (int idx)
 
int getLocalValueInt (int idx)
 
UTime getLocalValueTime (int idx)
 
const char * getLogFileName ()
 
const char * getVarDescription (int idx)
 
UVarCalcgetVarPool ()
 
virtual bool gotAllResources (char *missingThese, int missingTheseCnt)
 
bool isLogFileOpen ()
 
bool isLogFileOpen (const char *structName)
 
bool isVarPoolUpdated (int lastCnt, int *newCnt)
 
void logFileClose ()
 
bool logFileOpen ()
 
void logFileStart (const char *structName, bool open)
 
bool setGlobalVar (const char *name, const double value, bool mayAdd)
 Assigns a value to a variable. The variable may be a part of a structure. More...
 
bool setLocalVar (int idx, double value, const int element)
 
bool setLocalVar (const char *name, const double value, bool mayAdd)
 Assigns a value to a variable. The variable may be a part of a structure. More...
 
bool setLocalVar3D (int idx, UPosition *value)
 
bool setLocalVar6D (int idx, UPosRot *value)
 
bool setLocalVarAdd (int idx, double value, const int element)
 
bool setLocalVarPose (int idx, UPose *value)
 
void setVarPool (UVarCalc *sharedVarPool)
 
int updateQTvars (int structIdx)
 
 UResVarPool ()
 
virtual ~UResVarPool ()
 
- Public Member Functions inherited from UResBase
void createReplayVar (UVarPool *pool)
 
virtual void createResources ()
 
UCmdExegetCorePointer ()
 
char * getLogFileName (char *fn, const int fnCnt)
 
int getResFuncIdx ()
 
const char * getResID ()
 
int getResVersion ()
 
bool isA (const char *idStr)
 
bool isAlsoA (const char *id)
 
virtual void print (const char *preString)
 
virtual void saveSettings ()
 
void setCorePointer (UCmdExe *serverCore)
 
void setResFuncIdx (int idx)
 
virtual void setResID (const char *id, const int version)
 
virtual void stop (bool)
 
virtual void updateReplayStatus ()
 
 UResBase ()
 
virtual ~UResBase ()
 
- Public Member Functions inherited from UReplay
void addChild (UReplay *child)
 
virtual bool decodeReplayLine (char *)
 
char * getLogFileName (char *fn, const int fnCnt)
 
char * getReplayFileName (char *fn, const int fnCnt)
 
int getReplayLogLine ()
 
bool isReplay ()
 
bool isReplayFileOpen ()
 
void removeChild (UReplay *child)
 
virtual void replayAdvanceTime (UTime untilTime)
 
void replaySetBaseFileName (const char *name, const char *preName="")
 
void replaySetFileName (const char *name)
 
virtual bool replayStep ()
 
int replayStep (int steps)
 
virtual bool replayToTime (UTime untilTime)
 
void setParent (UReplay *parent)
 
bool setReplay (bool value)
 
 UReplay ()
 
virtual ~UReplay ()
 
- Public Member Functions inherited from ULock
bool lock ()
 
void lockInit ()
 
void post ()
 
bool tryLock ()
 
bool tryWait ()
 
 ULock ()
 
void unlock ()
 
bool wait ()
 
 ~ULock ()
 
- Public Member Functions inherited from UVarMethodImplement
virtual ~UVarMethodImplement ()
 

Static Public Member Functions

static const char * getResClassID ()
 
- Static Public Member Functions inherited from UResVarPool
static const char * getResClassID ()
 

Protected Member Functions

void createBaseVar ()
 
- Protected Member Functions inherited from UResVarPool
void setDescription (const char *note, bool copy=false)
 
- Protected Member Functions inherited from UResBase
UResBasegetStaticResource (const char *resName, bool mayCreate, bool staticOnly=true)
 get a pointer to a static resource. More...
 

Protected Attributes

UResVarPoolglobVar
 
char logAvoidName [MAX_FILENAME_LENGTH]
 
UResPoseHistmapPose
 
UReacObstGrps obsts
 
UAvoidPathPoolpaths
 
UResPoseHistposeHist
 
UReacRoadLines roadLines
 
UVariablevarAcceptSolution
 accept mid-point solution after this number of calculations. More...
 
UVariablevarCalcTime
 debugDump flag, when true a full data dump (or as much as planned in code) is dumped to logfile. More...
 
UVariablevarClearenceDesired
 desired clearence to obstacles (new method) More...
 
UVariablevarClearenceMinimum
 minimum allowed clearence to obstacles (new method) More...
 
UVariablevarCrashTest
 When set to true more debug info is returned to client and logged. More...
 
UVariablevarDebugDump
 debugDump flag, when true a full data dump (or as much as planned in code) is dumped to logfile. More...
 
UVariablevarDriveonGA
 drivon angle gain parameter More...
 
UVariablevarDriveonGD
 driveon distance gain parameter More...
 
UVariablevarFollowLineOnLastPose
 should destination pose line be used in a line drive as soon as possible More...
 
UVariablevarForwardAngle
 allow forward solutions only - positive or negative (radians) More...
 
UVariablevarFrontLeft
 
UVariablevarFrontRight
 
UVariablevarIgnoreCloseObst
 debug maximum of allowed close obstacles that are to be ignored More...
 
UVariablevarIgnoreObstacles
 flag to set if obstacles (all) are to be ignored - path to bosition only) More...
 
UVariablevarMakeAvoidObstPolygon
 debug make also generated obstacles to polygons More...
 
UVariablevarMakeCellCostLine
 debug flag - make polyline from the cell path cost lines More...
 
UVariablevarMakeCellPolygon
 debug flag - makeCellPolygon - 0 = no cells, 1= all cells 2=traversed cells More...
 
UVariablevarMakeCellPolygonMaxY
 debug limit of polygon size (for display only) More...
 
UVariablevarMakeCellVertexLine
 debug flag - make polyline from vertex-points from current to target position More...
 
UVariablevarMakeFootprintPolygon
 debug flag - makeCellPolygon - boolean More...
 
UVariablevarManCnt
 
UVariablevarMaxAcc
 maximum lateral acceleration More...
 
UVariablevarMaxAvoidLoops
 maximum number of loops for midPose search More...
 
UVariablevarMaxNestedSpawns
 number of nested levels More...
 
UVariablevarMaxOG
 number of obstacle groups used for obstacle avoidance More...
 
UVariablevarMaxSpawnCount
 maximum spawn count limit More...
 
UVariablevarMaxTangentDepth
 maximumber of tantents to search for the visibility graph More...
 
UVariablevarMaxTangentToMan
 Maximum number of tangent sequences testes, if first sequences fails in manoeuvre generation. More...
 
UVariablevarMaxTurnAcc
 maximum acceleration in turns More...
 
UVariablevarMinTurnRadius
 minimum allowed turn radius More...
 
UVariablevarObstMinDist
 (old method - (desired) minimum distance to obstacle More...
 
UVariablevarObstMinMinDist
 (old method - absolute minimum distance to obstacle More...
 
UVariablevarRev2
 
UVariablevarRev2cell
 
UVariablevarSerial
 
UVariablevarUseAnyResult
 debug flag - use any solution More...
 
UVariablevarUseDriveon
 Use drivon manoeuver planning. More...
 
- Protected Attributes inherited from UResBase
int resFuncIdx
 
char resID [MAX_RESOURCE_ID_LENGTH]
 
char resIsAlso [MAX_RESOURCE_ISALSO_LENGTH]
 
int resVersion
 
- Protected Attributes inherited from UReplay
bool replay
 
FILE * replayFile
 
char replayFileName [REPLAY_FILE_NAME_LENGTH]
 replay filename More...
 
char replayLine [MAX_LOG_LINE_LENGTH]
 
int replayLogLine
 
UReplayreplayParent
 
UTime replayTimeNext
 

Private Member Functions

void copyAvoidObstacles (UAvoidPath2 *resAP)
 
void copyCellPolys (UAvoidCellGraph *avcg)
 
void copyFootprintPolys (UAvoidPath2 *resAP, int oldCnt)
 

Private Attributes

char sBuff [MSL]
 

Static Private Attributes

static const int MSL = 10000
 

Additional Inherited Members

- Public Attributes inherited from UReplay
bool replayTimeAdvancePending
 
UTime replayTimeNow
 
- Static Protected Attributes inherited from UReplay
static const int MAX_LOG_LINE_LENGTH = 10000
 
static const int REPLAY_FILE_NAME_LENGTH = 264
 max length of replay filename More...
 

Detailed Description

This is the shared resource class. It must enherit from the resource base class (or one of its decendent) as shown.

Author
Christian Andersen

Constructor & Destructor Documentation

UResAvoid::UResAvoid ( )
inline
UResAvoid::~UResAvoid ( )
virtual

Destructor

References paths.

Referenced by UResAvoid().

Member Function Documentation

void UResAvoid::closeLogAvoid ( )
const char * UResAvoid::codeXmlRobotFront ( char *  buff,
const int  buffCnt 
)

code front-left and front-right points as an xmlPose

Parameters
buffis the buffer to deliver result into.
buffCntis the size of the bugger in bytes.
Returns
a pointer to the buffer.

References UPose::codeXml(), UVariable::get3D(), UResPoseHist::getNewest(), UPose::getPoseToMapPose(), poseHist, varFrontLeft, varFrontRight, UPosition::x, and UPosition::y.

Referenced by getCurrentPose(), and UFunctionAvoid::sendCurrentAvoidPath().

void UResAvoid::copyAvoidObstacles ( UAvoidPath2 resAP)
private
void UResAvoid::copyCellPolys ( UAvoidCellGraph avcg)
private
void UResAvoid::copyFootprintPolys ( UAvoidPath2 resAP,
int  oldCnt 
)
private

Copy footprint polygons to the polygon resource for debug purposes.

Parameters
resAPis the path definition with the footprint polygons.
oldCntis the prevoius number of polygons (that are to be deleted)

References UResVarPool::callGlobalV(), UVariable::getBool(), UResBase::getStaticResource(), MSL, UAvoidPath2::polys, UAvoidPath2::polysCnt, UVariable::setDouble(), and UVariable::setValues().

Referenced by findPathToHere(), and getCalcTime().

void UResAvoid::createBaseVar ( )
protected
UManSeq * UResAvoid::findPathToHere ( UPose  exitPose,
double  endVel,
bool  exitPoseRel,
UTime tod,
bool  directTestOnly 
)

Find path to this destination - and this desired (maximum) end velocity. Return the time of calculation (pose time) in 'tod'. NB! remember to call result->unlock() when no manoeuvre is longer needed.

Parameters
directTestOnlyto test direct path
Returns
man sequence if path is available and usable

References UAvoidParams::acceptAfterSolution, UReacRoadLines::addLeftLine(), UReacObstGrps::addObstGrp(), UReacRoadLines::addRightLine(), UAvoidPath2::avCellGraph, UAvoidParams::avoidSerial, UResVarPool::callGlobal(), UAvoidParams::cellRev2, UReacRoadLines::clear(), UReacObstGrps::clear(), copyAvoidObstacles(), copyCellPolys(), copyFootprintPolys(), UAvoidParams::doCrashTest, UAvoidParams::driveonGA, UAvoidParams::driveonGD, UAvoidPathPool::findPathToHere(), UAvoidPathPool::findPathToHere2(), UAvoidParams::followLineLastPose, UAvoidParams::forwardOnly, UAvoidParams::frontLeft, UAvoidParams::frontRight, UVariable::get3D(), UVariable::getBool(), UVariable::getDouble(), UResVarPool::getGlobalValue(), UReacObstGrps::getGroup(), UReacObstGrps::getGroupsCnt(), UVariable::getInt(), UAvoidPath2::getManSeq(), UReactivePath::getManSeq(), UAvoidParams::getMinTurnRad(), UResPoseHist::getNewest(), UObstacleGroup::getObstsCnt(), UAvoidPathPool::getParamStruct(), UObstacleGroup::getPoseLast(), UTime::getSec(), UObstacleGroup::getSerial(), UAvoidPathPool::getValidAvoidPathsCnt(), UAvoidPathPool::getValidPathsCnt(), UVariable::getValued(), UResVarPool::getVarPool(), globVar, UAvoidParams::ignoreCloseObstAfter, ULogFile::isOpen(), UAvoidPath2::isValid(), ULock::lock(), UAvoidParams::logAvoid, UAvoidParams::makeCellPolygon, UAvoidParams::makeCellPolygonMaxY, UAvoidParams::makeFootprintPolygon, UAvoidParams::maxAcceleration, UAvoidParams::maxAvoidLoops, UAvoidParams::maxNestedLevels, UAvoidParams::maxSpawnCnt, UAvoidParams::maxTangentDepth, UAvoidParams::maxTangentToMan, UAvoidParams::maxTurnAcceleration, mini(), UAvoidParams::minTurnRadius, UAvoidParams::obstClearanceDesired, UAvoidParams::obstClearanceMinimum, UAvoidParams::obstMinDist, UAvoidParams::obstMinMinDist, obsts, UAvoidPath2::oldFootCnt, UAvoidPathPool::par, paths, poseHist, roadLines, UAvoidParams::scanSerial, UPoseV::set(), UVariable::setInt(), UTime::setTime(), UVariable::setTime(), UAvoidParams::startPose, UPoseTime::t, ULogFile::toLog(), ULock::unlock(), UAvoidParams::useAnyResult, UAvoidParams::useDriveon, useRev2(), varAcceptSolution, varCalcTime, varClearenceDesired, varClearenceMinimum, varCrashTest, varDebugDump, varDriveonGA, varDriveonGD, varFollowLineOnLastPose, varForwardAngle, varFrontLeft, varFrontRight, varIgnoreCloseObst, varIgnoreObstacles, varMakeAvoidObstPolygon, varMakeCellPolygon, varMakeCellPolygonMaxY, varMakeFootprintPolygon, varManCnt, varMaxAcc, varMaxAvoidLoops, varMaxNestedSpawns, varMaxOG, varMaxSpawnCount, varMaxTangentDepth, varMaxTangentToMan, varMaxTurnAcc, varMinTurnRadius, varObstMinDist, varObstMinMinDist, varRev2, varRev2cell, varSerial, varUseAnyResult, and varUseDriveon.

Referenced by getLogAvoidFileName(), UFunctionAvoid::handleAvoid(), methodCall(), and methodCallV().

UTime UResAvoid::getCalcTime ( )
inline
UPose UResAvoid::getCurrentPose ( )
inline

Get current pose from pose-history

References codeXmlRobotFront(), UResPoseHist::getNewest(), and poseHist.

const char* UResAvoid::getLogAvoidFileName ( )
inline

Get the logfile name

References findPathToHere(), and logAvoidName.

Referenced by UFunctionAvoid::handleAvoid().

UAvoidPathPool* UResAvoid::getPathPool ( )
inline
static const char* UResAvoid::getResClassID ( )
inlinestatic

Fixed name of this resource type

References print().

Referenced by UResAvoid().

bool UResAvoid::isLogAvoidOpen ( )
inline
bool UResAvoid::methodCall ( const char *  name,
const char *  paramOrder,
char **  strings,
const double *  doubles,
double *  value,
UDataBase **  returnStruct = NULL,
int *  returnStructCnt = NULL 
)
virtual

The varPool has methods, and a call to one of these are needed. Do the call now and return (a double sized) result in 'value'. Return true if the method call is allowed. "getAvoidPath", "ddd": Find path to exit position. The found route is returned in the 'returnStruct' pointer array. The pointers in the array will be redirected to the static set of manoeuvre buffers in the avoid function, i.e. the result should be used before the next call to 'getAvoidPath'.

Reimplemented from UResVarPool.

References findPathToHere(), UManSeq::getMaxTurnArc(), UResPoseHist::getNewest(), UPose::h, ULogFile::isOpen(), limitToPi(), UAvoidParams::logAvoid, MSL, UAvoidPathPool::par, paths, poseHist, UManSeq::print(), sBuff, UPose::set(), and ULogFile::toLog().

Referenced by getPathPool().

bool UResAvoid::methodCallV ( const char *  name,
const char *  paramOrder,
UVariable params[],
UDataBase **  returnStruct,
int *  returnStructCnt 
)
virtual

The varPool has methods, and a call to one of these are requested. The parameters hold the requested method name, parameter list, parameters, and an array of pointers for the result. All parameters and results are of type UVariable.

Parameters
nameis the method name (within this variable pool)
paramOrderis the parameter sequence d=double structure or array
paramsis the array of UVariable pointers with the values
returnStructis an array of pointers (to UDataBase structures, either UVariable or another class based on UDataBase), may be NULL pointers or pointers to actual result variables or classes - as specified in the method definition.
returnStructCntis the actual number of returned structure pointers.
Returns
true if the method is handled (recognized)

Reimplemented from UVarMethodImplement.

References UManSeq::copy(), findPathToHere(), UManSeq::getMaxTurnArc(), UResPoseHist::getNewest(), UVariable::getPose(), UPose::h, UResBase::isA(), ULogFile::isOpen(), UAvoidParams::logAvoid, MSL, UAvoidPathPool::par, paths, poseHist, UManSeq::print(), ULogFile::toLog(), ULock::unlock(), UPose::x, and UPose::y.

Referenced by getPathPool().

bool UResAvoid::openLogAvoid ( )

Open logfile - the name is always avoid.log and is placed in the dataPath. The full name is available in 'logAvoidName'.

References ULogFile::closeLog(), ULogFile::isOpen(), UAvoidParams::logAvoid, ULogFile::openLog(), UAvoidPathPool::par, and paths.

Referenced by UFunctionAvoid::handleAvoid(), and snprint().

const char * UResAvoid::print ( const char *  preString,
char *  buff,
int  buffCnt 
)
virtual

Fixed varsion number for this resource type. Should follow release version, i.e. version 1.28 gives number 128. Should be incremented only when there is change to this class definition, i.e new or changed functions or variables. print status to a string buffer

Reimplemented from UResVarPool.

Referenced by getResClassID(), and snprint().

bool UResAvoid::setResource ( UResBase resource,
bool  remove 
)
virtual

The server will offer a resource pointer by this call. If the resource is used, please return true.

Reimplemented from UResVarPool.

References UResPoseHist::getMapPoseID(), UResPoseHist::getOdoPoseID(), UResVarPool::getResClassID(), globVar, UResBase::isA(), mapPose, poseHist, and UResVarPool::setResource().

Referenced by snprint().

virtual const char* UResAvoid::snprint ( const char *  preString,
char *  buff,
int  buffCnt 
)
inlinevirtual

print status to a string buffer

References openLogAvoid(), print(), and setResource().

void UResAvoid::UResAvoidInit ( )
bool UResAvoid::useRev2 ( )

Is the obstacle avoidance a rev1 or rev 2 calculation

References UVariable::getBool(), and varRev2.

Referenced by findPathToHere(), getPathPool(), and UFunctionAvoid::handleAvoid().

Member Data Documentation

UResVarPool* UResAvoid::globVar
protected

Global variables to access obstacles and road lines

Referenced by findPathToHere(), setResource(), and UResAvoidInit().

char UResAvoid::logAvoidName[MAX_FILENAME_LENGTH]
protected

Filename for obstacle avoidance logging

Referenced by getLogAvoidFileName(), and UResAvoidInit().

UResPoseHist* UResAvoid::mapPose
protected

Pose history

Referenced by setResource(), and UResAvoidInit().

const int UResAvoid::MSL = 10000
staticprivate

a common string buffer for logging

Referenced by copyAvoidObstacles(), copyCellPolys(), copyFootprintPolys(), methodCall(), and methodCallV().

UReacObstGrps UResAvoid::obsts
protected

Obstacles to avoid

Referenced by findPathToHere().

UAvoidPathPool* UResAvoid::paths
protected

Pool of alternative paths generated in responce to the obstacles and road lines

Referenced by closeLogAvoid(), findPathToHere(), getPathPool(), isLogAvoidOpen(), methodCall(), methodCallV(), openLogAvoid(), UResAvoidInit(), and ~UResAvoid().

UResPoseHist* UResAvoid::poseHist
protected
UReacRoadLines UResAvoid::roadLines
protected

Road lines to respect

Referenced by findPathToHere().

char UResAvoid::sBuff[MSL]
private

Referenced by methodCall().

UVariable* UResAvoid::varAcceptSolution
protected

accept mid-point solution after this number of calculations.

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varCalcTime
protected

debugDump flag, when true a full data dump (or as much as planned in code) is dumped to logfile.

Referenced by createBaseVar(), findPathToHere(), and getCalcTime().

UVariable* UResAvoid::varClearenceDesired
protected

desired clearence to obstacles (new method)

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varClearenceMinimum
protected

minimum allowed clearence to obstacles (new method)

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varCrashTest
protected

When set to true more debug info is returned to client and logged.

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varDebugDump
protected

debugDump flag, when true a full data dump (or as much as planned in code) is dumped to logfile.

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varDriveonGA
protected

drivon angle gain parameter

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varDriveonGD
protected

driveon distance gain parameter

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varFollowLineOnLastPose
protected

should destination pose line be used in a line drive as soon as possible

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varForwardAngle
protected

allow forward solutions only - positive or negative (radians)

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varFrontLeft
protected

Index to variable most problematic front left position

Referenced by codeXmlRobotFront(), createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varFrontRight
protected

Index to variable most problematic front right position

Referenced by codeXmlRobotFront(), createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varIgnoreCloseObst
protected

debug maximum of allowed close obstacles that are to be ignored

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varIgnoreObstacles
protected

flag to set if obstacles (all) are to be ignored - path to bosition only)

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varMakeAvoidObstPolygon
protected

debug make also generated obstacles to polygons

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varMakeCellCostLine
protected

debug flag - make polyline from the cell path cost lines

Referenced by copyCellPolys(), and createBaseVar().

UVariable* UResAvoid::varMakeCellPolygon
protected

debug flag - makeCellPolygon - 0 = no cells, 1= all cells 2=traversed cells

Referenced by copyCellPolys(), createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varMakeCellPolygonMaxY
protected

debug limit of polygon size (for display only)

Referenced by copyCellPolys(), createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varMakeCellVertexLine
protected

debug flag - make polyline from vertex-points from current to target position

Referenced by copyCellPolys(), and createBaseVar().

UVariable* UResAvoid::varMakeFootprintPolygon
protected

debug flag - makeCellPolygon - boolean

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varManCnt
protected

Index to variable with manoeuvre count

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varMaxAcc
protected

maximum lateral acceleration

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varMaxAvoidLoops
protected

maximum number of loops for midPose search

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varMaxNestedSpawns
protected

number of nested levels

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varMaxOG
protected

number of obstacle groups used for obstacle avoidance

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varMaxSpawnCount
protected

maximum spawn count limit

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varMaxTangentDepth
protected

maximumber of tantents to search for the visibility graph

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varMaxTangentToMan
protected

Maximum number of tangent sequences testes, if first sequences fails in manoeuvre generation.

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varMaxTurnAcc
protected

maximum acceleration in turns

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varMinTurnRadius
protected

minimum allowed turn radius

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varObstMinDist
protected

(old method - (desired) minimum distance to obstacle

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varObstMinMinDist
protected

(old method - absolute minimum distance to obstacle

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varRev2
protected

Index to boolean flag selecting wich obstacle avoidance method to use

Referenced by createBaseVar(), findPathToHere(), and useRev2().

UVariable* UResAvoid::varRev2cell
protected

Index to boolean flag selecting wich cell decomposition method

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varSerial
protected

Index to boolean flag selecting wich obstacle avoidance method to use

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varUseAnyResult
protected

debug flag - use any solution

Referenced by createBaseVar(), and findPathToHere().

UVariable* UResAvoid::varUseDriveon
protected

Use drivon manoeuver planning.

Referenced by createBaseVar(), and findPathToHere().


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