QGIS API Documentation  3.2.0-Bonn (bc43194)
qgsoverlayutils.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsoverlayutils.h
3  ---------------------
4  Date : April 2018
5  Copyright : (C) 2018 by Martin Dobias
6  Email : wonder dot sk at gmail dot com
7  ***************************************************************************
8  * *
9  * This program is free software; you can redistribute it and/or modify *
10  * it under the terms of the GNU General Public License as published by *
11  * the Free Software Foundation; either version 2 of the License, or *
12  * (at your option) any later version. *
13  * *
14  ***************************************************************************/
15 
16 #ifndef QGSOVERLAYUTILS_H
17 #define QGSOVERLAYUTILS_H
18 
19 #include <QList>
20 
21 #define SIP_NO_FILE
22 
24 
25 class QgsFeatureSource;
26 class QgsFeatureSink;
27 class QgsFields;
30 
31 namespace QgsOverlayUtils
32 {
33 
35  enum DifferenceOutput
36  {
37  OutputA,
38  OutputAB,
39  OutputBA,
40  };
41 
42  void difference( const QgsFeatureSource &sourceA, const QgsFeatureSource &sourceB, QgsFeatureSink &sink, QgsProcessingContext &context, QgsProcessingFeedback *feedback, int &count, int totalCount, DifferenceOutput outputAttrs );
43 
44  void intersection( const QgsFeatureSource &sourceA, const QgsFeatureSource &sourceB, QgsFeatureSink &sink, QgsProcessingContext &context, QgsProcessingFeedback *feedback, int &count, int totalCount, const QList<int> &fieldIndicesA, const QList<int> &fieldIndicesB );
45 
55  void resolveOverlaps( const QgsFeatureSource &source, QgsFeatureSink &sink, QgsProcessingFeedback *feedback );
56 }
57 
59 
60 #endif // QGSOVERLAYUTILS_H
Base class for providing feedback from a processing algorithm.
An interface for objects which accept features via addFeature(s) methods.
Container of fields for a vector layer.
Definition: qgsfields.h:42
An interface for objects which provide features via a getFeatures method.
Contains information about the context in which a processing algorithm is executed.