Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

Loading...
Searching...
No Matches
HashIterator2D.h
Go to the documentation of this file.
1
34#pragma once
35
36#include <ogdf/basic/Hashing.h>
37#include <ogdf/basic/tuples.h>
38
39namespace ogdf {
40
41
46template<class I1_, class I2_, class E_, class Hash1_ = DefHashFunc<I1_>, class Hash2_ = DefHashFunc<I2_>>
48 : private HashConstIterator<Tuple2<I1_, I2_>, E_, HashFuncTuple<I1_, I2_, Hash1_, Hash2_>> {
49public:
52
55 : HashConstIterator<Tuple2<I1_, I2_>, E_, HashFuncTuple<I1_, I2_, Hash1_, Hash2_>>(it) { }
56
61
69
74
76 const I1_& key1() const {
78 .x1();
79 }
80
82 const I2_& key2() const {
84 .x2();
85 }
86
91
97};
98
99}
Declaration of classes used for hashing.
Const-iterator for 2D-hash arrays.
bool valid() const
Returns true iff the iterator points to an element.
const I2_ & key2() const
Returns the second key of the hash element pointed to.
const E_ & info() const
Returns the information of the element pointed to.
HashConstIterator2D()
Creates an (invalid) iterator.
HashConstIterator2D< I1_, I2_, E_, Hash1_, Hash2_ > & operator++()
Sets the iterator to the next element in the 2D-hash array.
const I1_ & key1() const
Returns the first key of the hash element pointed to.
HashConstIterator2D(const HashConstIterator< Tuple2< I1_, I2_ >, E_, HashFuncTuple< I1_, I2_, Hash1_, Hash2_ > > &it)
Copy constructor (from HashConstIterator).
HashConstIterator2D< I1_, I2_, E_, Hash1_, Hash2_ > & operator=(const HashConstIterator2D< I1_, I2_, E_, Hash1_, Hash2_ > &it)
Assignemnt operator.
HashConstIterator2D(const HashConstIterator2D< I1_, I2_, E_, Hash1_, Hash2_ > &it)
Copy constructor.
Iterators for hash tables.
Definition Hashing.h:432
const K & key() const
Returns the key of the hash element pointed to.
Definition Hashing.h:462
Tuples of two elements (2-tuples).
Definition tuples.h:49
The namespace for all OGDF objects.
Declaration and implementation of class Tuple2, Tuple3 and Tuple4.