|
| PlanRepInc (const UMLGraph &UG) |
| Constructor for interactive updates (parts added step by step) More...
|
|
| PlanRepInc (const UMLGraph &UG, const NodeArray< bool > &fixed) |
| Constructor for incremental updates (whole graph already given). The part to stay fixed has fixed value set to true. More...
|
|
void | activateEdge (edge e) |
| Sets activity status to true and updates the structures. More...
|
|
void | activateNode (node v) |
| Sets activity status to true and updates the structures. Node activation activates all adjacent edges. More...
|
|
int & | componentNumber (node v) |
| Component number. More...
|
|
adjEntry | getExtAdj (GraphCopy &GC, CombinatorialEmbedding &E) |
|
void | getExtAdjs (List< adjEntry > &extAdjs) |
| Sets a list of adjentries on "external" faces of unconnected active parts of the current CC. More...
|
|
void | initActiveCC (int i) |
| Inits a CC only with active elements. More...
|
|
node | initMinActiveCC (int i) |
| Inits a CC with at least one active node, makes a node active if necessary and returns it. Returns nullptr otherwise. More...
|
|
bool | makeTreeConnected (adjEntry adjExternal) |
| Handles copies of original CCs that are split into unconnected parts of active nodes by connecting them tree-like, adding necessary edges at "external" nodes of the partial CCs. Note that this only makes sense when the CC parts are already correctly embedded. More...
|
|
bool & | treeEdge (edge e) |
|
edge | treeEdge (int i, int j) const |
|
bool | treeInit () |
|
|
virtual void | nodeDeleted (node v) override |
| In the case that the underlying incremental structure changes, we update this copy. More...
|
|
virtual void | nodeAdded (node v) override |
| Called by watched graph after a node has been added. More...
|
|
virtual void | edgeDeleted (edge e) override |
| Called by watched graph just before an edge is deleted. More...
|
|
virtual void | edgeAdded (edge e) override |
| Called by watched graph after an edge has been added. More...
|
|
virtual void | cleared () override |
| Called by watched graph when its clear function is called, just before things are removed. More...
|
|
|
void | deleteTreeConnection (int i, int j) |
| Deletes an edge again. More...
|
|
void | deleteTreeConnection (int i, int j, CombinatorialEmbedding &E) |
|
|
virtual edge | split (edge e) override |
| Splits edge e, can be removed when edge status in edgetype m_treedge can be removed afterwards. More...
|
|
void | writeGML (const char *fileName) |
|
void | writeGML (const char *fileName, const Layout &drawing) |
|
void | writeGML (std::ostream &os, const GraphAttributes &AG) |
|
void | writeGML (std::ostream &os, const Layout &drawing, bool colorEmbed=true) |
|
int | genusLayout (Layout &drawing) const |
|
| ~PlanRepUML () |
| Deconstruction. More...
|
|
bool | faceSplitter (edge e) const |
| Returns true if an edge splits a face into two subfaces to guarantee generalizations to be on opposite sides of a node. More...
|
|
const UMLGraph & | getUMLGraph () const |
|
void | initCC (int i) |
|
void | removeFaceSplitter () |
| Removes all face splitting edges. More...
|
|
| PlanRepUML (const UMLGraph ¨Graph) |
| Construction. More...
|
|
| PlanRepUML (const GraphAttributes &GA) |
|
void | setupIncremental (int indexCC, CombinatorialEmbedding &E) |
| Initializes incremental stuff, e.g. insert incremental mergers. More...
|
|
const SList< node > & | incrementalMergers (int indexCC) const |
| Returns the list of inserted incremental mergers. More...
|
|
bool | alignUpward (adjEntry ae) |
|
void | alignUpward (adjEntry ae, bool b) |
|
node | insertGenMerger (node v, const SList< edge > &inGens, CombinatorialEmbedding &E) |
| Inserts a generalization merge node for all incoming generalizations of v and returns its conserving embedding. More...
|
|
void | expand (bool lowDegreeExpand=false) override |
| Expands nodes with degree > 4 and merge nodes for generalizations. More...
|
|
void | expandLowDegreeVertices (OrthoRep &OR, bool alignSmallDegree=false) |
| Expands nodes with degree <= 4 and aligns opposite edges at degree 2 nodes. More...
|
|
void | collapseVertices (const OrthoRep &OR, Layout &drawing) |
|
void | writeGML (const char *fileName, const Layout &drawing) |
| Writes attributed graph in GML format to file fileName (for debugging only) More...
|
|
void | writeGML (const char *fileName) |
|
void | writeGML (const char *fileName, GraphAttributes &AG) |
|
void | writeGML (std::ostream &os, const Layout &drawing) |
| Writes attributed graph in GML format to output stream os (for debugging only) More...
|
|
void | writeGML (const char *fileName, const OrthoRep &OR, const Layout &drawing) |
|
void | writeGML (std::ostream &os, const OrthoRep &OR, const Layout &drawing) |
|
void | writeGML (const char *fileName, const OrthoRep &OR, const GridLayoutMapped &drawing) |
|
void | writeGML (std::ostream &os, const OrthoRep &OR, const GridLayoutMapped &drawing) |
|
void | writeGML (const char *fileName, const OrthoRep &OR, const GridLayout &drawing) |
|
void | writeGML (std::ostream &os, const OrthoRep &OR, const GridLayout &drawing) |
|
| PlanRep (const Graph &G) |
| Creates a planarized representation of graph G . More...
|
|
| PlanRep (const GraphAttributes &AG) |
| Creates a planarized representation of graph AG . More...
|
|
virtual | ~PlanRep () |
|
int | numberOfCCs () const |
| Returns the number of connected components in the original graph. More...
|
|
int | currentCC () const |
| Returns the index of the current connected component (-1 if not yet initialized). More...
|
|
const CCsInfo & | ccInfo () const |
| Returns the connected components info structure. More...
|
|
int | numberOfNodesInCC () const |
| Returns the number of nodes in the current connected component. More...
|
|
int | numberOfNodesInCC (int cc) const |
| Returns the number of nodes in connected component cc . More...
|
|
node | v (int i) const |
| Returns node i in the list of all original nodes. More...
|
|
edge | e (int i) const |
| Returns edge i in the list of all original edges. More...
|
|
int | startNode () const |
| Returns the index of the first node in this connected component. More...
|
|
int | startNode (int cc) const |
| Returns the index of the first node in connected component cc . More...
|
|
int | stopNode () const |
| Returns the index of (one past) the last node in this connected component. More...
|
|
int | stopNode (int cc) const |
| Returns the index of (one past) the last node in connected component cc . More...
|
|
int | startEdge () const |
| Returns the index of the first edge in this connected component. More...
|
|
int | stopEdge () const |
| Returns the index of (one past) the last edge in this connected component. More...
|
|
void | initCC (int cc) |
| Initializes the planarized representation for connected component cc . More...
|
|
adjEntry | expandAdj (node v) const |
| Returns the adjacency entry of a node of an expanded face. More...
|
|
adjEntry & | expandAdj (node v) |
|
adjEntry | boundaryAdj (node v) const |
| Returns the adjacency entry of the first edge of the inserted boundary at a center node (original) of a clique, 0 if no boundary exists. More...
|
|
adjEntry & | boundaryAdj (node v) |
| Returns a reference to the adjacency entry of the first edge of the inserted boundary at a center node (original) of a clique, 0 if no boundary exists. More...
|
|
void | setCliqueBoundary (edge e) |
|
bool | isCliqueBoundary (edge e) const |
|
Graph::NodeType | typeOf (node v) const |
| Returns the type of node v . More...
|
|
Graph::NodeType & | typeOf (node v) |
| Returns a reference to the type of node v . More...
|
|
bool | isVertex (node v) const |
| Returns true if the node represents a "real" object in the original graph. More...
|
|
nodeType | nodeTypeOf (node v) |
| Returns the extended node type of v . More...
|
|
void | setCrossingType (node v) |
| Classifies node v as a crossing. More...
|
|
bool | isCrossingType (node v) const |
| Returns true iff node v is classified as a crossing. More...
|
|
EdgeType | typeOf (edge e) const |
| Returns the type of edge e . More...
|
|
EdgeType & | typeOf (edge e) |
| Returns a reference to the type of edge e . More...
|
|
edgeType & | oriEdgeTypes (edge e) |
| Returns a reference to the type of original edge e . More...
|
|
edgeType | edgeTypeOf (edge e) const |
| Returns the new type field of e . More...
|
|
edgeType & | edgeTypes (edge e) |
| Returns a reference to the new type field of e . More...
|
|
void | setEdgeTypeOf (edge e, edgeType et) |
| Sets the new type field of edge e to et . More...
|
|
void | setType (edge e, EdgeType et) |
| Set both type values of e at once. More...
|
|
bool | isGeneralization (edge e) const |
| Returns true iff edge e is classified as generalization. More...
|
|
void | setGeneralization (edge e) |
| Classifies edge e as generalization (primary type). More...
|
|
bool | isDependency (edge e) const |
| Returns true iff edge e is classified as dependency. More...
|
|
void | setDependency (edge e) |
| Classifies edge e as dependency (primary type). More...
|
|
void | setAssociation (edge e) |
| Classifies edge e as association (primary type). More...
|
|
void | setExpansion (edge e) |
| Classifies edge e as expansion edge (secondary type). More...
|
|
bool | isExpansion (edge e) const |
| Returns true iff edge e is classified as expansion edge. More...
|
|
bool | isBoundary (edge e) const |
| Returns true iff edge e is a clique boundary. More...
|
|
void | setAssClass (edge e) |
| Classifies edge e as connection at an association class (tertiary type). More...
|
|
bool | isAssClass (edge e) const |
| Returns true iff edge e is classified as connection at an association class. More...
|
|
void | setBrother (edge e) |
| Classifies edge e as connection between hierarchy neighbours (fourth level type). More...
|
|
void | setHalfBrother (edge e) |
| Classifies edge e as connection between ... (fourth level type). More...
|
|
bool | isBrother (edge e) const |
| Returns true if edge e is classified as brother. More...
|
|
bool | isHalfBrother (edge e) const |
| Returns true if edge e is classified as half-brother. More...
|
|
edgeType | edgeTypeAND (edge e, edgeType et) |
| Sets type of edge e to current type (bitwise) AND et . More...
|
|
edgeType | edgeTypeOR (edge e, edgeType et) |
| Sets type of edge e to current type (bitwise) OR et . More...
|
|
void | setPrimaryType (edge e, edgeType et) |
| Sets primary edge type of edge e to primary edge type in et (deletes old primary value). More...
|
|
void | setPrimaryType (edge e, UMLEdgeTypeConstants et) |
| Sets primary edge type of edge e to primary edge type in et (deletes old primary value). More...
|
|
void | setSecondaryType (edge e, edgeType et) |
| Sets secondary edge type of edge e to primary edge type in et . More...
|
|
edgeType | edgeTypePrimaryAND (edge e, edgeType et) |
| Sets primary type of e to bitwise AND of et's primary value and old value. More...
|
|
edgeType | edgeTypePrimaryOR (edge e, edgeType et) |
| Sets primary type of e to bitwise OR of et's primary value and old value. More...
|
|
void | setUserType (edge e, edgeType et) |
| Sets user defined type locally. More...
|
|
bool | isUserType (edge e, edgeType et) const |
| Returns user defined type. More...
|
|
void | setExpansionEdge (edge e, int expType) |
| Sets the expansion edge type of e to expType . More...
|
|
bool | isExpansionEdge (edge e) const |
| Returns if e is an expansion edge. More...
|
|
int | expansionType (edge e) const |
| Returns the expansion edge type of e . More...
|
|
bool | isDegreeExpansionEdge (edge e) const |
| Returns if e is a degree expansion edge. More...
|
|
const NodeArray< double > & | widthOrig () const |
| Gives access to the node array of the widths of original nodes. More...
|
|
double | widthOrig (node v) const |
| Returns the width of original node v . More...
|
|
const NodeArray< double > & | heightOrig () const |
| Gives access to the node array of the heights of original nodes. More...
|
|
double | heightOrig (node v) const |
| Returns the height of original node v . More...
|
|
EdgeType | typeOrig (edge e) const |
| Returns the type of original edge e . More...
|
|
const GraphAttributes & | getGraphAttributes () const |
| Returns the graph attributes of the original graph (the pointer may be 0). More...
|
|
void | expandLowDegreeVertices (OrthoRep &OR) |
|
void | collapseVertices (const OrthoRep &OR, Layout &drawing) |
|
void | collapseVertices (const OrthoRep &OR, GridLayout &drawing) |
|
void | removeCrossing (node v) |
|
void | insertBoundary (node center, adjEntry &adjExternal) |
|
node | expandedNode (node v) const |
|
void | setExpandedNode (node v, node w) |
|
node | newCopy (node vOrig, Graph::NodeType vType) |
| Creates a new node with node type vType in the planarized representation. More...
|
|
edge | newCopy (node v, adjEntry adjAfter, edge eOrig) |
| Creates a new edge in the planarized representation. More...
|
|
edge | newCopy (node v, adjEntry adjAfter, edge eOrig, CombinatorialEmbedding &E) |
| Creates a new edge in the planarized representation while updating the embedding E . More...
|
|
void | insertEdgePath (edge eOrig, const SList< adjEntry > &crossedEdges) |
| Re-inserts edge eOrig by "crossing" the edges in crossedEdges . More...
|
|
void | insertEdgePathEmbedded (edge eOrig, CombinatorialEmbedding &E, const SList< adjEntry > &crossedEdges) |
| Same as insertEdgePath, but for embedded graphs. More...
|
|
void | removeEdgePathEmbedded (CombinatorialEmbedding &E, edge eOrig, FaceSet< false > &newFaces) |
| Removes the complete edge path for edge eOrig while preserving the embedding. More...
|
|
edge | insertCrossing (edge &crossingEdge, edge crossedEdge, bool topDown) |
| Inserts crossings between two copy edges. More...
|
|
void | removeDeg1Nodes (ArrayBuffer< Deg1RestoreInfo > &S, const NodeArray< bool > &mark) |
| Removes all marked degree-1 nodes from the graph copy and stores restore information in S . More...
|
|
void | restoreDeg1Nodes (ArrayBuffer< Deg1RestoreInfo > &S, List< node > °1s) |
| Restores degree-1 nodes previously removed with removeDeg1Nodes(). More...
|
|
| GraphCopy () |
|
| GraphCopy (const Graph &G) |
|
| GraphCopy (const Graph *G) |
|
| GraphCopy (const GraphCopy &other) |
|
void | clear () override |
| Removes all nodes and edges from this copy but does not break the link with the original graph. More...
|
|
GraphCopy & | operator= (const GraphCopy &other) |
|
void | setOriginalGraph (const Graph &G) |
| Re-initializes the copy using G , but does not create any nodes or edges. More...
|
|
void | setOriginalGraph (const Graph *G) override |
| Associates the graph copy with G , but does not create any nodes or edges. More...
|
|
virtual void | setOriginalGraph (const Graph *G)=0 |
| Re-initializes the copy using G (which might be null), but does not create any nodes or edges. More...
|
|
const List< edge > & | chain (edge e) const |
| Returns the list of edges coresponding to edge e . More...
|
|
edge | copy (edge e) const override |
| Returns the first edge in the list of edges corresponding to edge e . More...
|
|
adjEntry | copy (adjEntry adj) const override |
| Returns the adjacency entry in the copy graph corresponding to adj . More...
|
|
bool | isReversed (edge e) const |
| Returns true iff edge e has been reversed. More...
|
|
bool | isReversedCopyEdge (edge e) const |
| Returns true iff e is reversed w.r.t. More...
|
|
node | copy (node v) const |
| Returns the node in the graph copy corresponding to v . More...
|
|
virtual edge | copy (edge e) const=0 |
| Returns the edge in the graph copy corresponding to e . More...
|
|
virtual adjEntry | copy (adjEntry adj) const=0 |
| Returns the adjacency entry in the graph copy corresponding to adj . More...
|
|
void | delEdge (edge e) override |
| Removes edge e and clears the list of edges corresponding to e's original edge. More...
|
|
void | unsplit (edge eIn, edge eOut) override |
| Undoes a previous split operation. More...
|
|
edge | newEdge (edge eOrig) |
| Creates a new edge (v,w) with original edge eOrig. More...
|
|
void | setEdge (edge eOrig, edge eCopy) |
| sets eOrig to be the corresponding original edge of eCopy and vice versa More...
|
|
void | setOriginalEmbedding () override |
| Sets the embedding of the graph copy to the embedding of the original graph. More...
|
|
void | removePseudoCrossings () |
| Removes all crossing nodes which are actually only two "touching" edges. More...
|
|
bool | hasSameEdgesCrossings () const |
| Returns whether there are two edges in the GraphCopy that cross each other multiple times. More...
|
|
bool | hasAdjacentEdgesCrossings () const |
| Returns whether the GraphCopy contains at least one crossing of two adjacent edges. More...
|
|
bool | hasNonSimpleCrossings () const |
| Returns whether the GraphCopy contains crossings that will result in a non-simple drawing. More...
|
|
void | removeNonSimpleCrossings (SListPure< edge > &edgesToCheck, DynamicDualGraph *dualGraph=nullptr) |
| Removes all non-simple cossings involving edges from edgesToCheck (see hasNonSimpleCrossings() for a definition of non-simple crossings). More...
|
|
void | removeNonSimpleCrossings (DynamicDualGraph *dualGraph=nullptr) |
| Removes all non-simple cossings (see hasNonSimpleCrossings() for a definition of non-simple crossings). More...
|
|
void | removeNonSimpleCrossings (node origNode, DynamicDualGraph *dualGraph=nullptr) |
| Removes all non-simple cossings involving edges incident to origNode (see hasNonSimpleCrossings() for a definition of non-simple crossings). More...
|
|
void | insertEdgePath (edge eOrig, const SList< adjEntry > &crossedEdges) |
| Re-inserts edge eOrig by "crossing" the edges in crossedEdges . More...
|
|
void | insertEdgePath (node srcOrig, node tgtOrig, const SList< adjEntry > &crossedEdges) |
| Special version (for FixedEmbeddingUpwardEdgeInserter only). More...
|
|
void | removeEdgePath (edge eOrig) |
| Removes the complete edge path for edge eOrig . More...
|
|
edge | insertCrossing (edge &crossingEdge, edge crossedEdge, bool rightToLeft) |
| Inserts crossings between two copy edges. More...
|
|
edge | newEdge (node v, node w, int index=-1) |
| Creates a new edge (v ,w ) and returns it. More...
|
|
edge | newEdge (node v, adjEntry adjTgt, int index=-1) |
| Creates a new edge at predefined positions in the adjacency lists. More...
|
|
edge | newEdge (adjEntry adjSrc, node w, int index=-1) |
| Creates a new edge at predefined positions in the adjacency lists. More...
|
|
edge | newEdge (adjEntry adjSrc, adjEntry adjTgt, Direction dir=Direction::after, int index=-1) |
| Creates a new edge at predefined positions in the adjacency lists. More...
|
|
template<typename S , typename T > |
edge | newEdge (S src, Direction dirSrc, T tgt, Direction dirTgt, int index=-1) |
| Creates a new edge at predefined positions in the adjacency lists. More...
|
|
edge | newEdge (node v, adjEntry adj, edge eOrig, CombinatorialEmbedding &E) |
| Creates a new edge with original edge eOrig in an embedding E . More...
|
|
void | insertEdgePathEmbedded (edge eOrig, CombinatorialEmbedding &E, const SList< adjEntry > &crossedEdges) |
| Re-inserts edge eOrig by "crossing" the edges in crossedEdges in embedding E . More...
|
|
void | insertEdgePathEmbedded (edge eOrig, CombinatorialEmbedding &E, DynamicDualGraph &dual, const SList< adjEntry > &crossedEdges) |
|
void | removeEdgePathEmbedded (CombinatorialEmbedding &E, edge eOrig, FaceSet< false > &newFaces) |
| Removes the complete edge path for edge eOrig while preserving the embedding. More...
|
|
void | removeEdgePathEmbedded (CombinatorialEmbedding &E, DynamicDualGraph &dual, edge eOrig) |
|
void | consistencyCheck () const |
| Asserts that this copy is consistent. More...
|
|
| GraphCopyBase ()=default |
| Constructs a GraphCopyBase associated with no graph. More...
|
|
| GraphCopyBase (const GraphCopyBase &other)=delete |
|
| GraphCopyBase (GraphCopyBase &&other) noexcept=delete |
|
node | copy (node v) const |
| Returns the node in the graph copy corresponding to v . More...
|
|
void | createEmpty (const Graph &G) |
| Re-initializes the copy using G , but does not create any nodes or edges. More...
|
|
void | delNode (node v) override |
| Removes node v . More...
|
|
bool | getLinkCopiesOnInsert () const |
|
const Graph * | getOriginalGraph () const |
|
void | init (const Graph &G) |
| Re-initializes the copy using G , creating copies for all nodes and edges in G . More...
|
|
void | init (const Graph *G) |
| Re-initializes the copy using G (which might be null), creating copies for all nodes and edges in G . More...
|
|
bool | isDummy (adjEntry adj) const |
| Returns true iff adj->theEdge() has no corresponding edge in the original graph. More...
|
|
bool | isDummy (edge e) const |
| Returns true iff e has no corresponding edge in the original graph. More...
|
|
bool | isDummy (node v) const |
| Returns true iff v has no corresponding node in the original graph. More...
|
|
node | newNode (int index=-1) |
| Creates a new node and returns it. More...
|
|
node | newNode (node vOrig) |
| Creates a new node in the graph copy with original node vOrig . More...
|
|
GraphCopyBase & | operator= (const GraphCopyBase &other)=delete |
|
GraphCopyBase & | operator= (GraphCopyBase &&other) noexcept=delete |
|
const Graph & | original () const |
| Returns a reference to the original graph. More...
|
|
adjEntry | original (adjEntry adj) const |
| Returns the adjacency entry in the original graph corresponding to adj . More...
|
|
edge | original (edge e) const |
| Returns the edge in the original graph corresponding to e . More...
|
|
node | original (node v) const |
| Returns the node in the original graph corresponding to v . More...
|
|
void | setLinkCopiesOnInsert (bool linkCopiesOnInsert) |
| Whether insert(getOriginalGraph()) will automatically set copy and original . More...
|
|
void | setOriginalGraph (const Graph &G) |
| Re-initializes the copy using G , but does not create any nodes or edges. More...
|
|
| Graph () |
| Constructs an empty graph. More...
|
|
| Graph (const Graph ©) |
| Constructs a graph that is a copy of G . More...
|
|
| Graph (Graph &&move)=delete |
|
virtual | ~Graph () |
| Destructor. More...
|
|
Graph & | operator= (const Graph ©) |
| Overwrites this graph to be a copy of G . More...
|
|
Graph & | operator= (Graph &&move)=delete |
|
bool | empty () const |
| Returns true iff the graph is empty, i.e., contains no nodes. More...
|
|
int | numberOfNodes () const |
| Returns the number of nodes in the graph. More...
|
|
int | numberOfEdges () const |
| Returns the number of edges in the graph. More...
|
|
int | maxNodeIndex () const |
| Returns the largest used node index. More...
|
|
int | maxEdgeIndex () const |
| Returns the largest used edge index. More...
|
|
int | maxAdjEntryIndex () const |
| Returns the largest used adjEntry index. More...
|
|
node | firstNode () const |
| Returns the first node in the list of all nodes. More...
|
|
node | lastNode () const |
| Returns the last node in the list of all nodes. More...
|
|
edge | firstEdge () const |
| Returns the first edge in the list of all edges. More...
|
|
edge | lastEdge () const |
| Returns the last edge in the list of all edges. More...
|
|
node | chooseNode (std::function< bool(node)> includeNode=[](node) { return true;}, bool isFastTest=true) const |
| Returns a random node. More...
|
|
edge | chooseEdge (std::function< bool(edge)> includeEdge=[](edge) { return true;}, bool isFastTest=true) const |
| Returns a random edge. More...
|
|
template<class CONTAINER > |
void | allNodes (CONTAINER &nodeContainer) const |
| Returns a container with all nodes of the graph. More...
|
|
template<class CONTAINER > |
void | allEdges (CONTAINER &edgeContainer) const |
| Returns a container with all edges of the graph. More...
|
|
node | newNode (int index=-1) |
| Creates a new node and returns it. More...
|
|
edge | newEdge (node v, node w, int index=-1) |
| Creates a new edge (v ,w ) and returns it. More...
|
|
edge | newEdge (node v, adjEntry adjTgt, int index=-1) |
| Creates a new edge at predefined positions in the adjacency lists. More...
|
|
edge | newEdge (adjEntry adjSrc, node w, int index=-1) |
| Creates a new edge at predefined positions in the adjacency lists. More...
|
|
edge | newEdge (adjEntry adjSrc, adjEntry adjTgt, Direction dir=Direction::after, int index=-1) |
| Creates a new edge at predefined positions in the adjacency lists. More...
|
|
template<typename S , typename T > |
edge | newEdge (S src, Direction dirSrc, T tgt, Direction dirTgt, int index=-1) |
| Creates a new edge at predefined positions in the adjacency lists. More...
|
|
void | restoreAllEdges () |
| Restore all hidden edges and invalidate all HiddenEdgeSets. More...
|
|
void | unsplit (node u) |
| Undoes a split operation. More...
|
|
node | splitNode (adjEntry adjStartLeft, adjEntry adjStartRight) |
| Splits a node while preserving the order of adjacency entries. More...
|
|
node | contract (edge e, bool keepSelfLoops=false) |
| Contracts edge e while preserving the order of adjacency entries. More...
|
|
void | move (edge e, adjEntry adjSrc, Direction dirSrc, adjEntry adjTgt, Direction dirTgt) |
| Moves edge e to a different adjacency list. More...
|
|
void | moveTarget (edge e, node w) |
| Moves the target node of edge e to node w . More...
|
|
void | moveTarget (edge e, adjEntry adjTgt, Direction dir) |
| Moves the target node of edge e to a specific position in an adjacency list. More...
|
|
void | moveSource (edge e, node w) |
| Moves the source node of edge e to node w . More...
|
|
void | moveSource (edge e, adjEntry adjSrc, Direction dir) |
| Moves the source node of edge e to a specific position in an adjacency list. More...
|
|
edge | searchEdge (node v, node w, bool directed=false) const |
| Searches and returns an edge connecting nodes v and w in time O( min(deg(v ), deg(w ))). More...
|
|
void | reverseEdge (edge e) |
| Reverses the edge e , i.e., exchanges source and target node. More...
|
|
void | reverseAllEdges () |
| Reverses all edges in the graph. More...
|
|
template<class NODELIST > |
void | collapse (NODELIST &nodesToCollapse) |
| Collapses all nodes in the list nodesToCollapse to the first node in the list. More...
|
|
template<class ADJ_ENTRY_LIST > |
void | sort (node v, const ADJ_ENTRY_LIST &newOrder) |
| Sorts the adjacency list of node v according to newOrder . More...
|
|
template<class IT > |
void | sort (node v, IT begin, IT end) |
| Sorts the adjacency list of node v according to the range denoted by two iterators. More...
|
|
void | reverseAdjEdges (node v) |
| Reverses the adjacency list of v . More...
|
|
void | moveAdj (adjEntry adjMove, Direction dir, adjEntry adjPos) |
| Moves adjacency entry adjMove before or after adjPos . More...
|
|
void | moveAdjAfter (adjEntry adjMove, adjEntry adjAfter) |
| Moves adjacency entry adjMove after adjAfter . More...
|
|
void | moveAdjBefore (adjEntry adjMove, adjEntry adjBefore) |
| Moves adjacency entry adjMove before adjBefore . More...
|
|
void | reverseAdjEdges () |
| Reverses all adjacency lists. More...
|
|
void | swapAdjEdges (adjEntry adj1, adjEntry adj2) |
| Exchanges two entries in an adjacency list. More...
|
|
int | genus () const |
| Returns the genus of the graph's embedding. More...
|
|
bool | representsCombEmbedding () const |
| Returns true iff the graph represents a combinatorial embedding. More...
|
|
void | consistencyCheck () const |
| Asserts that this graph is consistent. More...
|
|
internal::GraphNodeRegistry & | nodeRegistry () |
| Returns a reference to the registry of node arrays associated with this graph. More...
|
|
const internal::GraphNodeRegistry & | nodeRegistry () const |
| Returns a const reference to the registry of node arrays associated with this graph. More...
|
|
| operator const internal::GraphNodeRegistry & () const |
|
internal::GraphEdgeRegistry & | edgeRegistry () |
| Returns a reference to the registry of edge arrays associated with this graph. More...
|
|
const internal::GraphEdgeRegistry & | edgeRegistry () const |
| Returns a const reference to the registry of edge arrays associated with this graph. More...
|
|
| operator const internal::GraphEdgeRegistry & () const |
|
internal::GraphAdjRegistry & | adjEntryRegistry () |
| Returns a reference to the registry of adjEntry arrays associated with this graph. More...
|
|
const internal::GraphAdjRegistry & | adjEntryRegistry () const |
| Returns a const reference to the registry of adjEntry arrays associated with this graph. More...
|
|
| operator const internal::GraphAdjRegistry & () const |
|
void | resetEdgeIdCount (int maxId) |
| Resets the edge id count to maxId . More...
|
|
void | resetNodeIdCount (int maxId) |
|
template<OGDF_NODE_ITER NI, OGDF_EDGE_ITER EI, bool copyEmbedding = true, bool copyIDs = false, bool notifyObservers = true> |
std::pair< int, int > | insert (const NI &nodesBegin, const NI &nodesEnd, const EI &edgesBegin, const EI &edgesEnd, NodeArray< node > &nodeMap, EdgeArray< edge > &edgeMap) |
| Inserts a copy of a given subgraph into this graph. More...
|
|
template<OGDF_NODE_ITER NI, OGDF_EDGE_FILTER EF, bool copyIDs = false, bool notifyObservers = true> |
std::pair< int, int > | insert (const NI &nodesBegin, const NI &nodesEnd, const EF &edgeFilter, NodeArray< node > &nodeMap, EdgeArray< edge > &edgeMap) |
| Inserts a copy of a given subgraph into this graph. More...
|
|
template<OGDF_NODE_LIST NL> |
std::pair< int, int > | insert (const NL &nodeList, const EdgeSet< true > &edgeSet, NodeArray< node > &nodeMap, EdgeArray< edge > &edgeMap) |
| Inserts a copy of a given subgraph into this graph. More...
|
|
template<OGDF_NODE_LIST NL> |
std::pair< int, int > | insert (const NL &nodeList, const EdgeSet< false > &edgeSet, NodeArray< node > &nodeMap, EdgeArray< edge > &edgeMap) |
| Inserts a copy of a given subgraph into this graph. More...
|
|
template<OGDF_NODE_LIST NL, OGDF_EDGE_LIST EL> |
std::pair< int, int > | insert (const NL &nodeList, const EL &edgeList, NodeArray< node > &nodeMap, EdgeArray< edge > &edgeMap) |
| Inserts a copy of a given subgraph into this graph. More...
|
|
std::pair< int, int > | insert (const CCsInfo &info, int cc, NodeArray< node > &nodeMap, EdgeArray< edge > &edgeMap) |
| Inserts a copy of a given connected component cc into this graph. More...
|
|
std::pair< int, int > | insert (const Graph &G, NodeArray< node > &nodeMap, EdgeArray< edge > &edgeMap) |
| Inserts a copy of a given Graph G into this graph. More...
|
|
std::pair< int, int > | insert (const Graph &G) |
| Inserts a copy of a given Graph G into this graph. More...
|
|
| Observable ()=default |
|
| Observable (const Observable ©)=delete |
| If you want to copy a subclass of Observable, call the default Observable() constructor. More...
|
|
| Observable (Observable &&move)=delete |
| If you want to move a subclass of Observable, call the default Observable() constructor. More...
|
|
virtual | ~Observable () |
|
Observable & | operator= (const Observable ©)=delete |
|
Observable & | operator= (Observable &&move)=delete |
|
| GraphObserver ()=default |
| Constructs instance of GraphObserver class. More...
|
|
| GraphObserver (const Graph *G) |
| Constructs instance of GraphObserver class. More...
|
|
const Graph * | getGraph () const |
|
| Observer ()=default |
| Constructs instance of Observer class. More...
|
|
| Observer (const Observer ©)=delete |
| If you want to copy a subclass of Observer, call the default Observer() constructor and optionally also call reregister if it makes sense. More...
|
|
| Observer (Observer &&move)=delete |
| If you want to move a subclass of Observer, call the default Observer() constructor and optionally also call reregister if it makes sense. More...
|
|
virtual | ~Observer () |
| Destroys the instance, unregisters it from watched instance. More...
|
|
const Graph * | getObserved () const |
|
Observer & | operator= (const Observer ©)=delete |
|
Observer & | operator= (Observer &&move)=delete |
|
virtual void | registrationChanged (const Graph *old) |
| Called after reregister() changed the observed instance. More...
|
|
void | reregister (const Graph *obs) |
| Associates observer instance with instance obs . More...
|
|