GDAL

- Main Page
- Related Pages
- Classes
- Files
- Download
- Issue Tracker

- File List
- File Members

ogr_core.h
Go to the documentation of this file.
1 /******************************************************************************
2 * $Id$
3 *
4 * Project: OpenGIS Simple Features Reference Implementation
5 * Purpose: Define some core portability services for cross-platform OGR code.
6 * Author: Frank Warmerdam, warmerdam@pobox.com
7 *
8 ******************************************************************************
9 * Copyright (c) 1999, Frank Warmerdam
10 * Copyright (c) 2007-2014, Even Rouault <even dot rouault at mines-paris dot org>
11 *
12 * Permission is hereby granted, free of charge, to any person obtaining a
13 * copy of this software and associated documentation files (the "Software"),
14 * to deal in the Software without restriction, including without limitation
15 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
16 * and/or sell copies of the Software, and to permit persons to whom the
17 * Software is furnished to do so, subject to the following conditions:
18 *
19 * The above copyright notice and this permission notice shall be included
20 * in all copies or substantial portions of the Software.
21 *
22 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
23 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
25 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
27 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
28 * DEALINGS IN THE SOFTWARE.
29 ****************************************************************************/
30
31 #ifndef OGR_CORE_H_INCLUDED
32 #define OGR_CORE_H_INCLUDED
33
34 #include "cpl_port.h"
35 #if defined(GDAL_COMPILATION)
36 #define DO_NOT_DEFINE_GDAL_RELEASE_DATE_AND_GDAL_RELEASE_NAME
37 #endif
38 #include "gdal_version.h"
39
51 #if defined(__cplusplus) && !defined(CPL_SUPRESS_CPLUSPLUS) && !defined(DOXYGEN_SKIP)
52
53 extern "C++"
54 {
55 #include <limits>
56
57 // cppcheck-suppress copyCtorAndEqOperator
58 class CPL_DLL OGREnvelope
59 {
60 public:
61 OGREnvelope() : MinX(std::numeric_limits<double>::infinity()),
62 MaxX(-std::numeric_limits<double>::infinity()),
63 MinY(std::numeric_limits<double>::infinity()),
64 MaxY(-std::numeric_limits<double>::infinity())
65 {
66 }
67
68 OGREnvelope(const OGREnvelope& oOther) :
69 MinX(oOther.MinX),MaxX(oOther.MaxX), MinY(oOther.MinY), MaxY(oOther.MaxY)
70 {
71 }
72
73 double MinX;
74 double MaxX;
75 double MinY;
76 double MaxY;
77
78 #ifdef HAVE_GCC_DIAGNOSTIC_PUSH
79 #pragma GCC diagnostic push
80 #pragma GCC diagnostic ignored "-Wfloat-equal"
81 #endif
82 int IsInit() const { return MinX != std::numeric_limits<double>::infinity(); }
83
84 #ifdef HAVE_GCC_DIAGNOSTIC_PUSH
85 #pragma GCC diagnostic pop
86 #endif
87
88 void Merge( OGREnvelope const& sOther ) {
89 MinX = MIN(MinX,sOther.MinX);
90 MaxX = MAX(MaxX,sOther.MaxX);
91 MinY = MIN(MinY,sOther.MinY);
92 MaxY = MAX(MaxY,sOther.MaxY);
93 }
94
95 void Merge( double dfX, double dfY ) {
96 MinX = MIN(MinX,dfX);
97 MaxX = MAX(MaxX,dfX);
98 MinY = MIN(MinY,dfY);
99 MaxY = MAX(MaxY,dfY);
100 }
101
102 void Intersect( OGREnvelope const& sOther ) {
103 if(Intersects(sOther))
104 {
105 if( IsInit() )
106 {
107 MinX = MAX(MinX,sOther.MinX);
108 MaxX = MIN(MaxX,sOther.MaxX);
109 MinY = MAX(MinY,sOther.MinY);
110 MaxY = MIN(MaxY,sOther.MaxY);
111 }
112 else
113 {
114 MinX = sOther.MinX;
115 MaxX = sOther.MaxX;
116 MinY = sOther.MinY;
117 MaxY = sOther.MaxY;
118 }
119 }
120 else
121 {
122 *this = OGREnvelope();
123 }
124 }
125
126 int Intersects(OGREnvelope const& other) const
127 {
128 return MinX <= other.MaxX && MaxX >= other.MinX &&
129 MinY <= other.MaxY && MaxY >= other.MinY;
130 }
131
132 int Contains(OGREnvelope const& other) const
133 {
134 return MinX <= other.MinX && MinY <= other.MinY &&
135 MaxX >= other.MaxX && MaxY >= other.MaxY;
136 }
137 };
138
139 } // extern "C++"
140
141 #else
142 typedef struct
143 {
144 double MinX;
145 double MaxX;
146 double MinY;
147 double MaxY;
148 } OGREnvelope;
149 #endif
150
155 #if defined(__cplusplus) && !defined(CPL_SUPRESS_CPLUSPLUS) && !defined(DOXYGEN_SKIP)
156
157 extern "C++" {
158
159 // cppcheck-suppress copyCtorAndEqOperator
160 class CPL_DLL OGREnvelope3D : public OGREnvelope
161 {
162 public:
163 OGREnvelope3D() : OGREnvelope(),
164 MinZ(std::numeric_limits<double>::infinity()),
165 MaxZ(-std::numeric_limits<double>::infinity())
166 {
167 }
168
169 OGREnvelope3D(const OGREnvelope3D& oOther) :
170 OGREnvelope(oOther),
171 MinZ(oOther.MinZ), MaxZ(oOther.MaxZ)
172 {
173 }
174
175 double MinZ;
176 double MaxZ;
177
178 #ifdef HAVE_GCC_DIAGNOSTIC_PUSH
179 #pragma GCC diagnostic push
180 #pragma GCC diagnostic ignored "-Wfloat-equal"
181 #endif
182 int IsInit() const { return MinX != std::numeric_limits<double>::infinity(); }
183 #ifdef HAVE_GCC_DIAGNOSTIC_PUSH
184 #pragma GCC diagnostic pop
185 #endif
186
187 void Merge( OGREnvelope3D const& sOther ) {
188 MinX = MIN(MinX,sOther.MinX);
189 MaxX = MAX(MaxX,sOther.MaxX);
190 MinY = MIN(MinY,sOther.MinY);
191 MaxY = MAX(MaxY,sOther.MaxY);
192 MinZ = MIN(MinZ,sOther.MinZ);
193 MaxZ = MAX(MaxZ,sOther.MaxZ);
194 }
195
196 void Merge( double dfX, double dfY, double dfZ ) {
197 MinX = MIN(MinX,dfX);
198 MaxX = MAX(MaxX,dfX);
199 MinY = MIN(MinY,dfY);
200 MaxY = MAX(MaxY,dfY);
201 MinZ = MIN(MinZ,dfZ);
202 MaxZ = MAX(MaxZ,dfZ);
203 }
204
205 void Intersect( OGREnvelope3D const& sOther ) {
206 if(Intersects(sOther))
207 {
208 if( IsInit() )
209 {
210 MinX = MAX(MinX,sOther.MinX);
211 MaxX = MIN(MaxX,sOther.MaxX);
212 MinY = MAX(MinY,sOther.MinY);
213 MaxY = MIN(MaxY,sOther.MaxY);
214 MinZ = MAX(MinZ,sOther.MinZ);
215 MaxZ = MIN(MaxZ,sOther.MaxZ);
216 }
217 else
218 {
219 MinX = sOther.MinX;
220 MaxX = sOther.MaxX;
221 MinY = sOther.MinY;
222 MaxY = sOther.MaxY;
223 MinZ = sOther.MinZ;
224 MaxZ = sOther.MaxZ;
225 }
226 }
227 else
228 {
229 *this = OGREnvelope3D();
230 }
231 }
232
233 int Intersects(OGREnvelope3D const& other) const
234 {
235 return MinX <= other.MaxX && MaxX >= other.MinX &&
236 MinY <= other.MaxY && MaxY >= other.MinY &&
237 MinZ <= other.MaxZ && MaxZ >= other.MinZ;
238 }
239
240 int Contains(OGREnvelope3D const& other) const
241 {
242 return MinX <= other.MinX && MinY <= other.MinY &&
243 MaxX >= other.MaxX && MaxY >= other.MaxY &&
244 MinZ <= other.MinZ && MaxZ >= other.MaxZ;
245 }
246 };
247
248 } // extern "C++"
249
250 #else
251 typedef struct
252 {
253 double MinX;
254 double MaxX;
255 double MinY;
256 double MaxY;
257 double MinZ;
258 double MaxZ;
259 } OGREnvelope3D;
260 #endif
261
263 CPL_C_START
264
266 void CPL_DLL *OGRMalloc( size_t ) CPL_WARN_DEPRECATED("Use CPLMalloc instead.");
267 void CPL_DLL *OGRCalloc( size_t, size_t ) CPL_WARN_DEPRECATED("Use CPLCalloc instead.");
268 void CPL_DLL *OGRRealloc( void *, size_t ) CPL_WARN_DEPRECATED("Use CPLRealloc instead.");
269 char CPL_DLL *OGRStrdup( const char * ) CPL_WARN_DEPRECATED("Use CPLStrdup instead.");
270 void CPL_DLL OGRFree( void * ) CPL_WARN_DEPRECATED("Use CPLFree instead.");
273 #ifdef STRICT_OGRERR_TYPE
274
275 typedef enum
276 {
277 OGRERR_NONE,
278 OGRERR_NOT_ENOUGH_DATA,
279 OGRERR_NOT_ENOUGH_MEMORY,
280 OGRERR_UNSUPPORTED_GEOMETRY_TYPE,
281 OGRERR_UNSUPPORTED_OPERATION,
282 OGRERR_CORRUPT_DATA,
283 OGRERR_FAILURE,
284 OGRERR_UNSUPPORTED_SRS,
285 OGRERR_INVALID_HANDLE,
286 OGRERR_NON_EXISTING_FEATURE
287 } OGRErr;
288 #else
289
290 typedef int OGRErr;
291
292 #define OGRERR_NONE 0
293 #define OGRERR_NOT_ENOUGH_DATA 1
294 #define OGRERR_NOT_ENOUGH_MEMORY 2
295 #define OGRERR_UNSUPPORTED_GEOMETRY_TYPE 3
296 #define OGRERR_UNSUPPORTED_OPERATION 4
297 #define OGRERR_CORRUPT_DATA 5
298 #define OGRERR_FAILURE 6
299 #define OGRERR_UNSUPPORTED_SRS 7
300 #define OGRERR_INVALID_HANDLE 8
301 #define OGRERR_NON_EXISTING_FEATURE 9
303 #endif
304
306 typedef int OGRBoolean;
307
308 /* -------------------------------------------------------------------- */
309 /* ogr_geometry.h related definitions. */
310 /* -------------------------------------------------------------------- */
311
317 typedef enum
318 {
319 wkbUnknown = 0,
321 wkbPoint = 1,
322 wkbLineString = 2,
324 wkbPolygon = 3,
327 wkbMultiPoint = 4,
328 wkbMultiLineString = 5,
329 wkbMultiPolygon = 6,
330 wkbGeometryCollection = 7,
333 wkbCircularString = 8,
335 wkbCompoundCurve = 9,
336 wkbCurvePolygon = 10,
339 wkbMultiCurve = 11,
340 wkbMultiSurface = 12,
341 wkbCurve = 13,
342 wkbSurface = 14,
343 wkbPolyhedralSurface = 15,
345 wkbTIN = 16,
347 wkbTriangle = 17,
349 wkbNone = 100,
350 wkbLinearRing = 101,
352 wkbCircularStringZ = 1008,
353 wkbCompoundCurveZ = 1009,
354 wkbCurvePolygonZ = 1010,
355 wkbMultiCurveZ = 1011,
356 wkbMultiSurfaceZ = 1012,
357 wkbCurveZ = 1013,
358 wkbSurfaceZ = 1014,
359 wkbPolyhedralSurfaceZ = 1015,
360 wkbTINZ = 1016,
361 wkbTriangleZ = 1017,
363 wkbPointM = 2001,
364 wkbLineStringM = 2002,
365 wkbPolygonM = 2003,
366 wkbMultiPointM = 2004,
367 wkbMultiLineStringM = 2005,
368 wkbMultiPolygonM = 2006,
369 wkbGeometryCollectionM = 2007,
370 wkbCircularStringM = 2008,
371 wkbCompoundCurveM = 2009,
372 wkbCurvePolygonM = 2010,
373 wkbMultiCurveM = 2011,
374 wkbMultiSurfaceM = 2012,
375 wkbCurveM = 2013,
376 wkbSurfaceM = 2014,
377 wkbPolyhedralSurfaceM = 2015,
378 wkbTINM = 2016,
379 wkbTriangleM = 2017,
381 wkbPointZM = 3001,
382 wkbLineStringZM = 3002,
383 wkbPolygonZM = 3003,
384 wkbMultiPointZM = 3004,
385 wkbMultiLineStringZM = 3005,
386 wkbMultiPolygonZM = 3006,
387 wkbGeometryCollectionZM = 3007,
388 wkbCircularStringZM = 3008,
389 wkbCompoundCurveZM = 3009,
390 wkbCurvePolygonZM = 3010,
391 wkbMultiCurveZM = 3011,
392 wkbMultiSurfaceZM = 3012,
393 wkbCurveZM = 3013,
394 wkbSurfaceZM = 3014,
395 wkbPolyhedralSurfaceZM = 3015,
396 wkbTINZM = 3016,
397 wkbTriangleZM = 3017,
399 wkbPoint25D = 0x80000001,
400 wkbLineString25D = 0x80000002,
401 wkbPolygon25D = 0x80000003,
402 wkbMultiPoint25D = 0x80000004,
403 wkbMultiLineString25D = 0x80000005,
404 wkbMultiPolygon25D = 0x80000006,
405 wkbGeometryCollection25D = 0x80000007
407 } OGRwkbGeometryType;
408
423 typedef enum
424 {
425 wkbVariantOldOgc,
426 wkbVariantIso,
427 wkbVariantPostGIS1
428 } OGRwkbVariant;
429
430 #ifndef GDAL_COMPILATION
431
432 #define wkb25DBit 0x80000000
433 #endif
434
435 #ifndef __cplusplus
436
437 #define wkbFlatten(x) OGR_GT_Flatten((OGRwkbGeometryType)(x))
438 #else
439
440 #define wkbFlatten(x) OGR_GT_Flatten(static_cast<OGRwkbGeometryType>(x))
441 #endif
442
446 #define wkbHasZ(x) (OGR_GT_HasZ(x) != 0)
447
451 #define wkbSetZ(x) OGR_GT_SetZ(x)
452
456 #define wkbHasM(x) (OGR_GT_HasM(x) != 0)
457
461 #define wkbSetM(x) OGR_GT_SetM(x)
462
463 #ifndef DOXYGEN_SKIP
464 #define ogrZMarker 0x21125711
465 #endif
466
467 const char CPL_DLL * OGRGeometryTypeToName( OGRwkbGeometryType eType );
468 OGRwkbGeometryType CPL_DLL OGRMergeGeometryTypes( OGRwkbGeometryType eMain,
469 OGRwkbGeometryType eExtra );
470 OGRwkbGeometryType CPL_DLL OGRMergeGeometryTypesEx( OGRwkbGeometryType eMain,
471 OGRwkbGeometryType eExtra,
472 int bAllowPromotingToCurves );
473 OGRwkbGeometryType CPL_DLL OGR_GT_Flatten( OGRwkbGeometryType eType );
474 OGRwkbGeometryType CPL_DLL OGR_GT_SetZ( OGRwkbGeometryType eType );
475 OGRwkbGeometryType CPL_DLL OGR_GT_SetM( OGRwkbGeometryType eType );
476 OGRwkbGeometryType CPL_DLL OGR_GT_SetModifier( OGRwkbGeometryType eType, int bSetZ, int bSetM );
477 int CPL_DLL OGR_GT_HasZ( OGRwkbGeometryType eType );
478 int CPL_DLL OGR_GT_HasM( OGRwkbGeometryType eType );
479 int CPL_DLL OGR_GT_IsSubClassOf( OGRwkbGeometryType eType,
480 OGRwkbGeometryType eSuperType );
481 int CPL_DLL OGR_GT_IsCurve( OGRwkbGeometryType );
482 int CPL_DLL OGR_GT_IsSurface( OGRwkbGeometryType );
483 int CPL_DLL OGR_GT_IsNonLinear( OGRwkbGeometryType );
484 OGRwkbGeometryType CPL_DLL OGR_GT_GetCollection( OGRwkbGeometryType eType );
485 OGRwkbGeometryType CPL_DLL OGR_GT_GetCurve( OGRwkbGeometryType eType );
486 OGRwkbGeometryType CPL_DLL OGR_GT_GetLinear( OGRwkbGeometryType eType );
487
489 typedef enum
490 {
491 wkbXDR = 0,
492 wkbNDR = 1
493 } OGRwkbByteOrder;
494
495 #ifndef DOXYGEN_SKIP
496
497 #ifndef NO_HACK_FOR_IBM_DB2_V72
498 # define HACK_FOR_IBM_DB2_V72
499 #endif
500
501 #ifdef HACK_FOR_IBM_DB2_V72
502 # define DB2_V72_FIX_BYTE_ORDER(x) ((((x) & 0x31) == (x)) ? ((x) & 0x1) : (x))
503 # define DB2_V72_UNFIX_BYTE_ORDER(x) CPL_STATIC_CAST(unsigned char, OGRGeometry::bGenerate_DB2_V72_BYTE_ORDER ? ((x) | 0x30) : (x))
504 #else
505 # define DB2_V72_FIX_BYTE_ORDER(x) (x)
506 # define DB2_V72_UNFIX_BYTE_ORDER(x) (x)
507 #endif
508
509 #endif /* #ifndef DOXYGEN_SKIP */
510
514 #define ALTER_NAME_FLAG 0x1
515
519 #define ALTER_TYPE_FLAG 0x2
520
524 #define ALTER_WIDTH_PRECISION_FLAG 0x4
525
530 #define ALTER_NULLABLE_FLAG 0x8
531
536 #define ALTER_DEFAULT_FLAG 0x10
537
541 #define ALTER_ALL_FLAG (ALTER_NAME_FLAG | ALTER_TYPE_FLAG | ALTER_WIDTH_PRECISION_FLAG | ALTER_NULLABLE_FLAG | ALTER_DEFAULT_FLAG)
542
547 #define OGR_F_VAL_NULL 0x00000001
548
553 #define OGR_F_VAL_GEOM_TYPE 0x00000002
554
559 #define OGR_F_VAL_WIDTH 0x00000004
560
568 #define OGR_F_VAL_ALLOW_NULL_WHEN_DEFAULT 0x00000008
569
576 #define OGR_F_VAL_ALLOW_DIFFERENT_GEOM_DIM 0x00000010
577
582 #define OGR_F_VAL_ALL (0x7FFFFFFF & ~OGR_F_VAL_ALLOW_DIFFERENT_GEOM_DIM)
583
584 /************************************************************************/
585 /* ogr_feature.h related definitions. */
586 /************************************************************************/
587
594 typedef enum
595 { OFTInteger = 0, OFTIntegerList = 1, OFTReal = 2, OFTRealList = 3, OFTString = 4, OFTStringList = 5, OFTWideString = 6, OFTWideStringList = 7, OFTBinary = 8, OFTDate = 9, OFTTime = 10, OFTDateTime = 11, OFTInteger64 = 12, OFTInteger64List = 13,
610 OFTMaxType = 13
611 } OGRFieldType;
612
622 typedef enum
623 { OFSTNone = 0,
626 OFSTBoolean = 1,
628 OFSTInt16 = 2,
630 OFSTFloat32 = 3,
631 OFSTMaxSubType = 3
632 } OGRFieldSubType;
633
638 typedef enum
639 {
640 OJUndefined = 0,
641 OJLeft = 1,
642 OJRight = 2
643 } OGRJustification;
644
646 #define OGRNullFID -1
647
648 /* Special value for an unknown field type. This should only be used
649 * while reading a file. At the end of file any unknown types should
650 * be set to OFTString.
651 */
653 #define OGRUnknownType static_cast<OGRFieldType>(-1)
654
661 #define OGRUnsetMarker -21121
662
669 #define OGRNullMarker -21122
670
671 /************************************************************************/
672 /* OGRField */
673 /************************************************************************/
674
679 typedef union {
681 int Integer;
682 GIntBig Integer64;
683 double Real;
684 char *String;
685
686 struct {
687 int nCount;
688 int *paList;
689 } IntegerList;
690
691 struct {
692 int nCount;
693 GIntBig *paList;
694 } Integer64List;
695
696 struct {
697 int nCount;
698 double *paList;
699 } RealList;
700
701 struct {
702 int nCount;
703 char **paList;
704 } StringList;
705
706 struct {
707 int nCount;
708 GByte *paData;
709 } Binary;
710
711 struct {
712 int nMarker1;
713 int nMarker2;
714 int nMarker3;
715 } Set;
716
717 struct {
718 GInt16 Year;
719 GByte Month;
720 GByte Day;
721 GByte Hour;
722 GByte Minute;
723 GByte TZFlag; /* 0=unknown, 1=localtime(ambiguous),
724 100=GMT, 104=GMT+1, 80=GMT-5, etc */
725 GByte Reserved; /* must be set to 0 */
726 float Second; /* with millisecond accuracy. at the end of the structure, so as to keep it 12 bytes on 32 bit */
727 } Date;
729 } OGRField;
730
731 #ifdef __cplusplus
732
733 inline int OGR_GET_MS(float fSec) {
734 if( CPLIsNan(fSec) ) return 0;
735 if( fSec >= 999 ) return 999;
736 if( fSec <= 0 ) return 0;
737 const float fValue = (fSec - static_cast<int>(fSec)) * 1000 + 0.5f;
738 return static_cast<int>(fValue);
739 }
740 #endif // __cplusplus
741
742 int CPL_DLL OGRParseDate( const char *pszInput, OGRField *psOutput,
743 int nOptions );
744
745 /* -------------------------------------------------------------------- */
746 /* Constants from ogrsf_frmts.h for capabilities. */
747 /* -------------------------------------------------------------------- */
748 #define OLCRandomRead "RandomRead"
749 #define OLCSequentialWrite "SequentialWrite"
750 #define OLCRandomWrite "RandomWrite"
751 #define OLCFastSpatialFilter "FastSpatialFilter"
752 #define OLCFastFeatureCount "FastFeatureCount"
753 #define OLCFastGetExtent "FastGetExtent"
754 #define OLCCreateField "CreateField"
755 #define OLCDeleteField "DeleteField"
756 #define OLCReorderFields "ReorderFields"
757 #define OLCAlterFieldDefn "AlterFieldDefn"
758 #define OLCTransactions "Transactions"
759 #define OLCDeleteFeature "DeleteFeature"
760 #define OLCFastSetNextByIndex "FastSetNextByIndex"
761 #define OLCStringsAsUTF8 "StringsAsUTF8"
762 #define OLCIgnoreFields "IgnoreFields"
763 #define OLCCreateGeomField "CreateGeomField"
764 #define OLCCurveGeometries "CurveGeometries"
765 #define OLCMeasuredGeometries "MeasuredGeometries"
767 #define ODsCCreateLayer "CreateLayer"
768 #define ODsCDeleteLayer "DeleteLayer"
769 #define ODsCCreateGeomFieldAfterCreateLayer "CreateGeomFieldAfterCreateLayer"
770 #define ODsCCurveGeometries "CurveGeometries"
771 #define ODsCTransactions "Transactions"
772 #define ODsCEmulatedTransactions "EmulatedTransactions"
773 #define ODsCMeasuredGeometries "MeasuredGeometries"
774 #define ODsCRandomLayerRead "RandomLayerRead"
775 #define ODsCRandomLayerWrite "RandomLayerWrite "
777 #define ODrCCreateDataSource "CreateDataSource"
778 #define ODrCDeleteDataSource "DeleteDataSource"
780 /* -------------------------------------------------------------------- */
781 /* Layer metadata items. */
782 /* -------------------------------------------------------------------- */
787 #define OLMD_FID64 "OLMD_FID64"
788
789 /************************************************************************/
790 /* ogr_featurestyle.h related definitions. */
791 /************************************************************************/
792
797 typedef enum ogr_style_tool_class_id
798 {
799 OGRSTCNone = 0,
800 OGRSTCPen = 1,
801 OGRSTCBrush = 2,
802 OGRSTCSymbol = 3,
803 OGRSTCLabel = 4,
804 OGRSTCVector = 5
805 } OGRSTClassId;
806
810 typedef enum ogr_style_tool_units_id
811 {
812 OGRSTUGround = 0,
813 OGRSTUPixel = 1,
814 OGRSTUPoints = 2,
815 OGRSTUMM = 3,
816 OGRSTUCM = 4,
817 OGRSTUInches = 5
818 } OGRSTUnitId;
819
823 typedef enum ogr_style_tool_param_pen_id
824 {
825 OGRSTPenColor = 0,
826 OGRSTPenWidth = 1,
827 OGRSTPenPattern = 2,
828 OGRSTPenId = 3,
829 OGRSTPenPerOffset = 4,
830 OGRSTPenCap = 5,
831 OGRSTPenJoin = 6,
832 OGRSTPenPriority = 7,
833 #ifndef DOXYGEN_SKIP
834 OGRSTPenLast = 8
835 #endif
836 } OGRSTPenParam;
837
841 typedef enum ogr_style_tool_param_brush_id
842 {
843 OGRSTBrushFColor = 0,
844 OGRSTBrushBColor = 1,
845 OGRSTBrushId = 2,
846 OGRSTBrushAngle = 3,
847 OGRSTBrushSize = 4,
848 OGRSTBrushDx = 5,
849 OGRSTBrushDy = 6,
850 OGRSTBrushPriority = 7,
851 #ifndef DOXYGEN_SKIP
852 OGRSTBrushLast = 8
853 #endif
854
855 } OGRSTBrushParam;
856
860 typedef enum ogr_style_tool_param_symbol_id
861 {
862 OGRSTSymbolId = 0,
863 OGRSTSymbolAngle = 1,
864 OGRSTSymbolColor = 2,
865 OGRSTSymbolSize = 3,
866 OGRSTSymbolDx = 4,
867 OGRSTSymbolDy = 5,
868 OGRSTSymbolStep = 6,
869 OGRSTSymbolPerp = 7,
870 OGRSTSymbolOffset = 8,
871 OGRSTSymbolPriority = 9,
872 OGRSTSymbolFontName = 10,
873 OGRSTSymbolOColor = 11,
874 #ifndef DOXYGEN_SKIP
875 OGRSTSymbolLast = 12
876 #endif
877 } OGRSTSymbolParam;
878
882 typedef enum ogr_style_tool_param_label_id
883 {
884 OGRSTLabelFontName = 0,
885 OGRSTLabelSize = 1,
886 OGRSTLabelTextString = 2,
887 OGRSTLabelAngle = 3,
888 OGRSTLabelFColor = 4,
889 OGRSTLabelBColor = 5,
890 OGRSTLabelPlacement = 6,
891 OGRSTLabelAnchor = 7,
892 OGRSTLabelDx = 8,
893 OGRSTLabelDy = 9,
894 OGRSTLabelPerp = 10,
895 OGRSTLabelBold = 11,
896 OGRSTLabelItalic = 12,
897 OGRSTLabelUnderline = 13,
898 OGRSTLabelPriority = 14,
899 OGRSTLabelStrikeout = 15,
900 OGRSTLabelStretch = 16,
901 OGRSTLabelAdjHor = 17,
902 OGRSTLabelAdjVert = 18,
903 OGRSTLabelHColor = 19,
904 OGRSTLabelOColor = 20,
905 #ifndef DOXYGEN_SKIP
906 OGRSTLabelLast = 21
907 #endif
908 } OGRSTLabelParam;
909
910 /* ------------------------------------------------------------------- */
911 /* Version checking */
912 /* -------------------------------------------------------------------- */
913
914 #ifndef DOXYGEN_SKIP
915
916 /* Note to developers : please keep this section in sync with gdal.h */
917
918 #ifndef GDAL_VERSION_INFO_DEFINED
919 #define GDAL_VERSION_INFO_DEFINED
920 const char CPL_DLL * CPL_STDCALL GDALVersionInfo( const char * );
921 #endif
922
923 #ifndef GDAL_CHECK_VERSION
924
936 int CPL_DLL CPL_STDCALL GDALCheckVersion( int nVersionMajor, int nVersionMinor,
937 const char* pszCallingComponentName);
938
940 #define GDAL_CHECK_VERSION(pszCallingComponentName) \
941 GDALCheckVersion(GDAL_VERSION_MAJOR, GDAL_VERSION_MINOR, pszCallingComponentName)
942
943 #endif
944
945 #endif /* #ifndef DOXYGEN_SKIP */
946
947 CPL_C_END
948
949 #endif /* ndef OGR_CORE_H_INCLUDED */
wkbMultiPolygonZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:386
wkbNone
non-standard, for pure attribute records
Definition: ogr_core.h:349
wkbVariantIso
SFSQL 1.2 and ISO SQL/MM Part 3 extended dimension (Z&M) WKB types.
Definition: ogr_core.h:426
OGRSTSymbolDy
Dy.
Definition: ogr_core.h:867
OGRSTLabelOColor
Outline color.
Definition: ogr_core.h:904
OGRSTSymbolId
Id.
Definition: ogr_core.h:862
OGRSTBrushDx
Dx.
Definition: ogr_core.h:848
CPLRealloc
void * CPLRealloc(void *, size_t) CPL_WARN_UNUSED_RESULT
Safe version of realloc().
Definition: cpl_conv.cpp:224
OGRSTLabelFontName
Font name.
Definition: ogr_core.h:884
OGRSTSymbolParam
enum ogr_style_tool_param_symbol_id OGRSTSymbolParam
List of parameters for use with OGRStyleSymbol.
OGRSTLabelHColor
Highlight color.
Definition: ogr_core.h:903
OGRSTBrushFColor
Foreground color.
Definition: ogr_core.h:843
wkbCircularStringM
ISO SQL/MM Part 3.
Definition: ogr_core.h:370
wkbMultiCurveM
ISO SQL/MM Part 3.
Definition: ogr_core.h:373
wkbLineStringM
ISO SQL/MM Part 3.
Definition: ogr_core.h:364
OGRFieldSubType
OGRFieldSubType
List of field subtypes.
Definition: ogr_core.h:622
wkbCurveZ
wkbCurve with Z component.
Definition: ogr_core.h:357
OGRERR_CORRUPT_DATA
#define OGRERR_CORRUPT_DATA
Corrupt data.
Definition: ogr_core.h:297
OGRSTPenColor
Color.
Definition: ogr_core.h:825
ogr_style_tool_param_label_id
ogr_style_tool_param_label_id
List of parameters for use with OGRStyleLabel.
Definition: ogr_core.h:882
OGRSTBrushBColor
Background color.
Definition: ogr_core.h:844
OGR_GET_MS
int OGR_GET_MS(float fSec)
Return the number of milliseconds from a datetime with decimal seconds.
Definition: ogr_core.h:733
wkbTINZ
ISO SQL/MM Part 3.
Definition: ogr_core.h:360
wkbMultiSurfaceZ
wkbMultiSurface with Z component.
Definition: ogr_core.h:356
cpl_port.h
Core portability definitions for CPL.
CPL_C_START
#define CPL_C_START
Macro to start a block of C symbols.
Definition: cpl_port.h:335
CPLMalloc
void * CPLMalloc(size_t) CPL_WARN_UNUSED_RESULT
Safe version of malloc().
Definition: cpl_conv.cpp:167
wkbCurvePolygonM
ISO SQL/MM Part 3.
Definition: ogr_core.h:372
wkbGeometryCollectionM
ISO SQL/MM Part 3.
Definition: ogr_core.h:369
OGRSTLabelAnchor
Anchor.
Definition: ogr_core.h:891
wkbMultiPolygon25D
2.5D extension as per 99-402
Definition: ogr_core.h:404
OFSTNone
No subtype.
Definition: ogr_core.h:624
OGRSTSymbolSize
Size.
Definition: ogr_core.h:865
OFTInteger64List
List of 64bit integers.
Definition: ogr_core.h:609
OGRSTBrushPriority
Priority.
Definition: ogr_core.h:850
OGRSTSymbolOffset
Offset.
Definition: ogr_core.h:870
wkbMultiLineString25D
2.5D extension as per 99-402
Definition: ogr_core.h:403
OGRSTLabelAngle
Angle.
Definition: ogr_core.h:887
OGRSTPenJoin
Join.
Definition: ogr_core.h:831
wkbPolygon
planar 2-dimensional geometric object defined by 1 exterior boundary and 0 or more interior boundarie...
Definition: ogr_core.h:324
OGRSTSymbolColor
Color.
Definition: ogr_core.h:864
wkbPolyhedralSurface
a contiguous collection of polygons, which share common boundary segments, ISO SQL/MM Part 3...
Definition: ogr_core.h:343
wkbMultiCurveZ
wkbMultiCurve with Z component.
Definition: ogr_core.h:355
wkbMultiPointM
ISO SQL/MM Part 3.
Definition: ogr_core.h:366
OFTTime
Time.
Definition: ogr_core.h:606
OGRSTLabelUnderline
Underline.
Definition: ogr_core.h:897
wkbLinearRing
non-standard, just for createGeometry()
Definition: ogr_core.h:350
OFTDate
Date.
Definition: ogr_core.h:605
GDALCheckVersion
int GDALCheckVersion(int nVersionMajor, int nVersionMinor, const char *pszCallingComponentName)
Return TRUE if GDAL library version at runtime matches nVersionMajor.nVersionMinor.
Definition: gdal_misc.cpp:2305
OGRSTBrushParam
enum ogr_style_tool_param_brush_id OGRSTBrushParam
List of parameters for use with OGRStyleBrush.
wkbGeometryCollectionZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:387
OGR_GT_SetM
OGRwkbGeometryType OGR_GT_SetM(OGRwkbGeometryType eType)
Returns the measured geometry type corresponding to the passed geometry type.
Definition: ogrgeometry.cpp:6222
OGRSTLabelAdjVert
OBSOLETE; do not use.
Definition: ogr_core.h:902
GInt16
short GInt16
Int16 type.
Definition: cpl_port.h:209
OGRSTBrushDy
Dy.
Definition: ogr_core.h:849
OGRBoolean
int OGRBoolean
Type for a OGR boolean.
Definition: ogr_core.h:306
wkbCompoundCurveZ
wkbCompoundCurve with Z component.
Definition: ogr_core.h:353
wkbLineString25D
2.5D extension as per 99-402
Definition: ogr_core.h:400
OGRERR_NONE
#define OGRERR_NONE
Success.
Definition: ogr_core.h:292
OGRSTLabelParam
enum ogr_style_tool_param_label_id OGRSTLabelParam
List of parameters for use with OGRStyleLabel.
OGRSTLabelBold
Bold.
Definition: ogr_core.h:895
wkbPolyhedralSurfaceM
ISO SQL/MM Part 3.
Definition: ogr_core.h:377
ogr_style_tool_param_pen_id
ogr_style_tool_param_pen_id
List of parameters for use with OGRStylePen.
Definition: ogr_core.h:823
GByte
unsigned char GByte
Unsigned byte type.
Definition: cpl_port.h:213
OGRSTCPen
Pen.
Definition: ogr_core.h:800
OGRSTUGround
Ground unit.
Definition: ogr_core.h:812
OGRSTBrushId
Id.
Definition: ogr_core.h:845
OGRSTPenCap
Cap.
Definition: ogr_core.h:830
OFTRealList
List of doubles.
Definition: ogr_core.h:599
ogr_style_tool_param_symbol_id
ogr_style_tool_param_symbol_id
List of parameters for use with OGRStyleSymbol.
Definition: ogr_core.h:860
wkbTriangleZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:397
wkbGeometryCollection
geometric object that is a collection of 1 or more geometric objects, standard WKB ...
Definition: ogr_core.h:330
wkbLineString
1-dimensional geometric object with linear interpolation between Points, standard WKB ...
Definition: ogr_core.h:322
OGRSTSymbolPerp
Perpendicular.
Definition: ogr_core.h:869
OGRwkbByteOrder
OGRwkbByteOrder
Enumeration to describe byte order.
Definition: ogr_core.h:489
OFTReal
Double Precision floating point.
Definition: ogr_core.h:598
OGR_GT_Flatten
OGRwkbGeometryType OGR_GT_Flatten(OGRwkbGeometryType eType)
Returns the 2D geometry type corresponding to the passed geometry type.
Definition: ogrgeometry.cpp:6128
OGRERR_UNSUPPORTED_OPERATION
#define OGRERR_UNSUPPORTED_OPERATION
Unsupported operation.
Definition: ogr_core.h:296
wkbUnknown
unknown type, non-standard
Definition: ogr_core.h:319
OGRSTPenPerOffset
Perpendicular offset.
Definition: ogr_core.h:829
wkbGeometryCollection25D
2.5D extension as per 99-402
Definition: ogr_core.h:405
wkbMultiLineStringM
ISO SQL/MM Part 3.
Definition: ogr_core.h:367
OGRSTLabelDx
Dx.
Definition: ogr_core.h:892
wkbSurface
Surface (abstract type).
Definition: ogr_core.h:342
CPLStrdup
char * CPLStrdup(const char *) CPL_WARN_UNUSED_RESULT CPL_RETURNS_NONNULL
Safe version of strdup() function.
Definition: cpl_conv.cpp:292
OGRERR_UNSUPPORTED_GEOMETRY_TYPE
#define OGRERR_UNSUPPORTED_GEOMETRY_TYPE
Unsupported geometry type.
Definition: ogr_core.h:295
wkbCurvePolygonZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:390
OGR_GT_IsSurface
int OGR_GT_IsSurface(OGRwkbGeometryType)
Return if a geometry type is an instance of Surface.
Definition: ogrgeometry.cpp:6508
OGRSTBrushAngle
Angle.
Definition: ogr_core.h:846
wkbCurveZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:393
wkbTriangle
a Triangle.
Definition: ogr_core.h:347
GDALVersionInfo
const char * GDALVersionInfo(const char *)
Get runtime version information.
Definition: gdal_misc.cpp:2183
OGRSTLabelSize
Size.
Definition: ogr_core.h:885
OGR_GT_SetModifier
OGRwkbGeometryType OGR_GT_SetModifier(OGRwkbGeometryType eType, int bSetZ, int bSetM)
Returns a XY, XYZ, XYM or XYZM geometry type depending on parameter.
Definition: ogrgeometry.cpp:6249
wkbMultiPoint
GeometryCollection of Points, standard WKB.
Definition: ogr_core.h:327
OGR_GT_SetZ
OGRwkbGeometryType OGR_GT_SetZ(OGRwkbGeometryType eType)
Returns the 3D geometry type corresponding to the passed geometry type.
Definition: ogrgeometry.cpp:6199
OGR_GT_HasM
int OGR_GT_HasM(OGRwkbGeometryType eType)
Return if the geometry type is a measured type.
Definition: ogrgeometry.cpp:6177
wkbXDR
MSB/Sun/Motoroloa: Most Significant Byte First.
Definition: ogr_core.h:491
OGRSTClassId
enum ogr_style_tool_class_id OGRSTClassId
OGRStyleTool derived class types (returned by GetType()).
OFTBinary
Raw Binary data.
Definition: ogr_core.h:604
OGRSTSymbolOColor
Outline color.
Definition: ogr_core.h:873
OFTInteger64
Single 64bit integer.
Definition: ogr_core.h:608
MAX
#define MAX(a, b)
Macro to compute the maximum of 2 values.
Definition: cpl_port.h:397
OGR_GT_IsSubClassOf
int OGR_GT_IsSubClassOf(OGRwkbGeometryType eType, OGRwkbGeometryType eSuperType)
Returns if a type is a subclass of another one.
Definition: ogrgeometry.cpp:6276
wkbMultiCurve
GeometryCollection of Curves, ISO SQL/MM Part 3.
Definition: ogr_core.h:339
wkbSurfaceZ
wkbSurface with Z component.
Definition: ogr_core.h:358
wkbMultiPoint25D
2.5D extension as per 99-402
Definition: ogr_core.h:402
OGRSTPenId
Id.
Definition: ogr_core.h:828
OGRSTPenParam
enum ogr_style_tool_param_pen_id OGRSTPenParam
List of parameters for use with OGRStylePen.
OGRSTUnitId
enum ogr_style_tool_units_id OGRSTUnitId
List of units supported by OGRStyleTools.
OGRwkbGeometryType
OGRwkbGeometryType
List of well known binary geometry types.
Definition: ogr_core.h:317
wkbPointM
ISO SQL/MM Part 3.
Definition: ogr_core.h:363
OGRSTUPoints
Points.
Definition: ogr_core.h:814
OGRSTSymbolStep
Step.
Definition: ogr_core.h:868
OGRSTSymbolPriority
Priority.
Definition: ogr_core.h:871
OGR_GT_IsNonLinear
int OGR_GT_IsNonLinear(OGRwkbGeometryType)
Return if a geometry type is a non-linear geometry type.
Definition: ogrgeometry.cpp:6530
OGRERR_NOT_ENOUGH_MEMORY
#define OGRERR_NOT_ENOUGH_MEMORY
Not enough memory.
Definition: ogr_core.h:294
OGRMergeGeometryTypes
OGRwkbGeometryType OGRMergeGeometryTypes(OGRwkbGeometryType eMain, OGRwkbGeometryType eExtra)
Find common geometry type.
Definition: ogrgeometry.cpp:2641
wkbTINM
ISO SQL/MM Part 3.
Definition: ogr_core.h:378
OGRERR_NON_EXISTING_FEATURE
#define OGRERR_NON_EXISTING_FEATURE
Non existing feature.
Definition: ogr_core.h:301
OGRMergeGeometryTypesEx
OGRwkbGeometryType OGRMergeGeometryTypesEx(OGRwkbGeometryType eMain, OGRwkbGeometryType eExtra, int bAllowPromotingToCurves)
Find common geometry type.
Definition: ogrgeometry.cpp:2678
wkbPointZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:381
wkbCurvePolygonZ
wkbCurvePolygon with Z component.
Definition: ogr_core.h:354
OFSTInt16
Signed 16-bit integer.
Definition: ogr_core.h:628
wkbTIN
a PolyhedralSurface consisting only of Triangle patches ISO SQL/MM Part 3.
Definition: ogr_core.h:345
OGRSTBrushSize
Size.
Definition: ogr_core.h:847
wkbCompoundCurveZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:389
OGRSTUCM
Centimeter.
Definition: ogr_core.h:816
wkbSurfaceM
ISO SQL/MM Part 3.
Definition: ogr_core.h:376
OGRERR_INVALID_HANDLE
#define OGRERR_INVALID_HANDLE
Invalid handle.
Definition: ogr_core.h:300
wkbPolyhedralSurfaceZ
ISO SQL/MM Part 3.
Definition: ogr_core.h:359
OFSTBoolean
Boolean integer.
Definition: ogr_core.h:626
wkbMultiPolygonM
ISO SQL/MM Part 3.
Definition: ogr_core.h:368
wkbPolygon25D
2.5D extension as per 99-402
Definition: ogr_core.h:401
MIN
#define MIN(a, b)
Macro to compute the minimum of 2 values.
Definition: cpl_port.h:395
OGRSTCLabel
Label.
Definition: ogr_core.h:803
OGRSTPenPattern
Pattern.
Definition: ogr_core.h:827
wkbMultiSurfaceZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:392
OGRSTPenPriority
Priority.
Definition: ogr_core.h:832
wkbMultiLineString
GeometryCollection of LineStrings, standard WKB.
Definition: ogr_core.h:328
wkbPolygonZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:383
wkbCompoundCurve
sequence of contiguous curves, ISO SQL/MM Part 3.
Definition: ogr_core.h:335
OGRSTLabelAdjHor
OBSOLETE; do not use.
Definition: ogr_core.h:901
wkbNDR
LSB/Intel/Vax: Least Significant Byte First.
Definition: ogr_core.h:492
OGRJustification
OGRJustification
Display justification for field values.
Definition: ogr_core.h:638
OGRSTLabelStrikeout
Strike out.
Definition: ogr_core.h:899
CPLFree
#define CPLFree
Alias of VSIFree()
Definition: cpl_conv.h:81
ogr_style_tool_units_id
ogr_style_tool_units_id
List of units supported by OGRStyleTools.
Definition: ogr_core.h:810
wkbVariantPostGIS1
PostGIS 1.X has different codes for CurvePolygon, MultiCurve and MultiSurface.
Definition: ogr_core.h:427
OFTWideStringList
deprecated
Definition: ogr_core.h:603
wkbCircularString
one or more circular arc segments connected end to end, ISO SQL/MM Part 3.
Definition: ogr_core.h:333
OGRSTLabelStretch
Stretch.
Definition: ogr_core.h:900
wkbPoint
0-dimensional geometric object, standard WKB
Definition: ogr_core.h:321
OFSTFloat32
Single precision (32 bit) floating point.
Definition: ogr_core.h:630
OGRSTUPixel
Pixel.
Definition: ogr_core.h:813
OGRSTLabelPlacement
Placement.
Definition: ogr_core.h:890
OGRFieldType
OGRFieldType
List of feature field types.
Definition: ogr_core.h:594
wkbMultiSurfaceM
ISO SQL/MM Part 3.
Definition: ogr_core.h:374
wkbMultiLineStringZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:385
OFTDateTime
Date and Time.
Definition: ogr_core.h:607
OGRSTLabelTextString
Text string.
Definition: ogr_core.h:886
wkbVariantOldOgc
Old-style 99-402 extended dimension (Z) WKB types.
Definition: ogr_core.h:425
OGRSTLabelFColor
Foreground color.
Definition: ogr_core.h:888
wkbTriangleZ
ISO SQL/MM Part 3.
Definition: ogr_core.h:361
OGR_GT_GetLinear
OGRwkbGeometryType OGR_GT_GetLinear(OGRwkbGeometryType eType)
Returns the non-curve geometry type that can contain the passed geometry type.
Definition: ogrgeometry.cpp:6445
OGRSTSymbolDx
Dx.
Definition: ogr_core.h:866
OGRwkbVariant
OGRwkbVariant
Output variants of WKB we support.
Definition: ogr_core.h:423
OGRSTLabelPerp
Perpendicular.
Definition: ogr_core.h:894
wkbCircularStringZ
wkbCircularString with Z component.
Definition: ogr_core.h:352
OFTWideString
deprecated
Definition: ogr_core.h:602
OGRSTLabelItalic
Italic.
Definition: ogr_core.h:896
ogr_style_tool_param_brush_id
ogr_style_tool_param_brush_id
List of parameters for use with OGRStyleBrush.
Definition: ogr_core.h:841
wkbSurfaceZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:394
wkbTINZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:396
OGRField
OGRFeature field attribute value union.
Definition: ogr_core.h:679
OGRERR_NOT_ENOUGH_DATA
#define OGRERR_NOT_ENOUGH_DATA
Not enough data to deserialize.
Definition: ogr_core.h:293
wkbPolyhedralSurfaceZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:395
wkbMultiPointZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:384
OGRSTUInches
Inch.
Definition: ogr_core.h:817
wkbPolygonM
ISO SQL/MM Part 3.
Definition: ogr_core.h:365
OGRSTPenWidth
Width.
Definition: ogr_core.h:826
wkbMultiCurveZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:391
OGR_GT_GetCollection
OGRwkbGeometryType OGR_GT_GetCollection(OGRwkbGeometryType eType)
Returns the collection type that can contain the passed geometry type.
Definition: ogrgeometry.cpp:6340
CPLCalloc
void * CPLCalloc(size_t, size_t) CPL_WARN_UNUSED_RESULT
Safe version of calloc().
Definition: cpl_conv.cpp:137
OGRSTCSymbol
Symbol.
Definition: ogr_core.h:802
OGRSTSymbolAngle
Angle.
Definition: ogr_core.h:863
wkbMultiSurface
GeometryCollection of Surfaces, ISO SQL/MM Part 3.
Definition: ogr_core.h:340
ogr_style_tool_class_id
ogr_style_tool_class_id
OGRStyleTool derived class types (returned by GetType()).
Definition: ogr_core.h:797
CPL_C_END
#define CPL_C_END
Macro to end a block of C symbols.
Definition: cpl_port.h:337
OGRSTLabelBColor
Background color.
Definition: ogr_core.h:889
GIntBig
long long GIntBig
Large signed integer type (generally 64-bit integer type).
Definition: cpl_port.h:246
OGRSTCVector
Vector.
Definition: ogr_core.h:804
wkbTriangleM
ISO SQL/MM Part 3.
Definition: ogr_core.h:379
wkbLineStringZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:382
wkbCircularStringZM
ISO SQL/MM Part 3.
Definition: ogr_core.h:388
wkbCurvePolygon
planar surface, defined by 1 exterior boundary and zero or more interior boundaries, that are curves.
Definition: ogr_core.h:336
OGRSTSymbolFontName
OBSOLETE; do not use.
Definition: ogr_core.h:872
OGRSTCBrush
Brush.
Definition: ogr_core.h:801
OGRERR_FAILURE
#define OGRERR_FAILURE
Failure.
Definition: ogr_core.h:298
OGRERR_UNSUPPORTED_SRS
#define OGRERR_UNSUPPORTED_SRS
Unsupported SRS.
Definition: ogr_core.h:299
OGR_GT_GetCurve
OGRwkbGeometryType OGR_GT_GetCurve(OGRwkbGeometryType eType)
Returns the curve geometry type that can contain the passed geometry type.
Definition: ogrgeometry.cpp:6396
OGRSTCNone
None.
Definition: ogr_core.h:799
OGRErr
int OGRErr
Simple container for a bounding region.
Definition: ogr_core.h:290
wkbMultiPolygon
GeometryCollection of Polygons, standard WKB.
Definition: ogr_core.h:329
OGRSTLabelDy
Dy.
Definition: ogr_core.h:893
OFTString
String of ASCII chars.
Definition: ogr_core.h:600
OGR_GT_HasZ
int OGR_GT_HasZ(OGRwkbGeometryType eType)
Return if the geometry type is a 3D geometry type.
Definition: ogrgeometry.cpp:6153
wkbPoint25D
2.5D extension as per 99-402
Definition: ogr_core.h:399
OGRGeometryTypeToName
const char * OGRGeometryTypeToName(OGRwkbGeometryType eType)
Fetch a human readable name corresponding to an OGRwkbGeometryType value.
Definition: ogrgeometry.cpp:2418
OGRParseDate
int OGRParseDate(const char *pszInput, OGRField *psOutput, int nOptions)
Parse date string.
Definition: ogrutils.cpp:996
OFTStringList
Array of strings.
Definition: ogr_core.h:601
wkbCurveM
ISO SQL/MM Part 3.
Definition: ogr_core.h:375
OFTIntegerList
List of 32bit integers.
Definition: ogr_core.h:597
wkbCompoundCurveM
ISO SQL/MM Part 3.
Definition: ogr_core.h:371
OGRSTUMM
Millimeter.
Definition: ogr_core.h:815
OFTInteger
Simple 32bit integer.
Definition: ogr_core.h:596
OGRSTLabelPriority
Priority.
Definition: ogr_core.h:898
wkbCurve
Curve (abstract type).
Definition: ogr_core.h:341
OGR_GT_IsCurve
int OGR_GT_IsCurve(OGRwkbGeometryType)
Return if a geometry type is an instance of Curve.
Definition: ogrgeometry.cpp:6487

Generated for GDAL by 1.8.8.