#include <closed_list.h>
Classes | |
struct | PredecessorInfo |
Public Member Functions | |
void | clear () |
ClosedList () | |
bool | contains (const TimeStampedState &entry) const |
const TimeStampedState & | get (const TimeStampedState &state) const |
double | get_min_ts_of_key (const TimeStampedState &state) const |
double | getCostOfPath (const TimeStampedState &entry) const |
const TimeStampedState * | insert (TimeStampedState &entry, const TimeStampedState *predecessor, const Operator *annotation) |
int | size () const |
double | trace_path (const TimeStampedState &entry, std::vector< PlanStep > &path, PlanTrace &staes) const |
~ClosedList () | |
Private Types | |
typedef tr1::unordered_multimap < TimeStampedState, PredecessorInfo, TssHash, TssEquals > | ClosedListMap |
typedef ClosedListMap::value_type | ValuePair |
Private Attributes | |
ClosedListMap | closed |
Definition at line 27 of file closed_list.h.
typedef tr1::unordered_multimap<TimeStampedState, PredecessorInfo, TssHash, TssEquals> ClosedList::ClosedListMap [private] |
Definition at line 40 of file closed_list.h.
typedef ClosedListMap::value_type ClosedList::ValuePair [private] |
Definition at line 41 of file closed_list.h.
Map-based implementation of a closed list.
The closed list has two purposes: 1. It stores which nodes have been expanded or scheduled to expand already to avoid duplicates (i.e., it is used like a set). These states "live" in the closed list -- in particular, permanently valid pointers to these states are obtained upon insertion. 2. It can trace back a path from the initial state to a given state in the list.
The datatypes used for the closed list could easily be parameterized, but there is no such need presently.
Definition at line 25 of file closed_list.cpp.
Definition at line 29 of file closed_list.cpp.
void ClosedList::clear | ( | ) |
Definition at line 190 of file closed_list.cpp.
bool ClosedList::contains | ( | const TimeStampedState & | entry | ) | const |
Definition at line 195 of file closed_list.cpp.
const TimeStampedState & ClosedList::get | ( | const TimeStampedState & | state | ) | const |
Definition at line 202 of file closed_list.cpp.
double ClosedList::get_min_ts_of_key | ( | const TimeStampedState & | state | ) | const |
Definition at line 216 of file closed_list.cpp.
double ClosedList::getCostOfPath | ( | const TimeStampedState & | entry | ) | const |
Definition at line 233 of file closed_list.cpp.
const TimeStampedState * ClosedList::insert | ( | TimeStampedState & | entry, |
const TimeStampedState * | predecessor, | ||
const Operator * | annotation | ||
) |
Definition at line 180 of file closed_list.cpp.
int ClosedList::size | ( | ) | const |
Definition at line 228 of file closed_list.cpp.
double ClosedList::trace_path | ( | const TimeStampedState & | entry, |
std::vector< PlanStep > & | path, | ||
PlanTrace & | staes | ||
) | const |
Definition at line 265 of file closed_list.cpp.
ClosedListMap ClosedList::closed [private] |
Definition at line 42 of file closed_list.h.