LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
geo::details::GeoIDdataContainerItemIterator< GeoIDIteratorClass > Class Template Reference

Item iterator for geo::GeoIDdataContainer class. More...

#include "GeometryDataContainers.h"

Inheritance diagram for geo::details::GeoIDdataContainerItemIterator< GeoIDIteratorClass >:

Public Types

using ID_t = typename GeoIDiterator_t::ID_t
 Type of the ID in this iterator. More...
 

Public Member Functions

 GeoIDdataContainerItemIterator ()=default
 Default constructor: undefined status. More...
 
 GeoIDdataContainerItemIterator (GeoIDiterator_t const &iter)
 Constructor: points to data pointed by current. More...
 
template<typename OGeoIDIteratorClass >
 GeoIDdataContainerItemIterator (GeoIDdataContainerItemIterator< OGeoIDIteratorClass > const &other, std::enable_if_t< std::is_convertible_v< OGeoIDIteratorClass, GeoIDiterator_t >>=nullptr)
 Generalized copy constructor, only if argument iterator can be converted. More...
 

Private Types

using GeoIDiterator_t = GeoIDIteratorClass
 Type of wrapped iterator. More...
 
using iterator_adaptor_ = typename GeoIDdataContainerItemIterator::iterator_adaptor_
 

Private Member Functions

iterator_adaptor_::reference dereference () const
 

Friends

class boost::iterator_core_access
 

Detailed Description

template<typename GeoIDIteratorClass>
class geo::details::GeoIDdataContainerItemIterator< GeoIDIteratorClass >

Item iterator for geo::GeoIDdataContainer class.

Template Parameters
GeoIDIteratorClasstype of iterator being wrapped

This iterator is just a wrapper.

Note
These iterators haven't been extensively tested. Caveat emptor...

Definition at line 53 of file GeometryDataContainers.h.

Member Typedef Documentation

template<typename GeoIDIteratorClass>
using geo::details::GeoIDdataContainerItemIterator< GeoIDIteratorClass >::GeoIDiterator_t = GeoIDIteratorClass
private

Type of wrapped iterator.

Definition at line 915 of file GeometryDataContainers.h.

template<typename GeoIDIteratorClass>
using geo::details::GeoIDdataContainerItemIterator< GeoIDIteratorClass >::ID_t = typename GeoIDiterator_t::ID_t

Type of the ID in this iterator.

Definition at line 921 of file GeometryDataContainers.h.

template<typename GeoIDIteratorClass>
using geo::details::GeoIDdataContainerItemIterator< GeoIDIteratorClass >::iterator_adaptor_ = typename GeoIDdataContainerItemIterator::iterator_adaptor_
private

Definition at line 917 of file GeometryDataContainers.h.

Constructor & Destructor Documentation

template<typename GeoIDIteratorClass>
geo::details::GeoIDdataContainerItemIterator< GeoIDIteratorClass >::GeoIDdataContainerItemIterator ( )
default

Default constructor: undefined status.

template<typename GeoIDIteratorClass>
geo::details::GeoIDdataContainerItemIterator< GeoIDIteratorClass >::GeoIDdataContainerItemIterator ( GeoIDiterator_t const &  iter)
inline

Constructor: points to data pointed by current.

Definition at line 927 of file GeometryDataContainers.h.

927 : iterator_adaptor_(iter) {}
typename GeoIDdataContainerItemIterator::iterator_adaptor_ iterator_adaptor_
template<typename GeoIDIteratorClass>
template<typename OGeoIDIteratorClass >
geo::details::GeoIDdataContainerItemIterator< GeoIDIteratorClass >::GeoIDdataContainerItemIterator ( GeoIDdataContainerItemIterator< OGeoIDIteratorClass > const &  other,
std::enable_if_t< std::is_convertible_v< OGeoIDIteratorClass, GeoIDiterator_t >>  = nullptr 
)
inline

Generalized copy constructor, only if argument iterator can be converted.

Definition at line 931 of file GeometryDataContainers.h.

934  : iterator_adaptor_(other.base())
935  {}
typename GeoIDdataContainerItemIterator::iterator_adaptor_ iterator_adaptor_

Member Function Documentation

template<typename GeoIDIteratorClass>
iterator_adaptor_::reference geo::details::GeoIDdataContainerItemIterator< GeoIDIteratorClass >::dereference ( ) const
inlineprivate

Definition at line 942 of file GeometryDataContainers.h.

942 { return {base().ID(), *base()}; }

Friends And Related Function Documentation

template<typename GeoIDIteratorClass>
friend class boost::iterator_core_access
friend

Definition at line 938 of file GeometryDataContainers.h.


The documentation for this class was generated from the following file: