#include <DFSAPHeuristic.h>
Inheritance diagram for DFSAPHeuristic:

Public Member Functions | |
| DFSAPHeuristic (Graph *g, Matching *m, float goal=100.0, UWORD32 mne=UWORD32_MAX, EdgeIterator::ITERATIONMODE mo=EdgeIterator::SAMPLEOCCURENCE) | |
| virtual | ~DFSAPHeuristic (void) |
| const char * | getName (void) const |
| void | reset (UWORD32 mne=UWORD32_MAX, EdgeIterator::ITERATIONMODE mo=EdgeIterator::SAMPLEOCCURENCE) |
| void | run (void) |
Private Member Functions | |
| unsigned long | searchAugmentingPath (Vertex *v0, const Edge **path) |
| const Edge * | getNextEdge (Vertex *v) |
| void | markVisited (Vertex *v) |
| bool | isVisited (Vertex *v) const |
| bool | isVisited (VertexLabel vlbl) const |
Private Attributes | |
| UWORD32 | TimeCounter |
| UWORD32 * | TimeCounters |
| bool * | VertexOnPath |
| EdgeIterator * | EdgeIterators |
| DFSAPHeuristic::DFSAPHeuristic | ( | Graph * | g, | |
| Matching * | m, | |||
| float | goal = 100.0, |
|||
| UWORD32 | mne = UWORD32_MAX, |
|||
| EdgeIterator::ITERATIONMODE | mo = EdgeIterator::SAMPLEOCCURENCE | |||
| ) |
construct an DFSAPHeuristic object
| g | the graph on which this heuristic should run | |
| m | the matching to start with | |
| goal | the percentage of matched vertices that should be reached | |
| mne | the maximum number of edges that should be considered for every vertex | |
| mo | the mode for edge iteration |
| DFSAPHeuristic::~DFSAPHeuristic | ( | void | ) | [virtual] |
| const char* DFSAPHeuristic::getName | ( | void | ) | const [inline, virtual] |
Implements MatchingAlgorithm.
| void DFSAPHeuristic::reset | ( | UWORD32 | mne = UWORD32_MAX, |
|
| EdgeIterator::ITERATIONMODE | mo = EdgeIterator::SAMPLEOCCURENCE | |||
| ) |
reset the state of this DFSAPHeuristic, esp. the EdgeIterators
| mne | the maximum number of edges that should be considered for every vertex for now on |
| void DFSAPHeuristic::run | ( | void | ) | [virtual] |
Implements MatchingAlgorithm.
| v0 | an exposed vertex | |
| path | an array of Edge pointers where the path will be put |
| void DFSAPHeuristic::markVisited | ( | Vertex * | v | ) | [inline, private] |
| bool DFSAPHeuristic::isVisited | ( | Vertex * | v | ) | const [inline, private] |
returns true iff v has already been visited in this iteration, i.e. in the current call of searchAugmentingPath
| bool DFSAPHeuristic::isVisited | ( | VertexLabel | vlbl | ) | const [inline, private] |
UWORD32 DFSAPHeuristic::TimeCounter [private] |
UWORD32* DFSAPHeuristic::TimeCounters [private] |
bool* DFSAPHeuristic::VertexOnPath [private] |
EdgeIterator* DFSAPHeuristic::EdgeIterators [private] |
1.5.1