QGIS API Documentation  2.6.0-Brighton
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | List of all members
QgsAbstractCacheIndex Class Reference

Abstract base class for cache indices. More...

#include <qgscacheindex.h>

Inheritance diagram for QgsAbstractCacheIndex:
Inheritance graph
[legend]

Public Member Functions

 QgsAbstractCacheIndex ()
virtual ~QgsAbstractCacheIndex ()
virtual void flushFeature (const QgsFeatureId fid)=0
 Is called, whenever a feature is removed from the cache.
virtual void flush ()=0
 Sometimes, the whole cache changes its state and its easier to just withdraw everything.
virtual void requestCompleted (QgsFeatureRequest featureRequest, QgsFeatureIds fids)
 Implement this method to update the the indices, in case you need information contained by the request to properly index.
virtual bool getCacheIterator (QgsFeatureIterator &featureIterator, const QgsFeatureRequest &featureRequest)=0
 Is called, when a feature request is issued on a cached layer.

Detailed Description

Abstract base class for cache indices.

Constructor & Destructor Documentation

QgsAbstractCacheIndex::QgsAbstractCacheIndex ( )
QgsAbstractCacheIndex::~QgsAbstractCacheIndex ( )
virtual

Member Function Documentation

virtual void QgsAbstractCacheIndex::flush ( )
pure virtual

Sometimes, the whole cache changes its state and its easier to just withdraw everything.

In this case, this method is issued. Be sure to clear all cache information in here.

Implemented in QgsCacheIndexFeatureId.

virtual void QgsAbstractCacheIndex::flushFeature ( const QgsFeatureId  fid)
pure virtual

Is called, whenever a feature is removed from the cache.

You should update your indexes, so they become invalid in case this feature was required to successfuly answer a request.

Implemented in QgsCacheIndexFeatureId.

virtual bool QgsAbstractCacheIndex::getCacheIterator ( QgsFeatureIterator featureIterator,
const QgsFeatureRequest featureRequest 
)
pure virtual

Is called, when a feature request is issued on a cached layer.

If this cache index is able to completely answer the feature request, it will return true and write the list of feature ids of cached features to cachedFeatures. If it is not able it will return false and the cachedFeatures state is undefined.

Parameters
featureIteratorA reference to a QgsFeatureIterator. A valid featureIterator will be assigned in case this index is able to answer the request and the return value is true.
featureRequestThe feature request, for which this index is queried.
Returns
True, if this index holds the information to answer the request.

Implemented in QgsCacheIndexFeatureId.

void QgsAbstractCacheIndex::requestCompleted ( QgsFeatureRequest  featureRequest,
QgsFeatureIds  fids 
)
virtual

Implement this method to update the the indices, in case you need information contained by the request to properly index.

(E.g. spatial index) Does nothing by default

Parameters
featureRequestThe feature request that was answered
fidsThe feature ids that have been returned

Reimplemented in QgsCacheIndexFeatureId.


The documentation for this class was generated from the following files: