GDAL
ogrsf_frmts.h File Reference

Classes related to registration of format support, and opening datasets. More...

#include "cpl_progress.h"
#include "ogr_feature.h"
#include "ogr_featurestyle.h"
#include "gdal_priv.h"
#include <memory>
#include <deque>

Go to the source code of this file.

Classes

class  OGRLayer
 This class represents a layer of simple features, with access methods. More...
class  OGRGetNextFeatureThroughRaw< BaseLayer >
 Template class offering a GetNextFeature() implementation relying on GetNextRawFeature(). More...
class  OGRDataSource
 LEGACY class. More...
class  OGRSFDriver
 LEGACY class. More...
class  OGRSFDriverRegistrar
 LEGACY class. More...

Macros

#define DEFINE_GET_NEXT_FEATURE_THROUGH_RAW(BaseLayer)
 Utility macro to define GetNextFeature() through GetNextRawFeature().

Typedefs

using OGRLayerUniquePtr = std::unique_ptr<OGRLayer>
 Unique pointer type for OGRLayer.

Functions

OGRLayer::FeatureIterator begin (OGRLayer *poLayer)
 Return begin of feature iterator.
OGRLayer::FeatureIterator end (OGRLayer *poLayer)
 Return end of feature iterator.

Detailed Description

Classes related to registration of format support, and opening datasets.

Macro Definition Documentation

◆ DEFINE_GET_NEXT_FEATURE_THROUGH_RAW

#define DEFINE_GET_NEXT_FEATURE_THROUGH_RAW ( BaseLayer)
Value:
private: \
friend class OGRGetNextFeatureThroughRaw<BaseLayer>; \
\
public: \
OGRFeature *GetNextFeature() override \
{ \
}
A simple feature, including geometry and attributes.
Definition ogr_feature.h:934
Template class offering a GetNextFeature() implementation relying on GetNextRawFeature().
Definition ogrsf_frmts.h:501
OGRFeature * GetNextFeature()
Implement OGRLayer::GetNextFeature(), relying on BaseLayer::GetNextRawFeature().
Definition ogrsf_frmts.h:508

Utility macro to define GetNextFeature() through GetNextRawFeature().

Typedef Documentation

◆ OGRLayerUniquePtr

using OGRLayerUniquePtr = std::unique_ptr<OGRLayer>

Unique pointer type for OGRLayer.

Since
GDAL 3.2

Function Documentation

◆ begin()

OGRLayer::FeatureIterator begin ( OGRLayer * poLayer)
inline

Return begin of feature iterator.

Using this iterator for standard range-based loops is safe, but due to implementation limitations, you shouldn't try to access (dereference) more than one iterator step at a time, since the std::unique_ptr<OGRFeature> reference is reused.

Only one iterator per layer can be active at a time.

See also
OGRLayer::begin()

◆ end()

OGRLayer::FeatureIterator end ( OGRLayer * poLayer)
inline

Return end of feature iterator.

See also
OGRLayer::end()