HOG2
|
#include <DVCBSOpenClosed.h>
Public Member Functions | |
DVCBSOpenClosed () | |
~DVCBSOpenClosed () | |
void | Reset () |
Remove all objects from queue. More... | |
uint64_t | AddOpenNode (const state &val, uint64_t hash, double g, double h, uint64_t parent=kTBDNoNode, stateLocation whichQueue=kOpenWaiting) |
Add object into open list. More... | |
uint64_t | AddClosedNode (state &val, uint64_t hash, double g, double h, uint64_t parent=kTBDNoNode) |
Add object into closed list. More... | |
void | KeyChanged (uint64_t objKey, double oldVal) |
Indicate that the key for a particular object has changed. More... | |
void | eraseFromNodesMap (stateLocation whichQueue, uint64_t val) |
void | eraseFromNodesMap (stateLocation whichQueue, uint64_t val, double oldKey) |
void | eraseFirstClusterFromNodesMap (stateLocation whichQueue) |
void | putInNodesMap (stateLocation whichQueue, uint64_t val) |
void | Remove (uint64_t objKey) |
stateLocation | Lookup (uint64_t hashKey, uint64_t &objKey) const |
dataStructure & | Lookup (uint64_t objKey) |
const dataStructure & | Lookat (uint64_t objKey) const |
double | getFirstKey (stateLocation whichQueue) const |
uint64_t | Close () |
uint64_t | CloseAtIndex (uint64_t index) |
void | PutToReady () |
size_t | OpenReadySize () const |
size_t | OpenWaitingSize () const |
size_t | OpenSize () const |
std::map< double, std::set< uint64_t > >::iterator | getNodesMapBegin (stateLocation whichQueue) |
std::map< double, std::set< uint64_t > >::iterator | getNodesMapEnd (stateLocation whichQueue) |
std::set< uint64_t > | getNodesMapElements (stateLocation whichQueue, double key) |
size_t | ClosedSize () const |
size_t | size () const |
void | verifyData () |
Private Types | |
typedef std::unordered_map< uint64_t, uint64_t, AHash64 > | IndexTable |
Private Attributes | |
std::vector< std::map< double, std::set< uint64_t > > > | nodesMap |
std::vector< double > | nodesMapSize |
IndexTable | table |
std::vector< dataStructure > | elements |
Definition at line 37 of file DVCBSOpenClosed.h.
|
private |
Definition at line 86 of file DVCBSOpenClosed.h.
DVCBSOpenClosed< state, dataStructure >::DVCBSOpenClosed |
Definition at line 95 of file DVCBSOpenClosed.h.
DVCBSOpenClosed< state, dataStructure >::~DVCBSOpenClosed |
Definition at line 108 of file DVCBSOpenClosed.h.
uint64_t DVCBSOpenClosed< state, dataStructure >::AddClosedNode | ( | state & | val, |
uint64_t | hash, | ||
double | g, | ||
double | h, | ||
uint64_t | parent = kTBDNoNode |
||
) |
Add object into closed list.
Definition at line 163 of file DVCBSOpenClosed.h.
uint64_t DVCBSOpenClosed< state, dataStructure >::AddOpenNode | ( | const state & | val, |
uint64_t | hash, | ||
double | g, | ||
double | h, | ||
uint64_t | parent = kTBDNoNode , |
||
stateLocation | whichQueue = kOpenWaiting |
||
) |
Add object into open list.
Definition at line 132 of file DVCBSOpenClosed.h.
uint64_t DVCBSOpenClosed< state, dataStructure >::Close | ( | ) |
uint64_t DVCBSOpenClosed< state, dataStructure >::CloseAtIndex | ( | uint64_t | index | ) |
Definition at line 278 of file DVCBSOpenClosed.h.
|
inline |
Definition at line 73 of file DVCBSOpenClosed.h.
void DVCBSOpenClosed< state, dataStructure >::eraseFirstClusterFromNodesMap | ( | stateLocation | whichQueue | ) |
Definition at line 246 of file DVCBSOpenClosed.h.
void DVCBSOpenClosed< state, dataStructure >::eraseFromNodesMap | ( | stateLocation | whichQueue, |
uint64_t | val | ||
) |
Definition at line 204 of file DVCBSOpenClosed.h.
void DVCBSOpenClosed< state, dataStructure >::eraseFromNodesMap | ( | stateLocation | whichQueue, |
uint64_t | val, | ||
double | oldKey | ||
) |
Definition at line 230 of file DVCBSOpenClosed.h.
|
inline |
Definition at line 54 of file DVCBSOpenClosed.h.
Referenced by DVCBSQueue< state >::getVertexCover().
|
inline |
Definition at line 68 of file DVCBSOpenClosed.h.
Referenced by DVCBSQueue< state >::getVertexCover().
|
inline |
Definition at line 70 of file DVCBSOpenClosed.h.
Referenced by DVCBSQueue< state >::getVertexCover().
|
inline |
Definition at line 69 of file DVCBSOpenClosed.h.
Referenced by DVCBSQueue< state >::getVertexCover().
void DVCBSOpenClosed< state, dataStructure >::KeyChanged | ( | uint64_t | objKey, |
double | oldVal | ||
) |
Indicate that the key for a particular object has changed.
Definition at line 179 of file DVCBSOpenClosed.h.
|
inline |
Definition at line 53 of file DVCBSOpenClosed.h.
stateLocation DVCBSOpenClosed< state, dataStructure >::Lookup | ( | uint64_t | hashKey, |
uint64_t & | objKey | ||
) | const |
Definition at line 265 of file DVCBSOpenClosed.h.
Referenced by DVCBSQueue< state >::tieBreakCriteria().
|
inline |
Definition at line 52 of file DVCBSOpenClosed.h.
|
inline |
Definition at line 64 of file DVCBSOpenClosed.h.
Referenced by DVCBSOpenClosed< state >::ClosedSize(), DVCBSQueue< state >::getVertexCover(), and DVCBSOpenClosed< state >::OpenSize().
|
inline |
Definition at line 66 of file DVCBSOpenClosed.h.
Referenced by DVCBSQueue< state >::getVertexCover().
|
inline |
Definition at line 65 of file DVCBSOpenClosed.h.
Referenced by DVCBSOpenClosed< state >::ClosedSize(), DVCBSQueue< state >::getVertexCover(), and DVCBSOpenClosed< state >::OpenSize().
void DVCBSOpenClosed< state, dataStructure >::putInNodesMap | ( | stateLocation | whichQueue, |
uint64_t | val | ||
) |
Definition at line 186 of file DVCBSOpenClosed.h.
void DVCBSOpenClosed< state, dataStructure >::PutToReady |
Definition at line 288 of file DVCBSOpenClosed.h.
Referenced by DVCBSQueue< state >::getVertexCover().
void DVCBSOpenClosed< state, dataStructure >::Remove | ( | uint64_t | objKey | ) |
Definition at line 257 of file DVCBSOpenClosed.h.
void DVCBSOpenClosed< state, dataStructure >::Reset |
Remove all objects from queue.
Definition at line 116 of file DVCBSOpenClosed.h.
Referenced by DVCBSQueue< state >::Reset().
|
inline |
Definition at line 74 of file DVCBSOpenClosed.h.
Referenced by DVCBSOpenClosed< state >::ClosedSize().
void DVCBSOpenClosed< state, dataStructure >::verifyData | ( | ) |
|
private |
Definition at line 90 of file DVCBSOpenClosed.h.
Referenced by DVCBSOpenClosed< state >::Lookat(), DVCBSOpenClosed< state >::Lookup(), and DVCBSOpenClosed< state >::size().
|
private |
Definition at line 80 of file DVCBSOpenClosed.h.
Referenced by DVCBSOpenClosed< state >::getFirstKey(), DVCBSOpenClosed< state >::getNodesMapBegin(), DVCBSOpenClosed< state >::getNodesMapElements(), and DVCBSOpenClosed< state >::getNodesMapEnd().
|
private |
Definition at line 81 of file DVCBSOpenClosed.h.
Referenced by DVCBSOpenClosed< state >::OpenReadySize(), and DVCBSOpenClosed< state >::OpenWaitingSize().
|
private |
Definition at line 88 of file DVCBSOpenClosed.h.