QGIS API Documentation  3.4.15-Madeira (e83d02e274)
qgsfeaturestore.cpp
Go to the documentation of this file.
1 /***************************************************************************
2  qgsfeaturestore.cpp
3  --------------------------------------
4  Date : February 2013
5  Copyright : (C) 2013 by Radim Blazek
6  Email : [email protected]
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 #include "qgsfeaturestore.h"
17 
18 
20  : mFields( fields )
21  , mCrs( crs )
22 {
23 }
24 
26 {
27  mFields = fields;
28  QgsFeatureList::iterator it = mFeatures.begin();
29  for ( ; it != mFeatures.end(); ++it )
30  {
31  ( *it ).setFields( mFields );
32  }
33 }
34 
35 bool QgsFeatureStore::addFeature( QgsFeature &feature, Flags )
36 {
37  QgsFeature f( feature );
38  f.setFields( mFields );
39  mFeatures.append( f );
40  return true;
41 }
42 
44 {
45  QgsFeatureList::iterator fIt = features.begin();
46  for ( ; fIt != features.end(); ++fIt )
47  {
48  addFeature( *fIt, flags );
49  }
50  return true;
51 }
void setFields(const QgsFields &fields, bool initAttributes=false)
Assign a field map with the feature to allow attribute access by attribute name.
Definition: qgsfeature.cpp:162
QList< QgsFeature > QgsFeatureList
Definition: qgsfeature.h:571
Container of fields for a vector layer.
Definition: qgsfields.h:42
bool addFeature(QgsFeature &feature, QgsFeatureSink::Flags flags=nullptr) override
Adds a single feature to the sink.
The feature class encapsulates a single feature including its id, geometry and a list of field/values...
Definition: qgsfeature.h:55
const QgsCoordinateReferenceSystem & crs
QgsFields fields() const
Returns the store&#39;s field list.
void setFields(const QgsFields &fields)
Sets the store&#39;s fields.
bool addFeatures(QgsFeatureList &features, QgsFeatureSink::Flags flags=nullptr) override
Adds a list of features to the sink.
QgsFeatureStore()=default
Constructor.
This class represents a coordinate reference system (CRS).
QgsFeatureList features() const
Returns the list of features contained in the store.