#include <dijkstra.h>
Public Member Functions | |
bool | calculatePotentials (unsigned char *costs, double start_x, double start_y, double end_x, double end_y, int cycles, float *potential) |
DijkstraExpansion (PotentialCalculator *p_calc, int nx, int ny) | |
void | setNeutralCost (unsigned char neutral_cost) |
void | setPreciseStart (bool precise) |
void | setSize (int nx, int ny) |
Sets or resets the size of the map. | |
~DijkstraExpansion () | |
Private Member Functions | |
float | getCost (unsigned char *costs, int n) |
void | updateCell (unsigned char *costs, float *potential, int n) |
Updates the cell at index n. | |
Private Attributes | |
int * | buffer1_ |
int * | buffer2_ |
int * | buffer3_ |
int * | currentBuffer_ |
int | currentEnd_ |
int * | nextBuffer_ |
int | nextEnd_ |
int * | overBuffer_ |
int | overEnd_ |
bool * | pending_ |
bool | precise_ |
float | priorityIncrement_ |
float | threshold_ |
Definition at line 56 of file dijkstra.h.
global_planner::DijkstraExpansion::DijkstraExpansion | ( | PotentialCalculator * | p_calc, |
int | nx, | ||
int | ny | ||
) |
Definition at line 42 of file dijkstra.cpp.
Definition at line 52 of file dijkstra.cpp.
bool global_planner::DijkstraExpansion::calculatePotentials | ( | unsigned char * | costs, |
double | start_x, | ||
double | start_y, | ||
double | end_x, | ||
double | end_y, | ||
int | cycles, | ||
float * | potential | ||
) | [virtual] |
Implements global_planner::Expander.
Definition at line 80 of file dijkstra.cpp.
float global_planner::DijkstraExpansion::getCost | ( | unsigned char * | costs, |
int | n | ||
) | [inline, private] |
updates the cell at index n
Definition at line 86 of file dijkstra.h.
void global_planner::DijkstraExpansion::setNeutralCost | ( | unsigned char | neutral_cost | ) | [inline] |
Reimplemented from global_planner::Expander.
Definition at line 70 of file dijkstra.h.
void global_planner::DijkstraExpansion::setPreciseStart | ( | bool | precise | ) | [inline] |
Definition at line 75 of file dijkstra.h.
void global_planner::DijkstraExpansion::setSize | ( | int | nx, |
int | ny | ||
) | [virtual] |
Sets or resets the size of the map.
nx | The x size of the map |
ny | The y size of the map sets or resets the size of the map |
Reimplemented from global_planner::Expander.
Definition at line 63 of file dijkstra.cpp.
void global_planner::DijkstraExpansion::updateCell | ( | unsigned char * | costs, |
float * | potential, | ||
int | n | ||
) | [inline, private] |
Updates the cell at index n.
costs | The costmap |
potential | The potential array in which we are calculating |
n | The index to update |
Definition at line 192 of file dijkstra.cpp.
int* global_planner::DijkstraExpansion::buffer1_ [private] |
block priority buffers
Definition at line 98 of file dijkstra.h.
int * global_planner::DijkstraExpansion::buffer2_ [private] |
Definition at line 98 of file dijkstra.h.
int * global_planner::DijkstraExpansion::buffer3_ [private] |
storage buffers for priority blocks
Definition at line 98 of file dijkstra.h.
int* global_planner::DijkstraExpansion::currentBuffer_ [private] |
Definition at line 99 of file dijkstra.h.
int global_planner::DijkstraExpansion::currentEnd_ [private] |
Definition at line 100 of file dijkstra.h.
int * global_planner::DijkstraExpansion::nextBuffer_ [private] |
Definition at line 99 of file dijkstra.h.
int global_planner::DijkstraExpansion::nextEnd_ [private] |
Definition at line 100 of file dijkstra.h.
int * global_planner::DijkstraExpansion::overBuffer_ [private] |
priority buffer block ptrs
Definition at line 99 of file dijkstra.h.
int global_planner::DijkstraExpansion::overEnd_ [private] |
end points of arrays
Definition at line 100 of file dijkstra.h.
bool* global_planner::DijkstraExpansion::pending_ [private] |
pending_ cells during propagation
Definition at line 101 of file dijkstra.h.
bool global_planner::DijkstraExpansion::precise_ [private] |
Definition at line 102 of file dijkstra.h.
float global_planner::DijkstraExpansion::priorityIncrement_ [private] |
priority threshold increment
Definition at line 106 of file dijkstra.h.
float global_planner::DijkstraExpansion::threshold_ [private] |
block priority thresholds current threshold
Definition at line 105 of file dijkstra.h.