69 base.m_pGraph =
nullptr;
94 m_it =
pG->registerArray(
this);
105 base.m_pGraph =
nullptr;
231 OGDF_DEPRECATED(
"Edge arrays should be indexed by an edge, not an integer index.")
237 OGDF_DEPRECATED(
"Edge arrays should be indexed by an edge, not an integer index.")
Pure declaration header, find template implementation in Graph.h.
Class for adjacency list elements.
int index() const
Returns the index of this adjacency element.
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.
void resize(INDEX newSize, const E &x)
Resizes (enlarges or shrinks) the array to hold newSize elements and sets new elements to x.
INDEX high() const
Returns the maximal array index.
void init()
Reinitializes the array to an array with empty index set.
void fill(const E &x)
Sets all elements to x.
Array< E, INDEX > & operator=(const Array< E, INDEX > &A)
Assignment operator.
INDEX low() const
Returns the minimal array index.
Bucket function for edges.
int getBucket(const edge &e) override
Returns bucket of edge e.
const EdgeArray< int > * m_pEdgeArray
Pointer to edge array.
BucketEdgeArray(const EdgeArray< int > &edgeArray)
Constructs a bucket function.
Abstract base class for bucket functions.
Abstract base class for edge arrays.
const Graph * m_pGraph
The associated graph.
EdgeArrayBase()
Initializes an edge array not associated with a graph.
EdgeArrayBase(const Graph *pG)
Initializes an edge array associated with pG.
virtual void reinit(int initTableSize)=0
Virtual function called when table has to be reinitialized.
void moveRegister(EdgeArrayBase &base)
Moves array registration from base to this array.
EdgeArrayBase(EdgeArrayBase &base)
Moves edge array base to this edge array.
ListIterator< EdgeArrayBase * > m_it
Pointer to list element in the list of all registered edge arrays which references this array.
void reregister(const Graph *pG)
Associates the array with a new graph.
virtual void enlargeTable(int newTableSize)=0
Virtual function called when table size has to be enlarged.
virtual void disconnect()=0
Virtual function called when array is disconnected from the graph.
Dynamic arrays indexed with edges.
const_iterator end() const
Returns a const iterator to one-past-last entry in the edge array.
const T & operator()(adjEntry adj) const
Returns a reference to the element with index edge of adj.
void init(const Graph &G, const T &x)
Reinitializes the array. Associates the array with G.
internal::GraphArrayIterator< EdgeArray< T > > iterator
The type for edge array iterators.
T value_type
The type for array entries.
const Graph * graphOf() const
Returns a pointer to the associated graph.
T & operator[](edge e)
Returns a reference to the element with index e.
virtual void disconnect()
Virtual function called when array is disconnected from the graph.
const T & operator[](edge e) const
Returns a reference to the element with index e.
virtual void enlargeTable(int newTableSize)
Virtual function called when table size has to be enlarged.
virtual void reinit(int initTableSize)
Virtual function called when table has to be reinitialized.
EdgeArray(const Graph &G, const T &x)
Constructs an edge array associated with G.
EdgeArray()
Constructs an empty edge array associated with no graph.
T m_x
The default value for array elements.
T & operator[](adjEntry adj)
Returns a reference to the element with index edge of adj.
iterator end()
Returns an iterator to one-past-last entry in the edge array.
EdgeArray< T > & operator=(EdgeArray< T > &&a)
Assignment operator (move semantics).
EdgeArray(const Graph &G)
Constructs an edge array associated with G.
static key_type findSuccKey(key_type key)
bool valid() const
Returns true iff the array is associated with a graph.
T & operator()(edge e)
Returns a reference to the element with index e.
const T & operator[](adjEntry adj) const
Returns a reference to the element with index edge of adj.
T & operator()(adjEntry adj)
Returns a reference to the element with index edge of adj.
EdgeArray(EdgeArray< T > &&A)
Constructs an edge array containing the elements of A (move semantics).
static key_type findPredKey(key_type key)
const_iterator cend() const
Returns a const iterator to one-past-last entry in the edge array.
void init(const Graph &G)
Reinitializes the array. Associates the array with G.
void fill(const T &x)
Sets all array elements to x.
const T & operator()(edge e) const
Returns a reference to the element with index e.
const_iterator cbegin() const
Returns a const iterator to the first entry in the edge array.
EdgeArray< T > & operator=(const EdgeArray< T > &a)
Assignment operator.
EdgeArray(const EdgeArray< T > &A)
Constructs an edge array that is a copy of A.
void init()
Reinitializes the array. Associates the array with no graph.
iterator begin()
Returns an iterator to the first entry in the edge array.
internal::GraphArrayConstIterator< EdgeArray< T > > const_iterator
The type for edge array const iterators.
const_iterator begin() const
Returns a const iterator to the first entry in the edge array.
Class for the representation of edges.
int index() const
Returns the index of the edge.
edge succ() const
Returns the successor in the list of all edges.
edge pred() const
Returns the predecessor in the list of all edges.
Data type for general directed graphs (adjacency list representation).
ListIterator< NodeArrayBase * > registerArray(NodeArrayBase *pNodeArray) const
Registers a node array.
edge firstEdge() const
Returns the first edge in the list of all edges.
int maxEdgeIndex() const
Returns the largest used edge index.
void moveRegisterArray(ListIterator< ArrayBase * > it, ArrayBase *pArray) const
Move the registration it of an graph element array to pArray (used with move semantics for graph elem...
void unregisterArray(ListIterator< NodeArrayBase * > it) const
Unregisters a node array.
Encapsulates a pointer to a list element.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
EdgeElement * edge
The type of edges.
#define OGDF_DEPRECATED(reason)
Mark a class / member / function as deprecated.
#define OGDF_ASSERT(expr)
Assert condition expr. See doc/build.md for more information.
#define OGDF_NEW_DELETE
Makes the class use OGDF's memory allocator.
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
The namespace for all OGDF objects.