#include <sipp.h>

Public Member Functions | |
| EnvSIPPLattice () | |
| const envSIPPLatConfig_t * | GetEnvNavConfig () |
| virtual int | GetEnvParameter (const char *parameter) |
| void | GetEnvParms (int *size_x, int *size_y, double *startx, double *starty, double *starttheta, double *startTime, double *goalx, double *goaly, double *goaltheta, double *cellsize_m, double *timeResolution, double *nominalvel_mpersecs, double *timetoturn45degsinplace_secs, unsigned char *obsthresh, unsigned char *dyn_obs_thresh, vector< SBPL_xythetasipp_mprimitive > *motionprimitiveV) |
| virtual int | GetFromToHeuristic (int FromStateID, int ToStateID)=0 |
| virtual int | GetGoalHeuristic (int stateID)=0 |
| int | getGoalID () |
| unsigned char | GetMapCost (int x, int y) |
| virtual void | GetPreds (int TargetStateID, vector< int > *PredIDV, vector< int > *CostV)=0 |
| virtual void | GetPredsofChangedEdges (vector< nav2dcell_t > const *changedcellsV, vector< int > *preds_of_changededgesIDV)=0 |
| virtual int | GetStartHeuristic (int stateID)=0 |
| int | getStartID () |
| virtual void | GetSuccs (int SourceStateID, vector< int > *SuccIDV, vector< int > *CostV) |
| virtual void | GetSuccsofChangedEdges (vector< nav2dcell_t > const *changedcellsV, vector< int > *succs_of_changededgesIDV)=0 |
| bool | InitializeEnv (int width, int height, const unsigned char *mapdata, double startx, double starty, double starttheta, double startTime, double goalx, double goaly, double goaltheta, double goaltol_x, double goaltol_y, double goaltol_theta, const vector< sbpl_2Dpt_t > &perimeterptsV, double cellsize_m, double timeResolution, double nominalvel_mpersecs, double timetoturn45degsinplace_secs, unsigned char obsthresh, unsigned char dynobsthresh, const char *sMotPrimFile) |
| bool | InitializeEnv (int width, int height, const unsigned char *mapdata, double startx, double starty, double starttheta, double startTime, double goalx, double goaly, double goaltheta, double goaltol_x, double goaltol_y, double goaltol_theta, const vector< sbpl_2Dpt_t > &perimeterptsV, double cellsize_m, double timeResolution, double nominalvel_mpersecs, double timetoturn45degsinplace_secs, unsigned char obsthresh, unsigned char dynobsthresh, const char *sMotPrimFile, vector< SBPL_DynamicObstacle_t > &dynObs) |
| bool | InitializeEnv (const char *sEnvFile) |
| bool | InitializeEnv (const char *sEnvFile, const vector< sbpl_2Dpt_t > &perimeterptsV, const char *sMotPrimFile) |
| bool | InitializeEnv (const char *sEnvFile, const vector< sbpl_2Dpt_t > &perimeterptsV, const char *sMotPrimFile, const char *sDynObsFile) |
| bool | InitializeMDPCfg (MDPConfig *MDPCfg) |
| bool | IsObstacle (int x, int y) |
| bool | IsValidConfiguration (int X, int Y, int Theta) |
| bool | IsWithinMapCell (int X, int Y) |
| bool | PoseContToDisc (double px, double py, double pth, double pt, int &ix, int &iy, int &ith, int &it) const |
| bool | PoseDiscToCont (int ix, int iy, int ith, int it, double &px, double &py, double &pth, double &pt) const |
| void | PrintEnv_Config (FILE *fOut) |
| void | PrintTimeStat (FILE *fOut) |
| virtual void | PrintVars () |
| virtual void | SetAllActionsandAllOutcomes (CMDPSTATE *state)=0 |
| virtual void | SetAllPreds (CMDPSTATE *state) |
| virtual bool | SetEnvParameter (const char *parameter, int value) |
| bool | UpdateCost (int x, int y, unsigned char newcost) |
| ~EnvSIPPLattice () | |
Protected Member Functions | |
| void | CalculateFootprintForPose (SBPL_4Dpt_t pose, vector< SBPL_4Dcell_t > *footprint) |
| bool | CheckQuant (FILE *fOut) |
| void | ComputeHeuristicValues () |
| void | ComputeReplanningData () |
| void | ComputeReplanningDataforAction (envSIPPLatAction_t *action) |
| void | CreateStartandGoalStates () |
| double | EuclideanDistance_m (int X1, int Y1, int X2, int Y2) |
| void | FillInBubble (int CenterX, int CenterY, int T, int rad) |
| void | FillInBubbleCell (int x, int y, int T) |
| void | FillInBubbleColumn (int x, int topY, int botY, int T) |
| virtual int | GetActionCost (int SourceX, int SourceY, int SourceTheta, envSIPPLatAction_t *action) |
| int | getArrivalTimeToInterval (envSIPPLatHashEntry_t *state, envSIPPLatAction_t *action, int start_t, int end_t) |
| virtual envSIPPLatHashEntry_t * | getEntryFromID (int id)=0 |
| int | getInterval (int x, int y, int t) |
| void | getIntervals (vector< int > *intervals, vector< int > *times, envSIPPLatHashEntry_t *state, envSIPPLatAction_t *action) |
| virtual void | GetSuccs (int SourceStateID, vector< int > *SuccIDV, vector< int > *CostV, vector< envSIPPLatAction_t * > *actionV=NULL)=0 |
| bool | InitGeneral (vector< SBPL_xythetasipp_mprimitive > *motionprimitiveV) |
| void | InitializeEnvConfig (vector< SBPL_xythetasipp_mprimitive > *motionprimitiveV) |
| virtual void | InitializeEnvironment ()=0 |
| void | InitializeTimelineMap () |
| void | intervals2Timeline (int x, int y) |
| bool | IsValidCell (int X, int Y) |
| void | PrecomputeActions () |
| void | PrecomputeActionswithBaseMotionPrimitive (vector< SBPL_xythetasipp_mprimitive > *motionprimitiveV) |
| void | PrecomputeActionswithCompleteMotionPrimitive (vector< SBPL_xythetasipp_mprimitive > *motionprimitiveV) |
| void | PrintHeuristicValues () |
| virtual void | ReadConfiguration (FILE *fCfg) |
| void | ReadDynamicObstacles (FILE *fDynObs) |
| int | ReadinCell (SBPL_4Dcell_t *cell, char *fIn) |
| bool | ReadinMotionPrimitive (SBPL_xythetasipp_mprimitive *pMotPrim, FILE *fIn, bool &isWaitMotion) |
| int | ReadinPose (SBPL_4Dpt_t *pose, char *fIn) |
| bool | ReadMotionPrimitives (FILE *fMotPrims) |
| void | RemoveSourceFootprint (SBPL_4Dpt_t sourcepose, vector< SBPL_4Dcell_t > *footprint) |
| void | SetConfiguration (int width, int height, const unsigned char *mapdata, int startx, int starty, int starttheta, int startTime, int goalx, int goaly, int goaltheta, double cellsize_m, double timeResolution, double nominalvel_mpersecs, double timetoturn45degsinplace_secs, const vector< sbpl_2Dpt_t > &robot_perimeterV) |
| bool | UpdateTimelineMap () |
Static Protected Member Functions | |
| static bool | pairCompare (pair< int, int > i, pair< int, int > j) |
Protected Attributes | |
| vector< SBPL_4Dcell_t > | affectedpredstatesV |
| vector< SBPL_4Dcell_t > | affectedsuccstatesV |
| bool | bNeedtoRecomputeGoalHeuristics |
| bool | bNeedtoRecomputeStartHeuristics |
| vector< SBPL_DynamicObstacle_t > | dynamicObstacles |
| EnvSIPPLat_t | envSIPPLat |
| envSIPPLatConfig_t | envSIPPLatCfg |
| SBPL2DGridSearch * | grid2Dsearchfromgoal |
| SBPL2DGridSearch * | grid2Dsearchfromstart |
| vector< vector< vector< pair < int, int > > > > | intervalMap |
| int | iteration |
| int | temporal_padding |
| vector< vector< vector< int > > > | timelineMap |
Definition at line 176 of file sipp.h.
| void EnvSIPPLattice::CalculateFootprintForPose | ( | SBPL_4Dpt_t | pose, | |
| vector< SBPL_4Dcell_t > * | footprint | |||
| ) | [protected] |
| bool EnvSIPPLattice::CheckQuant | ( | FILE * | fOut | ) | [protected] |
| void EnvSIPPLattice::ComputeHeuristicValues | ( | ) | [protected] |
| void EnvSIPPLattice::ComputeReplanningData | ( | ) | [protected] |
| void EnvSIPPLattice::ComputeReplanningDataforAction | ( | envSIPPLatAction_t * | action | ) | [protected] |
| void EnvSIPPLattice::CreateStartandGoalStates | ( | ) | [protected] |
| double EnvSIPPLattice::EuclideanDistance_m | ( | int | X1, | |
| int | Y1, | |||
| int | X2, | |||
| int | Y2 | |||
| ) | [protected] |
| void EnvSIPPLattice::FillInBubble | ( | int | CenterX, | |
| int | CenterY, | |||
| int | T, | |||
| int | rad | |||
| ) | [protected] |
| void EnvSIPPLattice::FillInBubbleCell | ( | int | x, | |
| int | y, | |||
| int | T | |||
| ) | [protected] |
| void EnvSIPPLattice::FillInBubbleColumn | ( | int | x, | |
| int | topY, | |||
| int | botY, | |||
| int | T | |||
| ) | [protected] |
| int EnvSIPPLattice::GetActionCost | ( | int | SourceX, | |
| int | SourceY, | |||
| int | SourceTheta, | |||
| envSIPPLatAction_t * | action | |||
| ) | [protected, virtual] |
| int EnvSIPPLattice::getArrivalTimeToInterval | ( | envSIPPLatHashEntry_t * | state, | |
| envSIPPLatAction_t * | action, | |||
| int | start_t, | |||
| int | end_t | |||
| ) | [protected] |
| virtual envSIPPLatHashEntry_t* EnvSIPPLattice::getEntryFromID | ( | int | id | ) | [protected, pure virtual] |
Implemented in EnvSIPPLat.
| const envSIPPLatConfig_t * EnvSIPPLattice::GetEnvNavConfig | ( | ) |
| int EnvSIPPLattice::GetEnvParameter | ( | const char * | parameter | ) | [virtual] |
| void EnvSIPPLattice::GetEnvParms | ( | int * | size_x, | |
| int * | size_y, | |||
| double * | startx, | |||
| double * | starty, | |||
| double * | starttheta, | |||
| double * | startTime, | |||
| double * | goalx, | |||
| double * | goaly, | |||
| double * | goaltheta, | |||
| double * | cellsize_m, | |||
| double * | timeResolution, | |||
| double * | nominalvel_mpersecs, | |||
| double * | timetoturn45degsinplace_secs, | |||
| unsigned char * | obsthresh, | |||
| unsigned char * | dyn_obs_thresh, | |||
| vector< SBPL_xythetasipp_mprimitive > * | motionprimitiveV | |||
| ) |
| virtual int EnvSIPPLattice::GetFromToHeuristic | ( | int | FromStateID, | |
| int | ToStateID | |||
| ) | [pure virtual] |
Implemented in EnvSIPPLat.
| virtual int EnvSIPPLattice::GetGoalHeuristic | ( | int | stateID | ) | [pure virtual] |
Implemented in EnvSIPPLat.
| int EnvSIPPLattice::getInterval | ( | int | x, | |
| int | y, | |||
| int | t | |||
| ) | [protected] |
| void EnvSIPPLattice::getIntervals | ( | vector< int > * | intervals, | |
| vector< int > * | times, | |||
| envSIPPLatHashEntry_t * | state, | |||
| envSIPPLatAction_t * | action | |||
| ) | [protected] |
| unsigned char EnvSIPPLattice::GetMapCost | ( | int | x, | |
| int | y | |||
| ) | [virtual] |
Implements DiscreteSpaceTimeInformation.
| virtual void EnvSIPPLattice::GetPreds | ( | int | TargetStateID, | |
| vector< int > * | PredIDV, | |||
| vector< int > * | CostV | |||
| ) | [pure virtual] |
Implemented in EnvSIPPLat.
| virtual void EnvSIPPLattice::GetPredsofChangedEdges | ( | vector< nav2dcell_t > const * | changedcellsV, | |
| vector< int > * | preds_of_changededgesIDV | |||
| ) | [pure virtual] |
Implemented in EnvSIPPLat.
| virtual int EnvSIPPLattice::GetStartHeuristic | ( | int | stateID | ) | [pure virtual] |
Implemented in EnvSIPPLat.
| virtual void EnvSIPPLattice::GetSuccs | ( | int | SourceStateID, | |
| vector< int > * | SuccIDV, | |||
| vector< int > * | CostV, | |||
| vector< envSIPPLatAction_t * > * | actionV = NULL | |||
| ) | [protected, pure virtual] |
Implemented in EnvSIPPLat.
| void EnvSIPPLattice::GetSuccs | ( | int | SourceStateID, | |
| vector< int > * | SuccIDV, | |||
| vector< int > * | CostV | |||
| ) | [virtual] |
Implements DiscreteSpaceTimeInformation.
| virtual void EnvSIPPLattice::GetSuccsofChangedEdges | ( | vector< nav2dcell_t > const * | changedcellsV, | |
| vector< int > * | succs_of_changededgesIDV | |||
| ) | [pure virtual] |
Implemented in EnvSIPPLat.
| bool EnvSIPPLattice::InitGeneral | ( | vector< SBPL_xythetasipp_mprimitive > * | motionprimitiveV | ) | [protected] |
| bool EnvSIPPLattice::InitializeEnv | ( | int | width, | |
| int | height, | |||
| const unsigned char * | mapdata, | |||
| double | startx, | |||
| double | starty, | |||
| double | starttheta, | |||
| double | startTime, | |||
| double | goalx, | |||
| double | goaly, | |||
| double | goaltheta, | |||
| double | goaltol_x, | |||
| double | goaltol_y, | |||
| double | goaltol_theta, | |||
| const vector< sbpl_2Dpt_t > & | perimeterptsV, | |||
| double | cellsize_m, | |||
| double | timeResolution, | |||
| double | nominalvel_mpersecs, | |||
| double | timetoturn45degsinplace_secs, | |||
| unsigned char | obsthresh, | |||
| unsigned char | dynobsthresh, | |||
| const char * | sMotPrimFile | |||
| ) |
| bool EnvSIPPLattice::InitializeEnv | ( | int | width, | |
| int | height, | |||
| const unsigned char * | mapdata, | |||
| double | startx, | |||
| double | starty, | |||
| double | starttheta, | |||
| double | startTime, | |||
| double | goalx, | |||
| double | goaly, | |||
| double | goaltheta, | |||
| double | goaltol_x, | |||
| double | goaltol_y, | |||
| double | goaltol_theta, | |||
| const vector< sbpl_2Dpt_t > & | perimeterptsV, | |||
| double | cellsize_m, | |||
| double | timeResolution, | |||
| double | nominalvel_mpersecs, | |||
| double | timetoturn45degsinplace_secs, | |||
| unsigned char | obsthresh, | |||
| unsigned char | dynobsthresh, | |||
| const char * | sMotPrimFile, | |||
| vector< SBPL_DynamicObstacle_t > & | dynObs | |||
| ) | [virtual] |
| mapdata | if mapdata is NULL the grid is initialized to all freespace |
Implements DiscreteSpaceTimeInformation.
| bool EnvSIPPLattice::InitializeEnv | ( | const char * | sEnvFile | ) |
| bool EnvSIPPLattice::InitializeEnv | ( | const char * | sEnvFile, | |
| const vector< sbpl_2Dpt_t > & | perimeterptsV, | |||
| const char * | sMotPrimFile | |||
| ) |
| bool EnvSIPPLattice::InitializeEnv | ( | const char * | sEnvFile, | |
| const vector< sbpl_2Dpt_t > & | perimeterptsV, | |||
| const char * | sMotPrimFile, | |||
| const char * | sDynObsFile | |||
| ) |
| void EnvSIPPLattice::InitializeEnvConfig | ( | vector< SBPL_xythetasipp_mprimitive > * | motionprimitiveV | ) | [protected] |
| virtual void EnvSIPPLattice::InitializeEnvironment | ( | ) | [protected, pure virtual] |
Implemented in EnvSIPPLat.
| bool EnvSIPPLattice::InitializeMDPCfg | ( | MDPConfig * | MDPCfg | ) |
| void EnvSIPPLattice::intervals2Timeline | ( | int | x, | |
| int | y | |||
| ) | [protected] |
| bool EnvSIPPLattice::IsValidCell | ( | int | X, | |
| int | Y | |||
| ) | [protected] |
| bool EnvSIPPLattice::IsValidConfiguration | ( | int | X, | |
| int | Y, | |||
| int | Theta | |||
| ) |
| static bool EnvSIPPLattice::pairCompare | ( | pair< int, int > | i, | |
| pair< int, int > | j | |||
| ) | [inline, static, protected] |
| bool EnvSIPPLattice::PoseContToDisc | ( | double | px, | |
| double | py, | |||
| double | pth, | |||
| double | pt, | |||
| int & | ix, | |||
| int & | iy, | |||
| int & | ith, | |||
| int & | it | |||
| ) | const |
Transform a pose into discretized form. The angle 'pth' is considered to be valid if it lies between -2pi and 2pi (some people will prefer 0<=pth<2pi, others -pi<pth<=pi, so this compromise should suit everyone).
| bool EnvSIPPLattice::PoseDiscToCont | ( | int | ix, | |
| int | iy, | |||
| int | ith, | |||
| int | it, | |||
| double & | px, | |||
| double & | py, | |||
| double & | pth, | |||
| double & | pt | |||
| ) | const |
Transform grid indices into a continuous pose. The computed angle lies within 0<=pth<2pi.
| void EnvSIPPLattice::PrecomputeActionswithBaseMotionPrimitive | ( | vector< SBPL_xythetasipp_mprimitive > * | motionprimitiveV | ) | [protected] |
| void EnvSIPPLattice::PrecomputeActionswithCompleteMotionPrimitive | ( | vector< SBPL_xythetasipp_mprimitive > * | motionprimitiveV | ) | [protected] |
| virtual void EnvSIPPLattice::PrintVars | ( | ) | [inline, virtual] |
Reimplemented in EnvSIPPLat.
| void EnvSIPPLattice::ReadConfiguration | ( | FILE * | fCfg | ) | [protected, virtual] |
| void EnvSIPPLattice::ReadDynamicObstacles | ( | FILE * | fDynObs | ) | [protected] |
| int EnvSIPPLattice::ReadinCell | ( | SBPL_4Dcell_t * | cell, | |
| char * | fIn | |||
| ) | [protected] |
| bool EnvSIPPLattice::ReadinMotionPrimitive | ( | SBPL_xythetasipp_mprimitive * | pMotPrim, | |
| FILE * | fIn, | |||
| bool & | isWaitMotion | |||
| ) | [protected] |
| int EnvSIPPLattice::ReadinPose | ( | SBPL_4Dpt_t * | pose, | |
| char * | fIn | |||
| ) | [protected] |
| bool EnvSIPPLattice::ReadMotionPrimitives | ( | FILE * | fMotPrims | ) | [protected] |
| void EnvSIPPLattice::RemoveSourceFootprint | ( | SBPL_4Dpt_t | sourcepose, | |
| vector< SBPL_4Dcell_t > * | footprint | |||
| ) | [protected] |
| virtual void EnvSIPPLattice::SetAllActionsandAllOutcomes | ( | CMDPSTATE * | state | ) | [pure virtual] |
Implemented in EnvSIPPLat.
| void EnvSIPPLattice::SetAllPreds | ( | CMDPSTATE * | state | ) | [virtual] |
| void EnvSIPPLattice::SetConfiguration | ( | int | width, | |
| int | height, | |||
| const unsigned char * | mapdata, | |||
| int | startx, | |||
| int | starty, | |||
| int | starttheta, | |||
| int | startTime, | |||
| int | goalx, | |||
| int | goaly, | |||
| int | goaltheta, | |||
| double | cellsize_m, | |||
| double | timeResolution, | |||
| double | nominalvel_mpersecs, | |||
| double | timetoturn45degsinplace_secs, | |||
| const vector< sbpl_2Dpt_t > & | robot_perimeterV | |||
| ) | [protected] |
| bool EnvSIPPLattice::SetEnvParameter | ( | const char * | parameter, | |
| int | value | |||
| ) | [virtual] |
| bool EnvSIPPLattice::UpdateCost | ( | int | x, | |
| int | y, | |||
| unsigned char | newcost | |||
| ) | [virtual] |
Implements DiscreteSpaceTimeInformation.
vector<SBPL_4Dcell_t> EnvSIPPLattice::affectedpredstatesV [protected] |
vector<SBPL_4Dcell_t> EnvSIPPLattice::affectedsuccstatesV [protected] |
bool EnvSIPPLattice::bNeedtoRecomputeGoalHeuristics [protected] |
bool EnvSIPPLattice::bNeedtoRecomputeStartHeuristics [protected] |
vector<SBPL_DynamicObstacle_t> EnvSIPPLattice::dynamicObstacles [protected] |
EnvSIPPLat_t EnvSIPPLattice::envSIPPLat [protected] |
envSIPPLatConfig_t EnvSIPPLattice::envSIPPLatCfg [protected] |
SBPL2DGridSearch* EnvSIPPLattice::grid2Dsearchfromgoal [protected] |
SBPL2DGridSearch* EnvSIPPLattice::grid2Dsearchfromstart [protected] |
vector< vector< vector< pair<int,int> > > > EnvSIPPLattice::intervalMap [protected] |
int EnvSIPPLattice::iteration [protected] |
int EnvSIPPLattice::temporal_padding [protected] |
vector< vector< vector<int> > > EnvSIPPLattice::timelineMap [protected] |