Declares base class for all module types.
Declaration of class PlanRepUML.
Declares base class for modules with timeout functionality.
Dynamic arrays indexed with edges.
ReturnType
The return type of a module.
Planarized representation (of a connected component) of a UMLGraph; allows special handling of hierar...
class for timeout funtionality.
Base class for UML crossing minimization algorithms.
static bool checkCrossingGens(const PlanRepUML &prUML)
Checks if the planarized represenation contains crossing generalizations.
UMLCrossingMinimizationModule(const UMLCrossingMinimizationModule &cmm)
Initializes a UML crossing minimization module (copy constructor).
ReturnType call(PlanRepUML &prUML, int cc, int &crossingNumber, const EdgeArray< int > *pCostOrig=nullptr)
Computes a planarized representation of the input graph.
virtual ReturnType doCall(PlanRepUML &prUML, int cc, const EdgeArray< int > *pCostOrig, int &crossingNumber)=0
Actual algorithm call that needs to be implemented by derived classes.
virtual ~UMLCrossingMinimizationModule()
Destructor.
ReturnType operator()(PlanRepUML &prUML, int cc, int &crossingNumber, const EdgeArray< int > *pCostOrig=nullptr)
Computes a planarized representation of the input graph.
UMLCrossingMinimizationModule()
Initializes a UML crossing minimization module (default constructor).
virtual UMLCrossingMinimizationModule * clone() const =0
Returns a new instance of the UML crossing minimization module with the same option settings.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
#define OGDF_MALLOC_NEW_DELETE
Makes the class use malloc for memory allocation.
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
The namespace for all OGDF objects.