25 , mGeometrySimplifier( NULL )
26 , mLocalSimplification( false )
32 delete mGeometrySimplifier;
33 mGeometrySimplifier = NULL;
56 if ( dataOk && mLocalSimplification )
108 mLocalSimplification =
false;
110 delete mGeometrySimplifier;
111 mGeometrySimplifier = NULL;
117 mLocalSimplification = mGeometrySimplifier != NULL;
118 return mLocalSimplification;
125 Q_UNUSED( methodType )
132 if ( mGeometrySimplifier )
147 if (
this != &other )
QgsFeatureId id() const
Get the feature ID for this feature.
Wrapper for iterator of features from vector data provider or vector layer.
const QgsSimplifyMethod & simplifyMethod() const
Get simplification method for geometries that will be fetched.
const Flags & flags() const
Filter using feature IDs.
const QgsAbstractGeometryV2 * geometry() const
Returns the underlying geometry store.
QVariant evaluate(const QgsFeature *f=NULL)
Evaluate the feature and return the result.
virtual bool fetchFeature(QgsFeature &f)=0
If you write a feature iterator for your provider, this is the method you need to implement!! ...
const QgsFeatureIds & filterFids() const
QGis::GeometryType type() const
Returns type of the geometry as a QGis::GeometryType.
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...
virtual bool simplifyGeometry(QgsGeometry *geometry) const =0
Simplifies the specified geometry.
virtual bool nextFeature(QgsFeature &f)
fetch next feature, return true on success
QgsFeatureIterator & operator=(const QgsFeatureIterator &other)
Internal feature iterator to be implemented within data providers.
virtual bool nextFeatureFilterExpression(QgsFeature &f)
By default, the iterator will fetch all features and check if the feature matches the expression...
This class wraps a request for features to a vector layer (or directly its vector data provider)...
No simplification is applied.
FilterType filterType() const
void deref()
remove reference, delete if refs == 0
virtual bool nextFeatureFilterFids(QgsFeature &f)
By default, the iterator will fetch all features and check if the id is in the request.
bool contains(const T &value) const
QgsFeatureRequest mRequest
A copy of the feature request.
QgsAbstractFeatureIterator * mIter
const QgsGeometry * constGeometry() const
Gets a const pointer to the geometry object associated with this feature.
static QgsAbstractGeometrySimplifier * createGeometrySimplifier(const QgsSimplifyMethod &simplifyMethod)
Creates a geometry simplifier according to specified method.
This class contains information about how to simplify geometries fetched from a QgsFeatureIterator.
int refs
reference counting (to allow seamless copying of QgsFeatureIterator instances)
Geometry is not required. It may still be returned if e.g. required for a filter condition.
virtual bool prepareSimplification(const QgsSimplifyMethod &simplifyMethod)
Setup the simplification of geometries to fetch using the specified simplify method.
virtual ~QgsAbstractFeatureIterator()
destructor makes sure that the iterator is closed properly
QgsAbstractFeatureIterator(const QgsFeatureRequest &request)
base class constructor - stores the iteration parameters
MethodType methodType() const
Gets the simplification type.
bool forceLocalOptimization() const
Gets whether the simplification executes after fetch the geometries from provider, otherwise it executes, when supported, in provider before fetch the geometries.
QgsExpression * filterExpression() const