#include <dp.h>
Public Member Functions | |
dpNode * | BestGoal (dpNode *ref=0) |
Extract the goal with the smallest cost (if any). | |
virtual void | ClearAll () |
dpMain () | |
void | DumpAll (ostream &ost) |
void | DumpQueue (ostream &ost) |
void | DumpTrajectory (ostream &ost, dpNode *goal) |
int | NumGoals () |
int | NumNodes () |
void | SetStartNode (dpNode *_n) |
Set the initial node for search. | |
virtual | ~dpMain () |
Search functions. | |
int | Search (int _max_nodes=-1, int _max_goals=-1) |
Dijkstra or A* search: find the node with the smallest cost. | |
int | Search (double max_time) |
Dijkstra or A* search with maximum search time. | |
int | SearchDepthFirst (int _max_nodes=-1, int _max_goals=-1) |
Depth-first search. | |
int | SearchBreadthFirst (int _max_nodes=-1, int _max_goals=-1) |
Breadth-first search. | |
Protected Member Functions | |
void | add_node (dpNode *_n) |
void | add_queue (dpQueue *_q) |
int | is_best (dpNode *ref, dpNode *target) |
dpNode * | next_breadth (dpNode *refnode) |
void | remove_node (dpNode *node) |
void | remove_node_single (dpNode *node) |
void | reset () |
dpQueue * | smallest_queue () |
Protected Attributes | |
int | n_goals |
int | n_nodes |
dpNode * | start_node |
dpQueue * | top_queue |
Friends | |
class | dpNode |
class | dpQueue |
dpMain::dpMain | ( | ) | [inline] |
virtual dpMain::~dpMain | ( | ) | [inline, virtual] |
void dpMain::add_node | ( | dpNode * | _n | ) | [inline, protected] |
void dpMain::add_queue | ( | dpQueue * | _q | ) | [inline, protected] |
dpNode* dpMain::BestGoal | ( | dpNode * | ref = 0 | ) | [inline] |
virtual void dpMain::ClearAll | ( | ) | [inline, virtual] |
void dpMain::DumpAll | ( | ostream & | ost | ) | [inline] |
void dpMain::DumpQueue | ( | ostream & | ost | ) | [inline] |
void dpMain::DumpTrajectory | ( | ostream & | ost, |
dpNode * | goal | ||
) |
int dpMain::is_best | ( | dpNode * | ref, |
dpNode * | target | ||
) | [protected] |
dpNode* dpMain::next_breadth | ( | dpNode * | refnode | ) | [inline, protected] |
int dpMain::NumGoals | ( | ) | [inline] |
int dpMain::NumNodes | ( | ) | [inline] |
void dpMain::remove_node | ( | dpNode * | node | ) | [inline, protected] |
void dpMain::remove_node_single | ( | dpNode * | node | ) | [inline, protected] |
void dpMain::reset | ( | ) | [inline, protected] |
int dpMain::Search | ( | int | _max_nodes = -1 , |
int | _max_goals = -1 |
||
) |
int dpMain::Search | ( | double | max_time | ) |
Dijkstra or A* search with maximum search time.
int dpMain::SearchBreadthFirst | ( | int | _max_nodes = -1 , |
int | _max_goals = -1 |
||
) |
int dpMain::SearchDepthFirst | ( | int | _max_nodes = -1 , |
int | _max_goals = -1 |
||
) |
void dpMain::SetStartNode | ( | dpNode * | _n | ) | [inline] |
dpQueue* dpMain::smallest_queue | ( | ) | [inline, protected] |
int dpMain::n_goals [protected] |
int dpMain::n_nodes [protected] |
dpNode* dpMain::start_node [protected] |
dpQueue* dpMain::top_queue [protected] |