#include <ogdf/graphalg/matching_blossom/AuxGraph.h>
Public Member Functions | |
AuxNode (node auxGraphNode, node graphNode, BlossomVHelper< TWeight > &helper) | |
void | addDelta (double delta) |
Add delta to this tree. delta must be non-negative. More... | |
void | addEvenEvenEdge (edge e) |
Add e to the list of even-even edges of this tree. More... | |
void | addEvenFreeEdge (edge e) |
Add e to the list of even-free edges of this tree. More... | |
void | addOddPseudonode (node v) |
Add v to the list of odd pseudonodes of this tree. More... | |
AuxEdge< TWeight > * | currentEdge () |
The aux edge pointing to the current aux node. More... | |
double | delta () |
double | delta (node v) |
The delta of this tree for the given node. More... | |
EdgePQ & | evenEvenEdges () |
EdgePQ & | evenFreeEdges () |
node | graphNode () |
NodePQ & | oddPseudonodes () |
void | setCurrentEdge (AuxEdge< TWeight > *edge) |
Sets the current edge of this tree to edge and update the iteration to the current one. More... | |
AlternatingTree< TWeight > & | tree () |
Private Types | |
using | EdgePQ = BlossomPQ< edge, TWeight > |
using | NodePQ = BlossomPQ< node, TWeight > |
Private Attributes | |
struct { | |
AuxEdge< TWeight > * edge = nullptr | |
long iteration = -1 | |
} | m_currentEdge |
Structure representing the current edge of this tree. To avoid resetting all edges of all trees after every iteration, we save the iteration number to see if the edge pointer is invalid. More... | |
double | m_delta = 0 |
The cummulated delta of this tree. More... | |
EdgePQ | m_evenEvenEdges |
Eges between even nodes in this tree. More... | |
EdgePQ | m_evenFreeEdges |
Edges between an even node in this tree and a free node. More... | |
BlossomVHelper< TWeight > & | m_helper |
The auxiliary graph this node belongs to. More... | |
node | m_node |
The actual node in the auxiliary graph. More... | |
NodePQ | m_oddPseudonodes |
All odd pseudonodes in this tree. More... | |
AlternatingTree< TWeight > | m_tree |
The alternating tree this node represents. More... | |
Definition at line 55 of file AuxGraph.h.
|
private |
Definition at line 56 of file AuxGraph.h.
|
private |
Definition at line 57 of file AuxGraph.h.
|
inline |
Definition at line 86 of file AuxGraph.h.
|
inline |
Add delta
to this tree. delta
must be non-negative.
Definition at line 134 of file AuxGraph.h.
|
inline |
Add e
to the list of even-even edges of this tree.
Definition at line 143 of file AuxGraph.h.
|
inline |
Add e
to the list of even-free edges of this tree.
Definition at line 146 of file AuxGraph.h.
|
inline |
Add v
to the list of odd pseudonodes of this tree.
Definition at line 140 of file AuxGraph.h.
|
inline |
The aux edge pointing to the current aux node.
Definition at line 95 of file AuxGraph.h.
|
inline |
Definition at line 119 of file AuxGraph.h.
|
inline |
The delta of this tree for the given node.
Definition at line 124 of file AuxGraph.h.
|
inline |
Definition at line 113 of file AuxGraph.h.
|
inline |
Definition at line 115 of file AuxGraph.h.
|
inline |
Definition at line 109 of file AuxGraph.h.
|
inline |
Definition at line 117 of file AuxGraph.h.
|
inline |
Sets the current edge of this tree to edge
and update the iteration to the current one.
Definition at line 104 of file AuxGraph.h.
|
inline |
Definition at line 111 of file AuxGraph.h.
AuxEdge<TWeight>* ogdf::matching_blossom::AuxNode< TWeight >::edge = nullptr |
Definition at line 81 of file AuxGraph.h.
long ogdf::matching_blossom::AuxNode< TWeight >::iteration = -1 |
Definition at line 82 of file AuxGraph.h.
struct { ... } ogdf::matching_blossom::AuxNode< TWeight >::m_currentEdge |
Structure representing the current edge of this tree. To avoid resetting all edges of all trees after every iteration, we save the iteration number to see if the edge pointer is invalid.
|
private |
The cummulated delta of this tree.
Definition at line 69 of file AuxGraph.h.
|
private |
Eges between even nodes in this tree.
Definition at line 72 of file AuxGraph.h.
|
private |
Edges between an even node in this tree and a free node.
Definition at line 74 of file AuxGraph.h.
|
private |
The auxiliary graph this node belongs to.
Definition at line 63 of file AuxGraph.h.
|
private |
The actual node in the auxiliary graph.
Definition at line 60 of file AuxGraph.h.
|
private |
All odd pseudonodes in this tree.
Definition at line 76 of file AuxGraph.h.
|
private |
The alternating tree this node represents.
Definition at line 66 of file AuxGraph.h.