56 : m_pr(pr), m_pCost(pCostOrig), m_pForbidden(pForbiddenOrig), m_pSubgraph(pEdgeSubgraphs) { }
83 int maxCost,
node v,
int currentDist);
123 int maxCost,
node v,
int currentDist)
override;
Declaration and implementation of Array class and Array algorithms.
Declaration of CombinatorialEmbedding and face.
Includes declaration of graph class.
Declares base class for all module types.
Declaration of class PlanRepLight.
Declaration of singly linked lists and iterators.
Declares base class for modules with timeout functionality.
Basic declarations, included by all source files.
Class for adjacency list elements.
The parameterized class Array implements dynamic arrays of type E.
Combinatorial embeddings of planar graphs with modification functionality.
Class for the representation of edges.
RegisteredArray for labeling the faces of a CombinatorialEmbedding.
Faces in a combinatorial embedding.
const EdgeArray< int > * m_pCost
virtual void insertEdgesIntoDual(const CombinatorialEmbedding &E, adjEntry adjSrc)
const EdgeArray< bool > * m_pForbidden
FixEdgeInserterCore(PlanRepLight &pr, const EdgeArray< int > *pCostOrig, const EdgeArray< bool > *pForbiddenOrig, const EdgeArray< uint32_t > *pEdgeSubgraphs)
int costCrossed(edge eOrig) const
const EdgeArray< uint32_t > * m_pSubgraph
void removeEdge(CombinatorialEmbedding &E, edge eOrig)
void findShortestPath(const CombinatorialEmbedding &E, edge eOrig, SList< adjEntry > &crossed)
Graph m_dual
(Extended) dual graph, constructed/destructed during call.
void findWeightedShortestPath(const CombinatorialEmbedding &E, edge eOrig, SList< adjEntry > &crossed)
int m_runsPostprocessing
Runs of remove-reinsert method.
void insertEdge(CombinatorialEmbedding &E, edge eOrig, const SList< adjEntry > &crossed)
FaceArray< node > m_nodeOf
The node in dual corresponding to face in primal.
virtual void appendCandidates(QueuePure< edge > &queue, node v)
node m_vT
The node in extended dual representing t.
int runsPostprocessing() const
virtual void appendCandidates(Array< SListPure< edge > > &nodesAtDist, EdgeArray< int > &costDual, int maxCost, node v, int currentDist)
EdgeArray< adjEntry > m_primalAdj
Adjacency entry in primal graph corresponding to edge in dual.
Module::ReturnType call(const Array< edge > &origEdges, bool keepEmbedding, RemoveReinsertType rrPost, double percentMostCrossed)
virtual void init(CombinatorialEmbedding &E)
int getCost(edge e, int stSubGraph) const
virtual ~FixEdgeInserterCore()
virtual void insertEdgesIntoDualAfterRemove(const CombinatorialEmbedding &E, face f)
virtual void constructDual(const CombinatorialEmbedding &E)
node m_vS
The node in extended dual representing s.
virtual void storeTypeOfCurrentEdge(edge eOrig)
void insertEdgesIntoDualAfterRemove(const CombinatorialEmbedding &E, face f) override
void appendCandidates(Array< SListPure< edge > > &nodesAtDist, EdgeArray< int > &costDual, int maxCost, node v, int currentDist) override
EdgeArray< bool > m_primalIsGen
true iff corresponding primal edge is a generalization.
void init(CombinatorialEmbedding &E) override
Graph::EdgeType m_typeOfCurrentEdge
void storeTypeOfCurrentEdge(edge eOrig) override
void constructDual(const CombinatorialEmbedding &E) override
void appendCandidates(QueuePure< edge > &queue, node v) override
FixEdgeInserterUMLCore(PlanRepLight &pr, const EdgeArray< int > *pCostOrig, const EdgeArray< uint32_t > *pEdgeSubgraph)
void insertEdgesIntoDual(const CombinatorialEmbedding &E, adjEntry adjSrc) override
Data type for general directed graphs (adjacency list representation).
EdgeType
The type of edges (only used in derived classes).
ReturnType
The return type of a module.
Class for the representation of nodes.
Light-weight version of a planarized representation, associated with a PlanRep.
EdgeType typeOrig(edge eOrig) const
Implementation of list-based queues.
Singly linked lists (maintaining the length of the list).
class for timeout funtionality.
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF dynamic library (shared object / DLL),...
RemoveReinsertType
The postprocessing method for edge insertion algorithms.
The namespace for all OGDF objects.