Public Types | Public Member Functions | Private Types | Private Member Functions | Friends | List of all members
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 54 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 964 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 972 of file GeometryDataContainers.h.

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

Definition at line 967 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 979 of file GeometryDataContainers.h.

980  : iterator_adaptor_(iter)
981  {}
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 985 of file GeometryDataContainers.h.

990  : iterator_adaptor_(other.base())
991  {}
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 999 of file GeometryDataContainers.h.

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

Friends And Related Function Documentation

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

Definition at line 995 of file GeometryDataContainers.h.


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