HOG2
|
#include <MapLineAbstraction.h>
Public Member Functions | |
MapLineAbstraction (Map *, int dist=2, bool uniform=true) | |
~MapLineAbstraction () | |
MapAbstraction * | Clone (Map *_m) |
virtual bool | Pathable (node *from, node *to) |
virtual void | VerifyHierarchy () |
verify that the hierarchy is consistent More... | |
virtual void | RemoveNode (node *n) |
remove node from abstraction More... | |
virtual void | RemoveEdge (edge *e, unsigned int absLevel) |
remove edge from abstraction More... | |
virtual void | AddNode (node *n) |
add node to abstraction More... | |
virtual void | AddEdge (edge *e, unsigned int absLevel) |
add edge to abstraction More... | |
virtual void | RepairAbstraction () |
This must be called after any of the above add/remove operations. More... | |
Private Member Functions | |
void | buildAbstraction () |
void | buildNodeIntoParent (node *n, node *parent) |
node * | createParent (Graph *g, node *n) |
void | addEdges (Graph *g) |
void | addNodes (Graph *g) |
Private Attributes | |
int | lineDistance |
bool | abstractUniformly |
Definition at line 17 of file MapLineAbstraction.h.
MapLineAbstraction::MapLineAbstraction | ( | Map * | _map, |
int | dist = 2 , |
||
bool | uniform = true |
||
) |
Definition at line 14 of file MapLineAbstraction.cpp.
References buildAbstraction().
Referenced by Clone().
MapLineAbstraction::~MapLineAbstraction | ( | ) |
Definition at line 20 of file MapLineAbstraction.cpp.
|
virtual |
add edge to abstraction
Definition at line 64 of file MapLineAbstraction.cpp.
|
private |
Definition at line 224 of file MapLineAbstraction.cpp.
References Graph::AddEdge(), Graph::edgeIterNext(), Graph::FindEdge(), Graph::getEdgeIter(), edge::GetLabelL(), node::GetLabelL(), Graph::GetNode(), GraphAbstractionConstants::kEdgeCapacity, GraphAbstractionConstants::kParent, and edge::SetLabelL().
Referenced by buildAbstraction().
|
virtual |
add node to abstraction
Definition at line 59 of file MapLineAbstraction.cpp.
|
private |
Definition at line 95 of file MapLineAbstraction.cpp.
References abstractUniformly, buildNodeIntoParent(), createParent(), Graph::FindEdge(), node::GetLabelL(), node::getNeighborIter(), Graph::GetNode(), node::GetNumEdges(), graph_object::key, GraphAbstractionConstants::kParent, lineDistance, and node::nodeNeighborNext().
Referenced by buildAbstraction().
|
private |
Definition at line 74 of file MapLineAbstraction.cpp.
References addEdges(), addNodes(), and GetMapGraph().
Referenced by MapLineAbstraction().
Definition at line 251 of file MapLineAbstraction.cpp.
References node::GetLabelL(), node::GetNum(), GraphAbstractionConstants::kFirstData, GraphAbstractionConstants::kNumAbstractedNodes, GraphAbstractionConstants::kParent, GraphAbstractionConstants::kUnknownPosition, GraphAbstractionConstants::kXCoordinate, node::SetLabelF(), and node::SetLabelL().
Referenced by addNodes().
|
inline |
Definition at line 21 of file MapLineAbstraction.h.
References MapLineAbstraction().
Definition at line 260 of file MapLineAbstraction.cpp.
References Graph::AddNode(), node::GetLabelL(), GraphAbstractionConstants::kAbstractionLevel, GraphAbstractionConstants::kNodeBlocked, GraphAbstractionConstants::kNumAbstractedNodes, GraphAbstractionConstants::kParent, GraphAbstractionConstants::kUnknownPosition, GraphAbstractionConstants::kXCoordinate, node::SetLabelF(), and node::SetLabelL().
Referenced by addNodes().
|
virtual |
remove edge from abstraction
Definition at line 54 of file MapLineAbstraction.cpp.
|
virtual |
remove node from abstraction
Definition at line 49 of file MapLineAbstraction.cpp.
|
virtual |
This must be called after any of the above add/remove operations.
But the operations can be stacked followed by a single RepairAbstraction call.
Definition at line 69 of file MapLineAbstraction.cpp.
|
virtual |
verify that the hierarchy is consistent
Definition at line 44 of file MapLineAbstraction.cpp.
|
private |
Definition at line 49 of file MapLineAbstraction.h.
Referenced by addNodes().
|
private |
Definition at line 48 of file MapLineAbstraction.h.
Referenced by addNodes().