15 #ifndef QGSMEMORYFEATUREITERATOR_H    16 #define QGSMEMORYFEATUREITERATOR_H    27 class QgsMemoryProvider;
    37     explicit QgsMemoryFeatureSource( 
const QgsMemoryProvider *p );
    44     std::unique_ptr< QgsSpatialIndex > mSpatialIndex;
    45     QString mSubsetString;
    49     friend class QgsMemoryFeatureIterator;
    56     QgsMemoryFeatureIterator( QgsMemoryFeatureSource *source, 
bool ownSource, 
const QgsFeatureRequest &request );
    58     ~QgsMemoryFeatureIterator() 
override;
    60     bool rewind() 
override;
    61     bool close() 
override;
    65     bool fetchFeature( 
QgsFeature &feature ) 
override;
    68     bool nextFeatureUsingList( 
QgsFeature &feature );
    69     bool nextFeatureTraverseAll( 
QgsFeature &feature );
    72     std::unique_ptr< QgsGeometryEngine > mSelectRectEngine;
    74     QgsFeatureMap::const_iterator mSelectIterator;
    75     bool mUsingFeatureIdList = 
false;
    76     QList<QgsFeatureId> mFeatureIdList;
    77     QList<QgsFeatureId>::const_iterator mFeatureIdListIterator;
    78     std::unique_ptr< QgsExpression > mSubsetExpression;
    85 #endif // QGSMEMORYFEATUREITERATOR_H Wrapper for iterator of features from vector data provider or vector layer. 
 
A rectangle specified with double values. 
 
virtual QgsFeatureIterator getFeatures(const QgsFeatureRequest &request=QgsFeatureRequest())=0
Gets an iterator for features matching the specified request. 
 
Container of fields for a vector layer. 
 
A geometry is the spatial representation of a feature. 
 
The feature class encapsulates a single feature including its id, geometry and a list of field/values...
 
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
 
This class wraps a request for features to a vector layer (or directly its vector data provider)...
 
Base class that can be used for any class that is capable of returning features. 
 
QMap< QgsFeatureId, QgsFeature > QgsFeatureMap
 
A spatial index for QgsFeature objects. 
 
This class represents a coordinate reference system (CRS). 
 
Helper template that cares of two things: 1.