ATLAS Offline Software
|
Helper for defining iterators over Array's
.
More...
#include <Array.h>
Public Types | |
typedef ArrayIterator< N > | const_iterator |
Iterator type for an Array<N> . More... | |
Static Public Member Functions | |
static const_iterator | make_iterator (const Arrayrep *rep, unsigned int offs) |
Construct an Array<N>::const_iterator . More... | |
Helper for defining iterators over Array's
.
For Array<N>
with N
>= 2, we want to use ArrayIterator<N>
as the iterator class. However, for Array<1>
, we want to use just an Arrayelt*
. I'm too lazy to either specialize ArrayIterator<1>
or to add a new Array<1>
specialization. So this is an easier way of achieving the same effect. Array<N>
uses as its iterator type ArrayIteratorChooser<N>::const_iterator
; this small class then gets specialized for N
== 1. We also need to provide a way to create the iterators (since it will be done differently in the two cases). This is supplied by the make_iterator
method.
Definition at line 74 of file Control/CxxUtils/CxxUtils/Array.h.
typedef ArrayIterator<N> CxxUtils::ArrayIteratorChooser< N >::const_iterator |
Iterator type for an Array<N>
.
Definition at line 78 of file Control/CxxUtils/CxxUtils/Array.h.
|
static |
Construct an Array<N>::const_iterator
.
rep | Arrayrep from which to initialize the iterator. |
offs | Offset of the first element referenced by the iterator within rep. |