|
Pol
Revision:cb584c9
|
#include <stlastar.h>
Classes | |
| class | HeapCompare_f |
| class | Node |
Public Types | |
| enum | { SEARCH_STATE_NOT_INITIALISED, SEARCH_STATE_SEARCHING, SEARCH_STATE_SUCCEEDED, SEARCH_STATE_FAILED, SEARCH_STATE_OUT_OF_MEMORY, SEARCH_STATE_INVALID, SEARCH_STATE_SOLUTION_CORRUPTED } |
| typedef std::vector< Node * > | NodeVector |
| typedef NodeVector::iterator | NodeVectorIterator |
Public Member Functions | |
| AStarSearch (int MaxNodes=1000) | |
| bool | AddSuccessor (UserState &State) |
| bool | AddToSolutionList (Node *theNode) |
| void | CancelSearch () |
| void | FreeSolutionNodes () |
| UserState * | GetClosedListNext () |
| UserState * | GetClosedListNext (float &f, float &g, float &h) |
| UserState * | GetClosedListStart () |
| UserState * | GetClosedListStart (float &f, float &g, float &h) |
| UserState * | GetOpenListNext () |
| UserState * | GetOpenListNext (float &f, float &g, float &h) |
| UserState * | GetOpenListStart () |
| UserState * | GetOpenListStart (float &f, float &g, float &h) |
| UserState * | GetSolutionEnd () |
| UserState * | GetSolutionNext () |
| UserState * | GetSolutionPrev () |
| UserState * | GetSolutionStart () |
| int | GetStepCount () |
| bool | InClosedList (UserState &theState) |
| bool | InOpenList (UserState &theState) |
| unsigned int | SearchStep (bool doors_block) |
| void | SetStartAndGoalStates (UserState &Start, UserState &Goal) |
Private Member Functions | |
| Node * | AllocateNode () |
| void | FreeAllNodes () |
| void | FreeNode (Node *node) |
| void | FreeUnusedNodes () |
Private Attributes | |
| NodeVectorIterator | iterDbgClosed |
| NodeVectorIterator | iterDbgOpen |
| int | m_AllocateNodeCount |
| bool | m_CancelRequest |
| NodeVector | m_ClosedList |
| Node * | m_CurrentSolutionNode |
| Pol::Plib::FixedSizeAllocator< Node > | m_FixedSizeAllocator |
| int | m_FreeNodeCount |
| Node * | m_Goal |
| NodeVector | m_OpenList |
| NodeVector | m_SolutionList |
| Node * | m_Start |
| unsigned int | m_State |
| int | m_Steps |
| NodeVector | m_Successors |
Definition at line 39 of file stlastar.h.
| typedef std::vector<Node*> Pol::Plib::AStarSearch< UserState >::NodeVector |
Definition at line 72 of file stlastar.h.
| typedef NodeVector::iterator Pol::Plib::AStarSearch< UserState >::NodeVectorIterator |
Definition at line 73 of file stlastar.h.
| anonymous enum |
| Enumerator | |
|---|---|
| SEARCH_STATE_NOT_INITIALISED | |
| SEARCH_STATE_SEARCHING | |
| SEARCH_STATE_SUCCEEDED | |
| SEARCH_STATE_FAILED | |
| SEARCH_STATE_OUT_OF_MEMORY | |
| SEARCH_STATE_INVALID | |
| SEARCH_STATE_SOLUTION_CORRUPTED | |
Definition at line 42 of file stlastar.h.
|
inline |
Definition at line 85 of file stlastar.h.
|
inline |
Definition at line 396 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::AllocateNode(), Pol::Plib::AStarSearch< UserState >::m_Successors, and Pol::Plib::AStarSearch< UserState >::Node::m_UserState.
Referenced by Pol::Core::UOPathState::GetSuccessors().
|
inline |
Definition at line 163 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::m_SolutionList.
Referenced by Pol::Plib::AStarSearch< UserState >::SearchStep().
|
inlineprivate |
Definition at line 658 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::m_AllocateNodeCount, Pol::Plib::AStarSearch< UserState >::m_FixedSizeAllocator, and Pol::Plib::AStarSearch< UserState >::Node::Node().
Referenced by Pol::Plib::AStarSearch< UserState >::AddSuccessor(), and Pol::Plib::AStarSearch< UserState >::SetStartAndGoalStates().
|
inline |
Definition at line 99 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::m_CancelRequest.
|
inlineprivate |
Definition at line 589 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::FreeNode(), Pol::Plib::AStarSearch< UserState >::m_ClosedList, Pol::Plib::AStarSearch< UserState >::m_Goal, and Pol::Plib::AStarSearch< UserState >::m_OpenList.
Referenced by Pol::Plib::AStarSearch< UserState >::SearchStep().
|
inlineprivate |
Definition at line 676 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::m_FixedSizeAllocator, and Pol::Plib::AStarSearch< UserState >::m_FreeNodeCount.
Referenced by Pol::Plib::AStarSearch< UserState >::FreeAllNodes(), Pol::Plib::AStarSearch< UserState >::FreeSolutionNodes(), Pol::Plib::AStarSearch< UserState >::FreeUnusedNodes(), and Pol::Plib::AStarSearch< UserState >::SearchStep().
|
inline |
Definition at line 412 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::Node::child, Pol::Plib::AStarSearch< UserState >::FreeNode(), Pol::Plib::AStarSearch< UserState >::m_Goal, and Pol::Plib::AStarSearch< UserState >::m_Start.
Referenced by Pol::Module::UOExecutorModule::mf_FindPath().
|
inlineprivate |
Definition at line 623 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::Node::child, Pol::Plib::AStarSearch< UserState >::FreeNode(), Pol::Plib::AStarSearch< UserState >::m_ClosedList, and Pol::Plib::AStarSearch< UserState >::m_OpenList.
Referenced by Pol::Plib::AStarSearch< UserState >::SearchStep().
|
inline |
Definition at line 562 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::Node::f, Pol::Plib::AStarSearch< UserState >::Node::g, and Pol::Plib::AStarSearch< UserState >::Node::h.
|
inline |
Definition at line 568 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::iterDbgClosed, and Pol::Plib::AStarSearch< UserState >::m_ClosedList.
|
inline |
Definition at line 541 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::Node::f, Pol::Plib::AStarSearch< UserState >::Node::g, and Pol::Plib::AStarSearch< UserState >::Node::h.
|
inline |
Definition at line 547 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::iterDbgClosed, and Pol::Plib::AStarSearch< UserState >::m_ClosedList.
|
inline |
Definition at line 522 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::Node::f, Pol::Plib::AStarSearch< UserState >::Node::g, and Pol::Plib::AStarSearch< UserState >::Node::h.
|
inline |
Definition at line 528 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::iterDbgOpen, and Pol::Plib::AStarSearch< UserState >::m_OpenList.
|
inline |
Definition at line 502 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::Node::f, Pol::Plib::AStarSearch< UserState >::Node::g, and Pol::Plib::AStarSearch< UserState >::Node::h.
|
inline |
Definition at line 508 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::iterDbgOpen, and Pol::Plib::AStarSearch< UserState >::m_OpenList.
|
inline |
Definition at line 470 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::m_CurrentSolutionNode, Pol::Plib::AStarSearch< UserState >::m_Goal, and Pol::Plib::AStarSearch< UserState >::Node::m_UserState.
Referenced by Pol::Core::UOPathState::GetSuccessors().
|
inline |
Definition at line 454 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::Node::child, Pol::Plib::AStarSearch< UserState >::m_CurrentSolutionNode, and Pol::Plib::AStarSearch< UserState >::Node::m_UserState.
Referenced by Pol::Module::UOExecutorModule::mf_FindPath().
|
inline |
Definition at line 484 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::m_CurrentSolutionNode, Pol::Plib::AStarSearch< UserState >::Node::m_UserState, and Pol::Plib::AStarSearch< UserState >::Node::parent.
|
inline |
Definition at line 440 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::m_CurrentSolutionNode, Pol::Plib::AStarSearch< UserState >::m_Start, and Pol::Plib::AStarSearch< UserState >::Node::m_UserState.
Referenced by Pol::Core::UOPathState::GetSuccessors(), and Pol::Module::UOExecutorModule::mf_FindPath().
|
inline |
Definition at line 584 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::m_Steps.
|
inline |
Definition at line 146 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::m_ClosedList, Pol::Plib::AStarSearch< UserState >::m_Goal, and Pol::Plib::AStarSearch< UserState >::Node::m_UserState.
Referenced by Pol::Plib::AStarSearch< UserState >::SearchStep().
|
inline |
Definition at line 132 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::m_OpenList.
|
inline |
Definition at line 178 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::AddToSolutionList(), Pol::Plib::AStarSearch< UserState >::Node::child, Pol::Plib::AStarSearch< UserState >::FreeAllNodes(), Pol::Plib::AStarSearch< UserState >::FreeNode(), Pol::Plib::AStarSearch< UserState >::FreeUnusedNodes(), Pol::Plib::AStarSearch< UserState >::Node::g, Pol::Plib::AStarSearch< UserState >::InClosedList(), Pol::Plib::AStarSearch< UserState >::m_CancelRequest, Pol::Plib::AStarSearch< UserState >::m_ClosedList, Pol::Plib::AStarSearch< UserState >::m_Goal, Pol::Plib::AStarSearch< UserState >::m_OpenList, Pol::Plib::AStarSearch< UserState >::m_Start, Pol::Plib::AStarSearch< UserState >::m_State, Pol::Plib::AStarSearch< UserState >::m_Steps, Pol::Plib::AStarSearch< UserState >::m_Successors, Pol::Plib::AStarSearch< UserState >::Node::m_UserState, Pol::Plib::AStarSearch< UserState >::Node::parent, Pol::Plib::AStarSearch< UserState >::SEARCH_STATE_FAILED, Pol::Plib::AStarSearch< UserState >::SEARCH_STATE_INVALID, Pol::Plib::AStarSearch< UserState >::SEARCH_STATE_NOT_INITIALISED, Pol::Plib::AStarSearch< UserState >::SEARCH_STATE_OUT_OF_MEMORY, Pol::Plib::AStarSearch< UserState >::SEARCH_STATE_SOLUTION_CORRUPTED, and Pol::Plib::AStarSearch< UserState >::SEARCH_STATE_SUCCEEDED.
Referenced by Pol::Module::UOExecutorModule::mf_FindPath().
|
inline |
Definition at line 101 of file stlastar.h.
References Pol::Plib::AStarSearch< UserState >::AllocateNode(), Pol::Plib::AStarSearch< UserState >::Node::f, Pol::Plib::AStarSearch< UserState >::Node::g, Pol::Plib::AStarSearch< UserState >::Node::h, Pol::Plib::AStarSearch< UserState >::m_CancelRequest, Pol::Plib::AStarSearch< UserState >::m_Goal, Pol::Plib::AStarSearch< UserState >::m_OpenList, Pol::Plib::AStarSearch< UserState >::m_Start, Pol::Plib::AStarSearch< UserState >::m_State, Pol::Plib::AStarSearch< UserState >::m_Steps, Pol::Plib::AStarSearch< UserState >::Node::m_UserState, Pol::Plib::AStarSearch< UserState >::Node::parent, and Pol::Plib::AStarSearch< UserState >::SEARCH_STATE_SEARCHING.
Referenced by Pol::Module::UOExecutorModule::mf_FindPath().
|
private |
Definition at line 718 of file stlastar.h.
Referenced by Pol::Plib::AStarSearch< UserState >::GetClosedListNext(), and Pol::Plib::AStarSearch< UserState >::GetClosedListStart().
|
private |
Definition at line 717 of file stlastar.h.
Referenced by Pol::Plib::AStarSearch< UserState >::GetOpenListNext(), and Pol::Plib::AStarSearch< UserState >::GetOpenListStart().
|
private |
Definition at line 721 of file stlastar.h.
Referenced by Pol::Plib::AStarSearch< UserState >::AllocateNode().
|
private |
Definition at line 724 of file stlastar.h.
Referenced by Pol::Plib::AStarSearch< UserState >::CancelSearch(), Pol::Plib::AStarSearch< UserState >::SearchStep(), and Pol::Plib::AStarSearch< UserState >::SetStartAndGoalStates().
|
private |
Definition at line 692 of file stlastar.h.
Referenced by Pol::Plib::AStarSearch< UserState >::FreeAllNodes(), Pol::Plib::AStarSearch< UserState >::FreeUnusedNodes(), Pol::Plib::AStarSearch< UserState >::GetClosedListNext(), Pol::Plib::AStarSearch< UserState >::GetClosedListStart(), Pol::Plib::AStarSearch< UserState >::InClosedList(), and Pol::Plib::AStarSearch< UserState >::SearchStep().
|
private |
|
private |
Definition at line 713 of file stlastar.h.
Referenced by Pol::Plib::AStarSearch< UserState >::AllocateNode(), and Pol::Plib::AStarSearch< UserState >::FreeNode().
|
private |
Definition at line 722 of file stlastar.h.
Referenced by Pol::Plib::AStarSearch< UserState >::FreeNode().
|
private |
Definition at line 708 of file stlastar.h.
Referenced by Pol::Plib::AStarSearch< UserState >::FreeAllNodes(), Pol::Plib::AStarSearch< UserState >::FreeSolutionNodes(), Pol::Plib::AStarSearch< UserState >::GetSolutionEnd(), Pol::Plib::AStarSearch< UserState >::InClosedList(), Pol::Plib::AStarSearch< UserState >::SearchStep(), and Pol::Plib::AStarSearch< UserState >::SetStartAndGoalStates().
|
private |
Definition at line 689 of file stlastar.h.
Referenced by Pol::Plib::AStarSearch< UserState >::FreeAllNodes(), Pol::Plib::AStarSearch< UserState >::FreeUnusedNodes(), Pol::Plib::AStarSearch< UserState >::GetOpenListNext(), Pol::Plib::AStarSearch< UserState >::GetOpenListStart(), Pol::Plib::AStarSearch< UserState >::InOpenList(), Pol::Plib::AStarSearch< UserState >::SearchStep(), and Pol::Plib::AStarSearch< UserState >::SetStartAndGoalStates().
|
private |
Definition at line 694 of file stlastar.h.
Referenced by Pol::Plib::AStarSearch< UserState >::AddToSolutionList().
|
private |
|
private |
Definition at line 701 of file stlastar.h.
Referenced by Pol::Plib::AStarSearch< UserState >::SearchStep(), and Pol::Plib::AStarSearch< UserState >::SetStartAndGoalStates().
|
private |
Definition at line 704 of file stlastar.h.
Referenced by Pol::Plib::AStarSearch< UserState >::GetStepCount(), Pol::Plib::AStarSearch< UserState >::SearchStep(), and Pol::Plib::AStarSearch< UserState >::SetStartAndGoalStates().
|
private |
Definition at line 698 of file stlastar.h.
Referenced by Pol::Plib::AStarSearch< UserState >::AddSuccessor(), and Pol::Plib::AStarSearch< UserState >::SearchStep().