Dynamic arrays indexed with nodes. More...
#include <ogdf/basic/Graph_d.h>
Public Types | |
using | const_iterator = internal::GraphArrayConstIterator< NodeArray< T > > |
The type for node array const iterators. More... | |
using | iterator = internal::GraphArrayIterator< NodeArray< T > > |
The type for node array iterators. More... | |
using | key_type = node |
The type for array keys. More... | |
using | value_type = T |
The type for array entries. More... | |
Public Member Functions | |
NodeArray () | |
Constructs an empty node array associated with no graph. More... | |
NodeArray (const Graph &G) | |
Constructs a node array associated with G . More... | |
NodeArray (const Graph &G, const T &x) | |
Constructs a node array associated with G . More... | |
NodeArray (const NodeArray< T > &A) | |
Constructs a node array that is a copy of A . More... | |
NodeArray (NodeArray< T > &&A) | |
Constructs a node array containing the elements of A (move semantics). More... | |
Access methods | |
These methods provide access to elements and the corresponding graph. | |
bool | valid () const |
Returns true iff the array is associated with a graph. More... | |
const Graph * | graphOf () const |
Returns a pointer to the associated graph. More... | |
const T & | operator[] (node v) const |
Returns a reference to the element with index v . More... | |
T & | operator[] (node v) |
Returns a reference to the element with index v . More... | |
const T & | operator() (node v) const |
Returns a reference to the element with index v . More... | |
T & | operator() (node v) |
Returns a reference to the element with index v . More... | |
const T & | operator[] (int index) const |
Returns a reference to the element with index index . More... | |
T & | operator[] (int index) |
Returns a reference to the element with index index . More... | |
Iterators | |
These methods return bidirectional iterators to elements in the array. | |
iterator | begin () |
Returns an iterator to the first entry in the node array. More... | |
const_iterator | begin () const |
Returns a const iterator to the first entry in the node array. More... | |
const_iterator | cbegin () const |
Returns a const iterator to the first entry in the node array. More... | |
iterator | end () |
Returns an iterator to one-past-last entry in the node array. More... | |
const_iterator | end () const |
Returns a const iterator to one-past-last entry in the node array. More... | |
const_iterator | cend () const |
Returns a const iterator to one-past-last entry in the node array. More... | |
Initialization and assignment | |
These methods can be used to reinitialize the array, or to initialize all elements with a given value. | |
void | init () |
Reinitializes the array. Associates the array with no graph. More... | |
void | init (const Graph &G) |
Reinitializes the array. Associates the array with G . More... | |
void | init (const Graph &G, const T &x) |
Reinitializes the array. Associates the array with G . More... | |
void | fill (const T &x) |
Sets all array elements to x . More... | |
NodeArray< T > & | operator= (const NodeArray< T > &a) |
Assignment operator. More... | |
NodeArray< T > & | operator= (NodeArray< T > &&a) |
Assignment operator (move semantics). More... | |
Private Attributes | |
T | m_x |
The default value for array elements. More... | |
Helper functions | |
static key_type | findSuccKey (key_type key) |
static key_type | findPredKey (key_type key) |
virtual void | enlargeTable (int newTableSize) |
virtual void | reinit (int initTableSize) |
virtual void | disconnect () |
Dynamic arrays indexed with nodes.
NodeArrays represent a mapping from nodes to data of type T. They adjust their table size automatically when the graph grows.
T | is the element type. |
using ogdf::NodeArray< T >::const_iterator = internal::GraphArrayConstIterator<NodeArray<T> > |
The type for node array const iterators.
Definition at line 120 of file NodeArray.h.
using ogdf::NodeArray< T >::iterator = internal::GraphArrayIterator<NodeArray<T> > |
The type for node array iterators.
Definition at line 119 of file NodeArray.h.
using ogdf::NodeArray< T >::key_type = node |
The type for array keys.
Definition at line 116 of file NodeArray.h.
using ogdf::NodeArray< T >::value_type = T |
The type for array entries.
Definition at line 117 of file NodeArray.h.
|
inline |
Constructs an empty node array associated with no graph.
Definition at line 124 of file NodeArray.h.
|
inline |
Constructs a node array associated with G
.
Definition at line 127 of file NodeArray.h.
|
inline |
Constructs a node array associated with G
.
G | is the associated graph. |
x | is the default value for all array elements. |
Definition at line 134 of file NodeArray.h.
|
inline |
Constructs a node array that is a copy of A
.
Associates the array with the same graph as A
and copies all elements.
Definition at line 141 of file NodeArray.h.
|
inline |
Constructs a node array containing the elements of A
(move semantics).
NodeArray A
is empty afterwards and not associated with any graph.
Definition at line 147 of file NodeArray.h.
|
inline |
Returns an iterator to the first entry in the node array.
If the node array is empty, an invalid iterator is returned.
Definition at line 215 of file NodeArray.h.
|
inline |
Returns a const iterator to the first entry in the node array.
If the node array is empty, an invalid iterator is returned.
Definition at line 221 of file NodeArray.h.
|
inline |
Returns a const iterator to the first entry in the node array.
If the node array is empty, an invalid iterator is returned.
Definition at line 227 of file NodeArray.h.
|
inline |
Returns a const iterator to one-past-last entry in the node array.
This is always an invalid iterator.
Definition at line 245 of file NodeArray.h.
|
inlineprivatevirtual |
Definition at line 321 of file NodeArray.h.
|
inline |
Returns an iterator to one-past-last entry in the node array.
This is always an invalid iterator.
Definition at line 233 of file NodeArray.h.
|
inline |
Returns a const iterator to one-past-last entry in the node array.
This is always an invalid iterator.
Definition at line 239 of file NodeArray.h.
|
inlineprivatevirtual |
Definition at line 313 of file NodeArray.h.
|
inline |
Sets all array elements to x
.
Definition at line 274 of file NodeArray.h.
|
inlinestatic |
Definition at line 308 of file NodeArray.h.
|
inlinestatic |
Definition at line 307 of file NodeArray.h.
|
inline |
Returns a pointer to the associated graph.
Definition at line 160 of file NodeArray.h.
|
inline |
Reinitializes the array. Associates the array with no graph.
Definition at line 255 of file NodeArray.h.
|
inline |
Reinitializes the array. Associates the array with G
.
Definition at line 260 of file NodeArray.h.
|
inline |
Reinitializes the array. Associates the array with G
.
G | is the associated graph. |
x | is the default value. |
Definition at line 269 of file NodeArray.h.
|
inline |
Returns a reference to the element with index v
.
Definition at line 186 of file NodeArray.h.
|
inline |
Returns a reference to the element with index v
.
Definition at line 179 of file NodeArray.h.
|
inline |
Assignment operator.
Definition at line 281 of file NodeArray.h.
|
inline |
Assignment operator (move semantics).
Nodearray a
is empty afterwards and not associated with any graph.
Definition at line 292 of file NodeArray.h.
|
inline |
Returns a reference to the element with index index
.
index
is a valid index for a node in the associated graph! Definition at line 201 of file NodeArray.h.
|
inline |
Returns a reference to the element with index index
.
index
is a valid index for a node in the associated graph! Definition at line 195 of file NodeArray.h.
|
inline |
Returns a reference to the element with index v
.
Definition at line 172 of file NodeArray.h.
|
inline |
Returns a reference to the element with index v
.
Definition at line 165 of file NodeArray.h.
|
inlineprivatevirtual |
Definition at line 317 of file NodeArray.h.
|
inline |
Returns true iff the array is associated with a graph.
Definition at line 157 of file NodeArray.h.
|
private |
The default value for array elements.
Definition at line 113 of file NodeArray.h.