Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

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 
39 namespace ogdf {
40 
41 
46 template<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_>> {
49 public:
52 
55  : HashConstIterator<Tuple2<I1_, I2_>, E_, HashFuncTuple<I1_, I2_, Hash1_, Hash2_>>(it) { }
56 
60  : HashConstIterator<Tuple2<I1_, I2_>, E_, HashFuncTuple<I1_, I2_, Hash1_, Hash2_>>(it) { }
61 
66  it);
67  return *this;
68  }
69 
71  bool valid() const {
73  }
74 
76  const I1_& key1() const {
78  .x1();
79  }
80 
82  const I2_& key2() const {
84  .x2();
85  }
86 
88  const E_& info() const {
90  }
91 
95  return *this;
96  }
97 };
98 
99 }
ogdf
The namespace for all OGDF objects.
Definition: multilevelmixer.cpp:39
ogdf::HashConstIterator2D
Const-iterator for 2D-hash arrays.
Definition: HashIterator2D.h:47
Hashing.h
Declaration of classes used for hashing.
ogdf::Tuple2
Tuples of two elements (2-tuples).
Definition: tuples.h:49
ogdf::HashConstIterator2D::valid
bool valid() const
Returns true iff the iterator points to an element.
Definition: HashIterator2D.h:71
ogdf::HashConstIterator2D::operator++
HashConstIterator2D< I1_, I2_, E_, Hash1_, Hash2_ > & operator++()
Sets the iterator to the next element in the 2D-hash array.
Definition: HashIterator2D.h:93
ogdf::HashFuncTuple
Definition: tuples.h:95
ogdf::HashConstIterator2D::HashConstIterator2D
HashConstIterator2D(const HashConstIterator< Tuple2< I1_, I2_ >, E_, HashFuncTuple< I1_, I2_, Hash1_, Hash2_ >> &it)
Copy constructor (from HashConstIterator).
Definition: HashIterator2D.h:58
ogdf::Tuple2::x2
const E2 & x2() const
Returns a reference the second element.
Definition: tuples.h:64
ogdf::HashConstIterator2D::operator=
HashConstIterator2D< I1_, I2_, E_, Hash1_, Hash2_ > & operator=(const HashConstIterator2D< I1_, I2_, E_, Hash1_, Hash2_ > &it)
Assignemnt operator.
Definition: HashIterator2D.h:63
ogdf::HashConstIterator2D::HashConstIterator2D
HashConstIterator2D()
Creates an (invalid) iterator.
Definition: HashIterator2D.h:51
ogdf::HashConstIterator2D::key1
const I1_ & key1() const
Returns the first key of the hash element pointed to.
Definition: HashIterator2D.h:76
ogdf::HashConstIterator2D::info
const E_ & info() const
Returns the information of the element pointed to.
Definition: HashIterator2D.h:88
ogdf::HashConstIterator< Tuple2< I1_, I2_ >, E_, HashFuncTuple< I1_, I2_, DefHashFunc< I1_ >, DefHashFunc< I2_ > > >::key
const Tuple2< I1_, I2_ > & key() const
Returns the key of the hash element pointed to.
Definition: Hashing.h:462
ogdf::HashConstIterator
Iterators for hash tables.
Definition: Hashing.h:205
ogdf::HashConstIterator2D::HashConstIterator2D
HashConstIterator2D(const HashConstIterator2D< I1_, I2_, E_, Hash1_, Hash2_ > &it)
Copy constructor.
Definition: HashIterator2D.h:54
ogdf::HashConstIterator2D::key2
const I2_ & key2() const
Returns the second key of the hash element pointed to.
Definition: HashIterator2D.h:82
ogdf::Tuple2::x1
const E1 & x1() const
Returns a reference the first element.
Definition: tuples.h:61
tuples.h
Declaration and implementation of class Tuple2, Tuple3 and Tuple4.