Edge standard representation of hypergraphs. More...
#include <ogdf/hypergraph/EdgeStandardRep.h>
Inheritance diagram for ogdf::EdgeStandardRep:Public Member Functions | |
| EdgeStandardRep () | |
| Creates an edge standard representation. | |
| EdgeStandardRep (const Hypergraph &pH, EdgeStandardType pType) | |
Creates an edge standard rep. of a given pType associated with pH. | |
| virtual | ~EdgeStandardRep () |
| Destructor. | |
| void | clear () |
| Clears all cluster data. | |
| const Graph & | constGraph () const |
| Returns a reference to the representation graph. | |
| const List< node > & | dummyNodes () const |
| Returns the list of dummy nodes. | |
| const List< edge > & | edgeMap (hyperedge e) |
| Returns the list of edges associated with the hyperedge. | |
| hyperedge | hyperedgeMap (edge e) |
| Returns the hyperedge associated with the edge. | |
| const Hypergraph & | hypergraph () const |
| Conversion to original hypergraph reference. | |
| hypernode | hypernodeMap (node v) |
| Returns the hypernode associated with the node (if any). | |
| node | nodeMap (hypernode v) |
| Returns the node associated with the hypernode. | |
| EdgeStandardType | type () const |
| Returns the type of edge standard representation. | |
Public Member Functions inherited from ogdf::HypergraphObserver | |
| HypergraphObserver ()=default | |
| Constructor. | |
| HypergraphObserver (const Hypergraph *pH) | |
Constructor assigning pH hypergraph to the observer. | |
| const Hypergraph * | hypergraph () const |
| Returns the observer hypergraph. | |
| void | init (const Hypergraph *pH) |
Associates an observer instance with hypergraph pH. | |
Public Member Functions inherited from ogdf::Observer< Hypergraph, HypergraphObserver > | |
| Observer ()=default | |
| Constructs unregistered instance of Observer class. | |
| Observer (const Hypergraph *R) | |
| 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. | |
| 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. | |
| virtual | ~Observer () |
| Destroys the instance, unregisters it from watched instance. | |
| const Hypergraph * | getObserved () const |
| Observer & | operator= (const Observer ©)=delete |
| Observer & | operator= (Observer &&move)=delete |
| virtual void | registrationChanged (const Hypergraph *old) |
| Called after reregister() changed the observed instance. | |
| void | reregister (const Hypergraph *obs) |
Associates observer instance with instance obs. | |
Protected Member Functions | |
| virtual void | cleared () override |
| Hypergraph clean-up reaction. | |
| virtual void | hyperedgeAdded (hyperedge e) override |
| Hyperedge addition reaction. | |
| virtual void | hyperedgeDeleted (hyperedge e) override |
| Hyperedge removal reaction. | |
| virtual void | hypernodeAdded (hypernode v) override |
| Hypernode addition reaction. | |
| virtual void | hypernodeDeleted (hypernode v) override |
| Hypernode removal reaction. | |
Private Member Functions | |
| void | cloneHypernodes () |
| void | constructCliqueRep () |
| void | constructStarRep () |
| void | constructTreeRep () |
| void | hyperedgeToClique (hyperedge e) |
| void | hyperedgeToTree (hyperedge e, int degree) |
Private Attributes | |
| List< node > | m_dummyNodes |
| The list of all newly created nodes. | |
| HyperedgeArray< List< edge > > | m_edgeMap |
| The map from representation hyperedge to edges. | |
| Graph | m_graphRep |
| Edge standard representation of the hypergraph. | |
| EdgeArray< hyperedge > | m_hyperedgeMap |
| The map from representation edge to hyperedges. | |
| const Hypergraph * | m_hypergraph |
| The reference to the original hypergraph. | |
| NodeArray< hypernode > | m_hypernodeMap |
| The map from representation nodes to hypernodes. | |
| HypernodeArray< node > | m_nodeMap |
| The map from representation hypernodes to nodes. | |
| EdgeStandardType | m_type |
| The type of edge standard representation. | |
Edge standard representation of hypergraphs.
Definition at line 68 of file EdgeStandardRep.h.
| ogdf::EdgeStandardRep::EdgeStandardRep | ( | ) |
Creates an edge standard representation.
| ogdf::EdgeStandardRep::EdgeStandardRep | ( | const Hypergraph & | pH, |
| EdgeStandardType | pType | ||
| ) |
Creates an edge standard rep. of a given pType associated with pH.
|
virtual |
Destructor.
| void ogdf::EdgeStandardRep::clear | ( | ) |
Clears all cluster data.
|
overrideprotectedvirtual |
Hypergraph clean-up reaction.
Implements ogdf::HypergraphObserver.
|
private |
|
inline |
Returns a reference to the representation graph.
Definition at line 111 of file EdgeStandardRep.h.
|
private |
|
private |
|
private |
Returns the list of dummy nodes.
Definition at line 129 of file EdgeStandardRep.h.
Returns the list of edges associated with the hyperedge.
Definition at line 123 of file EdgeStandardRep.h.
|
overrideprotectedvirtual |
Hyperedge addition reaction.
Implements ogdf::HypergraphObserver.
|
overrideprotectedvirtual |
Hyperedge removal reaction.
Implements ogdf::HypergraphObserver.
Returns the hyperedge associated with the edge.
Definition at line 126 of file EdgeStandardRep.h.
|
private |
|
private |
|
inline |
Conversion to original hypergraph reference.
Definition at line 108 of file EdgeStandardRep.h.
|
overrideprotectedvirtual |
Hypernode addition reaction.
Implements ogdf::HypergraphObserver.
|
overrideprotectedvirtual |
Hypernode removal reaction.
Implements ogdf::HypergraphObserver.
Returns the hypernode associated with the node (if any).
Definition at line 120 of file EdgeStandardRep.h.
Returns the node associated with the hypernode.
Definition at line 117 of file EdgeStandardRep.h.
|
inline |
Returns the type of edge standard representation.
Definition at line 114 of file EdgeStandardRep.h.
The list of all newly created nodes.
Definition at line 92 of file EdgeStandardRep.h.
|
private |
The map from representation hyperedge to edges.
Definition at line 89 of file EdgeStandardRep.h.
|
private |
Edge standard representation of the hypergraph.
Definition at line 77 of file EdgeStandardRep.h.
The map from representation edge to hyperedges.
Definition at line 86 of file EdgeStandardRep.h.
|
private |
The reference to the original hypergraph.
Definition at line 74 of file EdgeStandardRep.h.
The map from representation nodes to hypernodes.
Definition at line 80 of file EdgeStandardRep.h.
|
private |
The map from representation hypernodes to nodes.
Definition at line 83 of file EdgeStandardRep.h.
|
private |
The type of edge standard representation.
Definition at line 71 of file EdgeStandardRep.h.