~ubuntu-branches/debian/sid/gdal/sid

« back to all changes in this revision

Viewing changes to frmts/pcidsk/sdk/pcidsk_vectorsegment.h

  • Committer: Package Import Robot
  • Author(s): Francesco Paolo Lovergine
  • Date: 2012-05-07 15:04:42 UTC
  • mfrom: (5.5.16 experimental)
  • Revision ID: package-import@ubuntu.com-20120507150442-2eks97loeh6rq005
Tags: 1.9.0-1
* Ready for sid, starting transition.
* All symfiles updated to latest builds.
* Added dh_numpy call in debian/rules to depend on numpy ABI.
* Policy bumped to 3.9.3, no changes required.

Show diffs side-by-side

added added

removed removed

Lines of Context:
94
94
 
95
95
 
96
96
/**
 
97
\brief Fetch Projection
 
98
 
 
99
The returned values are the projection parameters in the same form returned
 
100
by PCIDSKGeoref::GetParameters() and the passed in geosys argument is 
 
101
updated with the coordinate system string.
 
102
 
 
103
@return Projection parameters as a vector.
 
104
*/
 
105
        virtual std::vector<double> GetProjection( std::string &geosys ) = 0;
 
106
 
 
107
/**
97
108
\brief Get field count.
98
109
 
99
110
Note that this includes any system attributes, like RingStart, that would
169
180
*/
170
181
        virtual ShapeId     FindNext(ShapeId id) = 0;
171
182
        
 
183
 
 
184
/**
 
185
\brief Fetch the number of shapes in this segment.
 
186
@return the shape count.
 
187
*/
 
188
 
 
189
        virtual int         GetShapeCount() = 0;
 
190
 
172
191
/**
173
192
\brief Fetch the vertices for the indicated shape.
174
193
@param id the shape to fetch
184
203
*/
185
204
        virtual void        GetFields( ShapeId id, 
186
205
                                       std::vector<ShapeField>& list ) = 0;
 
206
 
 
207
 
 
208
/** 
 
209
\brief Set the projection for the segment. 
 
210
 
 
211
For details on the geosys and parms values see the PCIDSKGeoref class.
 
212
 
 
213
@param geosys the usual 16 character coordinate system string.
 
214
@param parms additional parameters needed for user parametrized projection.
 
215
*/
 
216
        virtual void        SetProjection(std::string geosys,
 
217
                                          std::vector<double> parms ) = 0;
 
218
 
 
219
/** 
 
220
\brief Create new attribute field.
 
221
 
 
222
@param name the field name, should be unique in layer.
 
223
@param type the field type.
 
224
@param description the field description.
 
225
@param format the C style format string or "" for default formatting.
 
226
@param default_value the default value for this field or NULL for system default.
 
227
*/
 
228
 
 
229
        virtual void        AddField( std::string name, ShapeFieldType type,
 
230
                                      std::string description,
 
231
                                      std::string format,
 
232
                                      ShapeField *default_value=NULL ) = 0;
 
233
 
 
234
/**
 
235
\brief Create a new shape.
 
236
 
 
237
Newly created shapes have no geometry or attribute values. 
 
238
 
 
239
@param id The ShapeId to assign to the new shape, or default to assign the next available shapeid. 
 
240
 
 
241
@return the shapeid assigned to the newly created shape.
 
242
*/
 
243
 
 
244
        virtual ShapeId     CreateShape( ShapeId id = NullShapeId ) = 0;
 
245
 
 
246
/**
 
247
\brief Delete a shape.
 
248
 
 
249
An exception is thrown if the shape does not exist.
 
250
 
 
251
@param id the shapeid to delete.
 
252
 
 
253
*/
 
254
        virtual void        DeleteShape( ShapeId id ) = 0;
 
255
 
 
256
/**
 
257
\brief Assign vertices to shape. 
 
258
 
 
259
@param id the shape to assign vertices to.
 
260
@param list the list of vertices to assign.
 
261
*/
 
262
 
 
263
        virtual void        SetVertices( ShapeId id, 
 
264
                                         const std::vector<ShapeVertex> &list ) = 0;
 
265
 
 
266
 
 
267
/**
 
268
\brief Assign attribute value to a shape.
 
269
 
 
270
The list of fields should match the types and length from the schema 
 
271
(GetFieldCount(), GetFieldType()). 
 
272
 
 
273
@param id the shape to update.
 
274
@param list the list of field value to assign.
 
275
*/
 
276
        virtual void        SetFields( ShapeId id, 
 
277
                                       const std::vector<ShapeField>& list) = 0;
 
278
 
 
279
// Methods needed 
 
280
        // DeleteField
187
281
    };
188
282
 
189
283
/************************************************************************/