128 int length()
const {
return m_V.high(); }
131 int len(
int i)
const {
return m_V[i].len(); }
165 friend class CompOrderBic;
Declaration and implementation of NodeArray class.
Class for adjacency list elements.
The parameterized class Array implements dynamic arrays of type E.
const_reference operator[](INDEX i) const
Returns a reference to the element at position i.
int high() const
Returns the maximal array index.
Data type for general directed graphs (adjacency list representation).
Doubly linked lists (maintaining the length of the list).
Dynamic arrays indexed with nodes.
Class for the representation of nodes.
The shelling order of a graph.
node right(int i) const
Returns the right-node of the i-th set Vi.
const ShellingOrderSet & operator[](int i) const
Returns the i-th set V_i
const Graph & getGraph() const
Returns the graph associated with the shelling order.
NodeArray< int > m_rank
the rank of nodes.
void init(const Graph &G, const List< ShellingOrderSet > &partition)
Initializes the shelling order for graph G with a given node partition.
void initLeftmost(const Graph &G, const List< ShellingOrderSet > &partition)
Initializes the shelling order for graph G with a given node partition and transforms it into a leftm...
void push(int k, node v, node tgt)
Array< ShellingOrderSet > m_V
the node partition.
const Graph * m_pGraph
the associated graph.
node operator()(int i, int j) const
Returns the j-th node of the i-th order set Vi.
ShellingOrder()
Creates an empty shelling order.
int length() const
Returns the number of sets in the node partition.
int len(int i) const
Returns the length of the i-th order set Vi.
node left(int i) const
Returns the left-node of the i-th set Vi.
int rank(node v) const
Returns the rank of node v, where rank(v) = i iff v is contained in Vi.
The node set in a shelling order of a graph.
ShellingOrderSet(int n, adjEntry adjL=nullptr, adjEntry adjR=nullptr)
Creates a shelling order set for n nodes.
adjEntry m_leftAdj
the adjacency entry pointing to the left-node.
node left() const
Returns the left-node of the set.
void left(node cl)
Sets the left-node to cl.
node m_leftVertex
the left-node of the set.
node operator[](const int i) const
Returns the i-th node in the order set from left (the leftmost node has index 1).
bool hasRight() const
Returns true iff the adjacency entry to the right-node exists.
adjEntry m_rightAdj
the adjacency entry pointing to the right-node.
adjEntry leftAdj() const
Returns the adjacency entry pointing from z1 to the left node (or 0 if no such node).
ShellingOrderSet()
Creates an empty shelling order set.
node & operator[](const int i)
Returns the i-th node in the order set from left (the leftmost node has index 1).
adjEntry rightAdj() const
Returns the adjacency entry pointing from zp to the right node (or 0 if no such node).
node m_rightVertex
the right-node of the set.
node right() const
Returns the right-node of the set.
int len() const
Returns the length of the order set, i.e., the number of contained nodes.
void leftAdj(adjEntry adjL)
Sets the adjacency entry pointing to the left-node to adjL.
void right(node cr)
Sets the right-node to cr.
bool hasLeft() const
Returns true iff the adjacency entry to the left-node exists.
void rightAdj(adjEntry adjR)
Sets the adjacency entry pointing to the right-node to adjR.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
The namespace for all OGDF objects.