OTB  9.0.0
Orfeo Toolbox
Classes | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
otb::ogr::Layer::feature_iter< Value > Class Template Reference

#include <otbOGRLayerWrapper.h>

+ Inheritance diagram for otb::ogr::Layer::feature_iter< Value >:
+ Collaboration diagram for otb::ogr::Layer::feature_iter< Value >:

Classes

struct  enabler
 

Public Member Functions

 feature_iter ()
 
template<class OtherValue >
 feature_iter (feature_iter< OtherValue > const &other, typename boost::enable_if< boost::is_convertible< OtherValue *, Value * >>::type *=nullptr)
 
 feature_iter (otb::ogr::Layer &layer)
 

Private Member Functions

Value & dereference () const
 
template<class OtherValue >
bool equal (feature_iter< OtherValue > const &other) const
 
void increment ()
 

Private Attributes

otb::ogr::Feature m_Crt
 
otb::ogr::Layerm_Layer
 

Friends

class boost::iterator_core_access
 
template<class >
class feature_iter
 

Detailed Description

template<class Value>
class otb::ogr::Layer::feature_iter< Value >

Implementation class for Feature iterator. This iterator is a single pass iterator. We may fetch the Feature referenced by an iterator previously stored, but never resume the iteration after a call to Layer::begin(), Layer::start_at(), Layer::CreateFeature(), Layer::DeleteFeature(), Layer::GetFeature(), Layer::SetFeature(), nor fork the iteration.

iterator i = std::advance(b, 1);
b++; // this is invalid

Definition at line 348 of file otbOGRLayerWrapper.h.

Constructor & Destructor Documentation

◆ feature_iter() [1/3]

template<class Value >
otb::ogr::Layer::feature_iter< Value >::feature_iter ( )
inline

Definition at line 356 of file otbOGRLayerWrapper.h.

◆ feature_iter() [2/3]

template<class Value >
otb::ogr::Layer::feature_iter< Value >::feature_iter ( otb::ogr::Layer layer)
inlineexplicit

Definition at line 359 of file otbOGRLayerWrapper.h.

◆ feature_iter() [3/3]

template<class Value >
template<class OtherValue >
otb::ogr::Layer::feature_iter< Value >::feature_iter ( feature_iter< OtherValue > const &  other,
typename boost::enable_if< boost::is_convertible< OtherValue *, Value * >>::type *  = nullptr 
)
inline

Definition at line 363 of file otbOGRLayerWrapper.h.

Member Function Documentation

◆ dereference()

template<class Value >
Value& otb::ogr::Layer::feature_iter< Value >::dereference ( ) const
inlineprivate

Definition at line 383 of file otbOGRLayerWrapper.h.

◆ equal()

template<class Value >
template<class OtherValue >
bool otb::ogr::Layer::feature_iter< Value >::equal ( feature_iter< OtherValue > const &  other) const
inlineprivate

◆ increment()

template<class Value >
void otb::ogr::Layer::feature_iter< Value >::increment ( )
inlineprivate

Definition at line 378 of file otbOGRLayerWrapper.h.

Friends And Related Function Documentation

◆ boost::iterator_core_access

template<class Value >
friend class boost::iterator_core_access
friend

Definition at line 369 of file otbOGRLayerWrapper.h.

◆ feature_iter

template<class Value >
template<class >
friend class feature_iter
friend

Definition at line 371 of file otbOGRLayerWrapper.h.

Member Data Documentation

◆ m_Crt

template<class Value >
otb::ogr::Feature otb::ogr::Layer::feature_iter< Value >::m_Crt
mutableprivate

Definition at line 389 of file otbOGRLayerWrapper.h.

Referenced by otb::ogr::Layer::feature_iter< Value >::equal().

◆ m_Layer

template<class Value >
otb::ogr::Layer* otb::ogr::Layer::feature_iter< Value >::m_Layer
private

Definition at line 388 of file otbOGRLayerWrapper.h.


The documentation for this class was generated from the following file:
otb::ogr::Layer::iterator
feature_iter< Feature > iterator
Features iterator.
Definition: otbOGRLayerWrapper.h:395
otb::ogr::Layer::begin
const_iterator begin() const
Definition: otbOGRLayerWrapper.h:412