Edge insertion module that inserts each edge optimally into a fixed embedding. More...
#include <ogdf/uml/FixedEmbeddingInserterUML.h>
Public Member Functions | |
FixedEmbeddingInserterUML () | |
Creates an instance of variable embedding edge inserter with default settings. More... | |
FixedEmbeddingInserterUML (const FixedEmbeddingInserterUML &inserter) | |
Creates an instance of fixed embedding edge inserter with the same settings as inserter . More... | |
~FixedEmbeddingInserterUML () | |
Destructor. More... | |
virtual UMLEdgeInsertionModule * | clone () const override |
Returns a new instance of the fixed embedding inserter with the same option settings. More... | |
FixedEmbeddingInserterUML & | operator= (const FixedEmbeddingInserterUML &inserter) |
Assignment operator. Copies option settings only. More... | |
Optional parameters | |
void | removeReinsert (RemoveReinsertType rrOption) |
Sets the remove-reinsert postprocessing method. More... | |
RemoveReinsertType | removeReinsert () const |
Returns the current setting of the remove-reinsert postprocessing method. More... | |
void | percentMostCrossed (double percent) |
Sets the option percentMostCrossed to percent . More... | |
double | percentMostCrossed () const |
Returns the current setting of option percentMostCrossed. More... | |
void | keepEmbedding (bool keep) |
Sets the option keepEmbedding to keep . More... | |
bool | keepEmbeding () const |
Returns the current setting of option keepEmbedding. More... | |
Public Member Functions inherited from ogdf::UMLEdgeInsertionModule | |
UMLEdgeInsertionModule () | |
Initializes a UML edge insertion module (default constructor). More... | |
UMLEdgeInsertionModule (const UMLEdgeInsertionModule &eim) | |
Initializes a UML edge insertion module (copy constructor). More... | |
virtual | ~UMLEdgeInsertionModule () |
Destructor. More... | |
ReturnType | call (PlanRepLight &pr, const Array< edge > &origEdges) |
Inserts all edges in origEdges into pr while avoiding crossings between generalizations. More... | |
ReturnType | call (PlanRepLight &pr, const Array< edge > &origEdges, const EdgeArray< int > &costOrig) |
Inserts all edges in origEdges with given costs into pr while avoiding crossings between generalizations. More... | |
ReturnType | callEx (PlanRepLight &pr, const Array< edge > &origEdges, const EdgeArray< int > *pCostOrig=nullptr, const EdgeArray< uint32_t > *pEdgeSubGraphs=nullptr) |
Inserts all edges in origEdges into pr while avoiding crossings between generalizations, optionally costs and subgraphs may be given. More... | |
Public Member Functions inherited from ogdf::Module | |
Module () | |
Initializes a module. More... | |
virtual | ~Module () |
Public Member Functions inherited from ogdf::Timeouter | |
Timeouter () | |
timeout is turned of by default More... | |
Timeouter (bool t) | |
timeout is turned off (false) or on (true) (with 0 second) More... | |
Timeouter (const Timeouter &t) | |
Timeouter (double t) | |
timeout is set to the given value (seconds) More... | |
~Timeouter () | |
bool | isTimeLimit () const |
returns whether any time limit is set or not More... | |
Timeouter & | operator= (const Timeouter &t) |
double | timeLimit () const |
returns the current time limit for the call More... | |
void | timeLimit (bool t) |
shorthand to turn timelimit off or on (with 0 seconds) More... | |
void | timeLimit (double t) |
sets the time limit for the call (in seconds); <0 means no limit. More... | |
Private Member Functions | |
virtual ReturnType | doCall (PlanRepLight &pr, const Array< edge > &origEdges, const EdgeArray< int > *pCostOrig, const EdgeArray< uint32_t > *pEdgeSubgraph) override |
Implements the algorithm call. More... | |
Private Attributes | |
bool | m_keepEmbedding |
double | m_percentMostCrossed |
The portion of most crossed edges considered. More... | |
RemoveReinsertType | m_rrOption |
The remove-reinsert method. 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... | |
Protected Attributes inherited from ogdf::Timeouter | |
double | m_timeLimit |
Time limit for module calls (< 0 means no limit). More... | |
Edge insertion module that inserts each edge optimally into a fixed embedding.
Definition at line 46 of file FixedEmbeddingInserterUML.h.
ogdf::FixedEmbeddingInserterUML::FixedEmbeddingInserterUML | ( | ) |
Creates an instance of variable embedding edge inserter with default settings.
ogdf::FixedEmbeddingInserterUML::FixedEmbeddingInserterUML | ( | const FixedEmbeddingInserterUML & | inserter | ) |
Creates an instance of fixed embedding edge inserter with the same settings as inserter
.
|
inline |
Destructor.
Definition at line 55 of file FixedEmbeddingInserterUML.h.
|
overridevirtual |
Returns a new instance of the fixed embedding inserter with the same option settings.
Implements ogdf::UMLEdgeInsertionModule.
|
overrideprivatevirtual |
Implements the algorithm call.
Implements ogdf::UMLEdgeInsertionModule.
|
inline |
Sets the option keepEmbedding to keep
.
This option determines if the planar embedding of the planarized representation PG passed to the call-method is preserved, or if always a new embedding is computed. If keepEmbedding is set to true, PG must always be planarly embedded.
Definition at line 90 of file FixedEmbeddingInserterUML.h.
|
inline |
Returns the current setting of option keepEmbedding.
Definition at line 93 of file FixedEmbeddingInserterUML.h.
FixedEmbeddingInserterUML& ogdf::FixedEmbeddingInserterUML::operator= | ( | const FixedEmbeddingInserterUML & | inserter | ) |
Assignment operator. Copies option settings only.
|
inline |
Returns the current setting of option percentMostCrossed.
Definition at line 82 of file FixedEmbeddingInserterUML.h.
|
inline |
Sets the option percentMostCrossed to percent
.
This option determines the portion of most crossed edges used if the remove-reinsert method is set to RemoveReinsertType::MostCrossed. This portion is number of edges * percentMostCrossed() / 100.
Definition at line 79 of file FixedEmbeddingInserterUML.h.
|
inline |
Returns the current setting of the remove-reinsert postprocessing method.
Definition at line 72 of file FixedEmbeddingInserterUML.h.
|
inline |
Sets the remove-reinsert postprocessing method.
Definition at line 69 of file FixedEmbeddingInserterUML.h.
|
private |
Definition at line 104 of file FixedEmbeddingInserterUML.h.
|
private |
The portion of most crossed edges considered.
Definition at line 103 of file FixedEmbeddingInserterUML.h.
|
private |
The remove-reinsert method.
Definition at line 102 of file FixedEmbeddingInserterUML.h.