QGIS API Documentation
2.6.0-Brighton
|
Internal feature iterator to be implemented within data providers. More...
#include <qgsfeatureiterator.h>
Public Member Functions | |
QgsAbstractFeatureIterator (const QgsFeatureRequest &request) | |
base class constructor - stores the iteration parameters | |
virtual | ~QgsAbstractFeatureIterator () |
destructor makes sure that the iterator is closed properly | |
virtual bool | nextFeature (QgsFeature &f) |
fetch next feature, return true on success | |
virtual bool | rewind ()=0 |
reset the iterator to the starting position | |
virtual bool | close ()=0 |
end of iterating: free the resources / lock |
Protected Member Functions | |
virtual bool | fetchFeature (QgsFeature &f)=0 |
If you write a feature iterator for your provider, this is the method you need to implement!! | |
virtual bool | nextFeatureFilterExpression (QgsFeature &f) |
By default, the iterator will fetch all features and check if the feature matches the expression. | |
virtual bool | nextFeatureFilterFids (QgsFeature &f) |
By default, the iterator will fetch all features and check if the id is in the request. | |
void | ref () |
add reference | |
void | deref () |
remove reference, delete if refs == 0 | |
virtual bool | prepareSimplification (const QgsSimplifyMethod &simplifyMethod) |
Setup the simplification of geometries to fetch using the specified simplify method. |
Protected Attributes | |
QgsFeatureRequest | mRequest |
A copy of the feature request. | |
bool | mClosed |
Set to true, as soon as the iterator is closed. | |
int | refs |
reference counting (to allow seamless copying of QgsFeatureIterator instances) |
Friends | |
class | QgsFeatureIterator |
Internal feature iterator to be implemented within data providers.
QgsAbstractFeatureIterator::QgsAbstractFeatureIterator | ( | const QgsFeatureRequest & | request | ) |
base class constructor - stores the iteration parameters
|
virtual |
destructor makes sure that the iterator is closed properly
|
pure virtual |
end of iterating: free the resources / lock
Implemented in QgsCachedFeatureWriterIterator, QgsVectorLayerFeatureIterator, and QgsCachedFeatureIterator.
|
protected |
remove reference, delete if refs == 0
|
protectedpure virtual |
If you write a feature iterator for your provider, this is the method you need to implement!!
f | The feature to write to |
Implemented in QgsCachedFeatureWriterIterator, QgsVectorLayerFeatureIterator, and QgsCachedFeatureIterator.
|
virtual |
fetch next feature, return true on success
|
protectedvirtual |
By default, the iterator will fetch all features and check if the feature matches the expression.
If you have a more sophisticated metodology (SQL request for the features...) and you check for the expression in your fetchFeature method, you can just redirect this call to fetchFeature so the default check will be omitted.
f | The feature to write to |
Reimplemented in QgsVectorLayerFeatureIterator.
|
protectedvirtual |
By default, the iterator will fetch all features and check if the id is in the request.
If you have a more sophisticated metodology (SQL request for the features...) and you are sure, that any feature you return from fetchFeature will match if the request was FilterFids you can just redirect this call to fetchFeature so the default check will be omitted.
f | The feature to write to |
Reimplemented in QgsCachedFeatureIterator.
|
protectedvirtual |
Setup the simplification of geometries to fetch using the specified simplify method.
Reimplemented in QgsVectorLayerFeatureIterator.
|
protected |
add reference
|
pure virtual |
reset the iterator to the starting position
Implemented in QgsCachedFeatureWriterIterator, QgsVectorLayerFeatureIterator, and QgsCachedFeatureIterator.
|
friend |
|
protected |
Set to true, as soon as the iterator is closed.
|
protected |
A copy of the feature request.
|
protected |
reference counting (to allow seamless copying of QgsFeatureIterator instances)