QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgsfeaturefilter.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsfeaturefilter.h
3 ------------------
4 begin : 26-10-2017
5 copyright : (C) 2017 by Patrick Valsecchi
6 email : patrick dot valsecchi at camptocamp dot com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGSFEATUREFILTER_H
19#define QGSFEATUREFILTER_H
20
22#include "qgis_server.h"
23
24#include <QMap>
25
26class QgsExpression;
27
33class SERVER_EXPORT QgsFeatureFilter : public QgsFeatureFilterProvider
34{
35 public:
37 QgsFeatureFilter() = default;
38
44 void filterFeatures( const QgsVectorLayer *layer, QgsFeatureRequest &filterFeatures ) const override;
45
46 QStringList layerAttributes( const QgsVectorLayer *layer, const QStringList &attributes ) const override;
47
53
59 void setFilter( const QgsVectorLayer *layer, const QgsExpression &expression );
60
61 private:
62 QMap<QString, QString> mFilters;
63
64};
65
66#endif
Class for parsing and evaluation of expressions (formerly called "search strings").
Abstract interface for use by classes that filter the features or attributes of a layer.
virtual void filterFeatures(const QgsVectorLayer *layer, QgsFeatureRequest &featureRequest) const =0
Add additional filters to the feature request to further restrict the features returned by the reques...
virtual QStringList layerAttributes(const QgsVectorLayer *layer, const QStringList &attributes) const =0
Returns the list of visible attribute names from a list of attributes names for the given layer.
virtual QgsFeatureFilterProvider * clone() const =0
Create a clone of the feature filter provider.
A feature filter provider allowing to set filter expressions on a per-layer basis.
QgsFeatureFilter()=default
Constructor.
This class wraps a request for features to a vector layer (or directly its vector data provider).
Represents a vector layer which manages a vector based data sets.
#define SIP_FACTORY
Definition: qgis_sip.h:76