QGIS/python/core/qgsaggregatecalculator.sip

151 lines
4.5 KiB
Plaintext
Raw Normal View History

2017-04-04 08:44:22 +02:00
/************************************************************************
* This file has been generated automatically from *
* *
* src/core/qgsaggregatecalculator.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/
class QgsAggregateCalculator
{
2017-04-04 08:44:22 +02:00
%Docstring
Utility class for calculating aggregates for a field (or expression) over the features
2017-04-07 08:50:57 +02:00
from a vector layer. It is recommended that QgsVectorLayer.aggregate() is used rather then
2017-04-04 08:44:22 +02:00
directly using this class, as the QgsVectorLayer method can handle delegating aggregate calculation
to a data provider for remote calculation.
.. versionadded:: 2.16
%End
%TypeHeaderCode
2017-04-04 08:44:22 +02:00
#include "qgsaggregatecalculator.h"
%End
public:
enum Aggregate
{
2017-04-04 08:44:22 +02:00
Count,
CountDistinct,
CountMissing,
Min,
Max,
Sum,
Mean,
Median,
StDev,
StDevSample,
Range,
Minority,
Majority,
FirstQuartile,
ThirdQuartile,
InterQuartileRange,
StringMinimumLength,
StringMaximumLength,
StringConcatenate,
GeometryCollect,
ArrayAggregate
};
struct AggregateParameters
{
2017-04-04 08:44:22 +02:00
QString filter;
2017-04-04 08:44:22 +02:00
%Docstring
Optional filter for calculating aggregate over a subset of features, or an
empty string to use all features.
2017-04-30 16:51:18 +02:00
.. seealso:: QgsAggregateCalculator.setFilter()
.. seealso:: QgsAggregateCalculator.filter()
2017-04-04 08:44:22 +02:00
%End
QString delimiter;
2017-04-04 08:44:22 +02:00
%Docstring
Delimiter to use for joining values with the StringConcatenate aggregate.
2017-04-30 16:51:18 +02:00
.. seealso:: QgsAggregateCalculator.setDelimiter()
.. seealso:: QgsAggregateCalculator.delimiter()
2017-04-04 08:44:22 +02:00
%End
};
2017-04-04 08:44:22 +02:00
QgsAggregateCalculator( const QgsVectorLayer *layer );
%Docstring
Constructor for QgsAggregateCalculator.
\param layer vector layer to calculate aggregate from
%End
const QgsVectorLayer *layer() const;
%Docstring
Returns the associated vector layer.
:rtype: QgsVectorLayer
2017-04-04 08:44:22 +02:00
%End
void setParameters( const AggregateParameters &parameters );
%Docstring
Sets all aggregate parameters from a parameter bundle.
\param parameters aggregate parameters
%End
void setFilter( const QString &filterExpression );
%Docstring
Sets a filter to limit the features used during the aggregate calculation.
\param filterExpression expression for filtering features, or empty string to remove filter
2017-04-30 16:51:18 +02:00
.. seealso:: filter()
2017-04-04 08:44:22 +02:00
%End
QString filter() const;
2017-04-04 08:44:22 +02:00
%Docstring
Returns the filter which limits the features used during the aggregate calculation.
2017-04-30 16:51:18 +02:00
.. seealso:: setFilter()
:rtype: str
2017-04-04 08:44:22 +02:00
%End
2017-04-04 08:44:22 +02:00
void setDelimiter( const QString &delimiter );
%Docstring
Sets the delimiter to use for joining values with the StringConcatenate aggregate.
\param delimiter string delimiter
2017-04-30 16:51:18 +02:00
.. seealso:: delimiter()
2017-04-04 08:44:22 +02:00
%End
QString delimiter() const;
2017-04-04 08:44:22 +02:00
%Docstring
Returns the delimiter used for joining values with the StringConcatenate aggregate.
2017-04-30 16:51:18 +02:00
.. seealso:: setDelimiter()
:rtype: str
2017-04-04 08:44:22 +02:00
%End
QVariant calculate( Aggregate aggregate, const QString &fieldOrExpression,
QgsExpressionContext *context = 0, bool *ok = 0 ) const;
%Docstring
Calculates the value of an aggregate.
\param aggregate aggregate to calculate
\param fieldOrExpression source field or expression to use as basis for aggregated values.
If an expression is used, then the context parameter must be set.
\param context expression context for evaluating expressions
\param ok if specified, will be set to true if aggregate calculation was successful
:return: calculated aggregate value
:rtype: QVariant
2017-04-04 08:44:22 +02:00
%End
2017-04-04 08:44:22 +02:00
static Aggregate stringToAggregate( const QString &string, bool *ok = 0 );
%Docstring
Converts a string to a aggregate type.
\param string string to convert
\param ok if specified, will be set to true if conversion was successful
:return: aggregate type
:rtype: Aggregate
2017-04-04 08:44:22 +02:00
%End
};
2017-04-04 08:44:22 +02:00
/************************************************************************
* This file has been generated automatically from *
* *
* src/core/qgsaggregatecalculator.h *
* *
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
************************************************************************/