15 #ifndef QGSFEATUREITERATOR_H    16 #define QGSFEATUREITERATOR_H    33     virtual bool mustStop() 
const = 0;
    61     virtual bool rewind() = 0;
    63     virtual bool close() = 0;
    88     virtual bool fetchFeature( 
QgsFeature& f ) = 0;
   100     virtual bool nextFeatureFilterExpression( 
QgsFeature &f );
   113     virtual bool nextFeatureFilterFids( 
QgsFeature & f );
   147     bool mUseCachedFeatures;
   186         , mOwnSource( ownSource )
   188       mSource->iteratorOpened( 
this );
   228     bool isClosed() 
const;
   311   return !( fi1 == fi2 );
   320 #endif // QGSFEATUREITERATOR_H 
Wrapper for iterator of features from vector data provider or vector layer. 
 
virtual bool close()=0
end of iterating: free the resources / lock 
 
long mFetchedCount
Number of features already fetched by iterator. 
 
bool operator==(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)
 
bool operator!=(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)
 
virtual bool rewind()=0
reset the iterator to the starting position 
 
~QgsAbstractFeatureIteratorFromSource()
 
bool mClosed
Set to true, as soon as the iterator is closed. 
 
The feature class encapsulates a single feature including its id, geometry and a list of field/values...
 
QgsAbstractFeatureIterator::CompileStatus compileStatus() const
Returns the status of expression compilation for filter expression requests. 
 
friend bool operator==(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)
 
CompileStatus mCompileStatus
Status of compilation of filter expression. 
 
Interface that can be optionaly attached to an iterator so its nextFeature() implementaton can check ...
 
void iteratorClosed()
to be called by from subclass in close() 
 
virtual bool nextFeature(QgsFeature &f)
fetch next feature, return true on success 
 
CompileStatus compileStatus() const
Returns the status of expression compilation for filter expression requests. 
 
Internal feature iterator to be implemented within data providers. 
 
CompileStatus
Status of expression compilation for filter expression requests. 
 
QgsFeatureIterator()
construct invalid iterator 
 
bool mZombie
A feature iterator may be closed already but still be serving features from the cache. 
 
This class wraps a request for features to a vector layer (or directly its vector data provider)...
 
void deref()
remove reference, delete if refs == 0 
 
friend bool operator!=(const QgsFeatureIterator &fi1, const QgsFeatureIterator &fi2)
 
QgsFeatureRequest mRequest
A copy of the feature request. 
 
virtual void setInterruptionChecker(QgsInterruptionChecker *interruptionChecker)
Attach an object that can be queried regularly by the iterator to check if it must stopped...
 
QgsAbstractFeatureIterator * mIter
 
~QgsFeatureIterator()
destructor deletes the iterator if it has no more references 
 
This class contains information about how to simplify geometries fetched from a QgsFeatureIterator. 
 
int refs
reference counting (to allow seamless copying of QgsFeatureIterator instances) TODO QGIS3: make this ...
 
bool nextFeature(QgsFeature &f)
 
bool isClosed() const
find out whether the iterator is still valid or closed already 
 
QgsAbstractFeatureIteratorFromSource(T *source, bool ownSource, const QgsFeatureRequest &request)
 
void setInterruptionChecker(QgsInterruptionChecker *interruptionChecker)
Attach an object that can be queried regularly by the iterator to check if it must stopped...
 
Helper template that cares of two things: 1.