Branch data Line data Source code
1 : : /*************************************************************************** 2 : : qgsfeaturestore.cpp 3 : : -------------------------------------- 4 : : Date : February 2013 5 : : Copyright : (C) 2013 by Radim Blazek 6 : : Email : radim.blazek@gmail.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 : : #include "qgsfeaturestore.h" 17 : : 18 : : 19 : 0 : QgsFeatureStore::QgsFeatureStore( const QgsFields &fields, const QgsCoordinateReferenceSystem &crs ) 20 : 0 : : mFields( fields ) 21 : 0 : , mCrs( crs ) 22 : 0 : { 23 : 0 : } 24 : : 25 : 0 : void QgsFeatureStore::setFields( const QgsFields &fields ) 26 : : { 27 : 0 : mFields = fields; 28 : 0 : QgsFeatureList::iterator it = mFeatures.begin(); 29 : 0 : for ( ; it != mFeatures.end(); ++it ) 30 : : { 31 : 0 : ( *it ).setFields( mFields ); 32 : 0 : } 33 : 0 : } 34 : : 35 : 0 : bool QgsFeatureStore::addFeature( QgsFeature &feature, Flags ) 36 : : { 37 : 0 : QgsFeature f( feature ); 38 : 0 : f.setFields( mFields ); 39 : 0 : mFeatures.append( f ); 40 : : return true; 41 : 0 : } 42 : : 43 : 0 : bool QgsFeatureStore::addFeatures( QgsFeatureList &features, Flags flags ) 44 : : { 45 : 0 : QgsFeatureList::iterator fIt = features.begin(); 46 : 0 : for ( ; fIt != features.end(); ++fIt ) 47 : : { 48 : 0 : addFeature( *fIt, flags ); 49 : 0 : } 50 : 0 : return true; 51 : : }