![]() |
LArSoft
v10_04_05
Liquid Argon Software toolkit - https://larsoft.org/
|
Base forward iterator browsing all cryostat IDs in the detector. More...
#include "id_iterators.h"
Classes | |
struct | GeometryIDIteratorTag |
Public Types | |
using | GeoID_t = typename upper_iterator::GeoID_t |
using | LocalID_t = LocalID |
type of the ID we change More... | |
using | iterator = id_iterator_base< LocalID_t, GeoID_t, IterationPolicy > |
type of this iterator More... | |
Iterator traits | |
using | difference_type = std::ptrdiff_t |
using | value_type = LocalID_t |
using | reference = value_type const & |
using | pointer = value_type const * |
using | iterator_category = std::forward_iterator_tag |
Public Member Functions | |
id_iterator_base ()=default | |
Default constructor; effect not defined: assign to it before using! More... | |
id_iterator_base (GeoID_t const &start_from, IterationPolicy itPolicy) | |
Constructor: points to the specified element. More... | |
reference | operator* () const |
Returns the element ID the iterator points to. More... | |
pointer | operator-> () const |
iterator & | operator++ () |
Prefix increment: returns this iterator pointing to the next element. More... | |
iterator | operator++ (int) |
Postfix increment: returns the current iterator, then increments it. More... | |
LocalID_t const & | localID () const |
Protected Member Functions | |
void | next () |
Skips to the next element. More... | |
Private Types | |
using | upper_iterator = id_iterator_base< typename LocalID::ParentID_t, GEOID, IterationPolicy > |
using | ID_t = std::decay_t< decltype(std::declval< LocalID_t >().deepestIndex())> |
specific type for element ID More... | |
Private Member Functions | |
LocalID_t & | localID () |
Returns the type of ID we act on. More... | |
ID_t const & | local_index () const |
Returns the index (part if the ID) this iterator runs on. More... | |
ID_t & | local_index () |
Private Attributes | |
IterationPolicy | policy |
ID_t | limit = LocalID_t::InvalidID |
maximum number of elements in the current cryostat More... | |
Base forward iterator browsing all cryostat IDs in the detector.
Base forward iterator browsing all TPC IDs in the detector.
GEOID | ID type to be used |
This iterator assumes that GEOID is derived from geo::CryostatID. Note that no polymorphic behaviour is required, or expected, from GEOID.
This iterator is designed to carry on, untouched, anything else that the GEOID type defines beyond the required CryostatID data.
GEOID | ID type to be used |
This iterator requires that GEOID is derived from geo::TPCID. Note that no polymorphic behaviour is required, or expected, from GEOID.
This iterator is designed to carry on, untouched, anything else that the GEOID type defines beyond the required TPCID data.
Definition at line 41 of file id_iterators.h.
using geo::details::id_iterator_base< LocalID, GEOID, IterationPolicy >::difference_type = std::ptrdiff_t |
Definition at line 159 of file id_iterators.h.
using geo::details::id_iterator_base< LocalID, GEOID, IterationPolicy >::GeoID_t = typename upper_iterator::GeoID_t |
Definition at line 149 of file id_iterators.h.
|
private |
specific type for element ID
Definition at line 219 of file id_iterators.h.
using geo::details::id_iterator_base< LocalID, GEOID, IterationPolicy >::iterator = id_iterator_base<LocalID_t, GeoID_t, IterationPolicy> |
type of this iterator
Definition at line 155 of file id_iterators.h.
using geo::details::id_iterator_base< LocalID, GEOID, IterationPolicy >::iterator_category = std::forward_iterator_tag |
Definition at line 163 of file id_iterators.h.
using geo::details::id_iterator_base< LocalID, GEOID, IterationPolicy >::LocalID_t = LocalID |
type of the ID we change
Definition at line 151 of file id_iterators.h.
using geo::details::id_iterator_base< LocalID, GEOID, IterationPolicy >::pointer = value_type const* |
Definition at line 162 of file id_iterators.h.
using geo::details::id_iterator_base< LocalID, GEOID, IterationPolicy >::reference = value_type const& |
Definition at line 161 of file id_iterators.h.
|
private |
Definition at line 145 of file id_iterators.h.
using geo::details::id_iterator_base< LocalID, GEOID, IterationPolicy >::value_type = LocalID_t |
Definition at line 160 of file id_iterators.h.
|
default |
Default constructor; effect not defined: assign to it before using!
|
inline |
Constructor: points to the specified element.
Definition at line 170 of file id_iterators.h.
|
inlineprivate |
Returns the index (part if the ID) this iterator runs on.
Definition at line 228 of file id_iterators.h.
|
inlineprivate |
Definition at line 229 of file id_iterators.h.
|
inline |
Definition at line 193 of file id_iterators.h.
Referenced by geo::details::operator==().
|
inlineprivate |
Returns the type of ID we act on.
Definition at line 225 of file id_iterators.h.
|
inlineprotected |
Skips to the next element.
Definition at line 197 of file id_iterators.h.
|
inline |
Returns the element ID the iterator points to.
Definition at line 175 of file id_iterators.h.
|
inline |
Prefix increment: returns this iterator pointing to the next element.
Definition at line 179 of file id_iterators.h.
|
inline |
Postfix increment: returns the current iterator, then increments it.
Definition at line 186 of file id_iterators.h.
|
inline |
Definition at line 176 of file id_iterators.h.
|
private |
maximum number of elements in the current cryostat
Definition at line 222 of file id_iterators.h.
|
private |
Definition at line 216 of file id_iterators.h.