Open
Graph Drawing
Framework

 v. 2022.02 (Dogwood)
 

ogdf::MMEdgeInsertionModule Class Referenceabstract

Interface for minor-monotone edge insertion algorithms. More...

#include <ogdf/planarity/MMEdgeInsertionModule.h>

+ Inheritance diagram for ogdf::MMEdgeInsertionModule:

Public Member Functions

 MMEdgeInsertionModule ()
 Initializes a minor-monotone edge insertion module. More...
 
virtual ~MMEdgeInsertionModule ()
 
ReturnType call (PlanRepExpansion &PG, const List< edge > &origEdges)
 Inserts all edges in origEdges into PG. More...
 
ReturnType call (PlanRepExpansion &PG, const List< edge > &origEdges, const EdgeArray< bool > &forbiddenEdgeOrig)
 Inserts all edges in origEdges into PG and forbids crossing forbiddenEdges. More...
 
- Public Member Functions inherited from ogdf::Module
 Module ()
 Initializes a module. More...
 
virtual ~Module ()
 

Protected Member Functions

virtual ReturnType doCall (PlanRepExpansion &PG, const List< edge > &origEdges, const EdgeArray< bool > *forbiddenEdgeOrig)=0
 Actual algorithm call that has to be implemented by derived classes. More...
 

Additional Inherited Members

- Public Types inherited from ogdf::Module
enum  ReturnType { ReturnType::Feasible, ReturnType::Optimal, ReturnType::NoFeasibleSolution, ReturnType::TimeoutFeasible, ReturnType::TimeoutInfeasible, ReturnType::Error }
 The return type of a module. More...
 
- Static Public Member Functions inherited from ogdf::Module
static bool isSolution (ReturnType ret)
 Returns true iff ret indicates that the module returned a feasible solution. More...
 

Detailed Description

Interface for minor-monotone edge insertion algorithms.

See also
MMSubgraphPlanarizer

Definition at line 46 of file MMEdgeInsertionModule.h.

Constructor & Destructor Documentation

◆ MMEdgeInsertionModule()

ogdf::MMEdgeInsertionModule::MMEdgeInsertionModule ( )
inline

Initializes a minor-monotone edge insertion module.

Definition at line 49 of file MMEdgeInsertionModule.h.

◆ ~MMEdgeInsertionModule()

virtual ogdf::MMEdgeInsertionModule::~MMEdgeInsertionModule ( )
inlinevirtual

Definition at line 52 of file MMEdgeInsertionModule.h.

Member Function Documentation

◆ call() [1/2]

ReturnType ogdf::MMEdgeInsertionModule::call ( PlanRepExpansion PG,
const List< edge > &  origEdges 
)
inline

Inserts all edges in origEdges into PG.

Parameters
PGis the input planarized expansion and will also receive the result.
origEdgesis the list of original edges (edges in the original graph of PG) that have to be inserted.
Returns
the status of the result.

Definition at line 62 of file MMEdgeInsertionModule.h.

◆ call() [2/2]

ReturnType ogdf::MMEdgeInsertionModule::call ( PlanRepExpansion PG,
const List< edge > &  origEdges,
const EdgeArray< bool > &  forbiddenEdgeOrig 
)
inline

Inserts all edges in origEdges into PG and forbids crossing forbiddenEdges.

Parameters
PGis the input planarized expansion and will also receive the result.
origEdgesis the list of original edges (edges in the original graph of PG) that have to be inserted.
forbiddenEdgeOrigis an edge array indicating if an original edge is forbidden to be crossed.
Returns
the status of the result.

Definition at line 76 of file MMEdgeInsertionModule.h.

◆ doCall()

virtual ReturnType ogdf::MMEdgeInsertionModule::doCall ( PlanRepExpansion PG,
const List< edge > &  origEdges,
const EdgeArray< bool > *  forbiddenEdgeOrig 
)
protectedpure virtual

Actual algorithm call that has to be implemented by derived classes.

Parameters
PGis the input planarized expansion and will also receive the result.
origEdgesis the list of original edges (edges in the original graph of PG) that have to be inserted.
forbiddenEdgeOrigpoints to an edge array indicating if an original edge is forbidden to be crossed.

Implemented in ogdf::MMVariableEmbeddingInserter, and ogdf::MMFixedEmbeddingInserter.


The documentation for this class was generated from the following file: