QGIS API Documentation 3.41.0-Master (45a0abf3bec)
Loading...
Searching...
No Matches
qgsfeaturesink.cpp
Go to the documentation of this file.
1/***************************************************************************
2 qgsfeaturesink.cpp
3 ------------------
4 begin : April 2017
5 copyright : (C) 2017 by Nyall Dawson
6 email : nyall dot dawson at gmail 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#include "qgsfeaturestore.h"
19
24
26{
27 QgsFeatureList features;
28 features << feature;
29 const bool result = addFeatures( features, flags );
30
31 if ( !( flags & FastInsert ) )
32 {
33 // need to update the passed feature reference to the updated copy from the features list
34 feature = features.at( 0 );
35 }
36 return result;
37}
38
40{
41 QgsFeature f;
42 bool result = true;
43 while ( iterator.nextFeature( f ) )
44 {
45 result = result && addFeature( f, flags );
46 }
47 return result;
48}
49
Wrapper for iterator of features from vector data provider or vector layer.
bool nextFeature(QgsFeature &f)
Fetch next feature and stores in f, returns true on success.
virtual bool flushBuffer()
Flushes any internal buffer which may exist in the sink, causing any buffered features to be added to...
virtual bool addFeature(QgsFeature &feature, QgsFeatureSink::Flags flags=QgsFeatureSink::Flags())
Adds a single feature to the sink.
@ FastInsert
Use faster inserts, at the cost of updating the passed features to reflect changes made at the provid...
virtual bool addFeatures(QgsFeatureList &features, QgsFeatureSink::Flags flags=QgsFeatureSink::Flags())=0
Adds a list of features to the sink.
virtual void finalize()
Finalizes the sink, flushing any buffered features to the destination.
QFlags< Flag > Flags
The feature class encapsulates a single feature including its unique ID, geometry and a list of field...
Definition qgsfeature.h:58
QList< QgsFeature > QgsFeatureList