31 #ifndef OGR_P_H_INCLUDED
32 #define OGR_P_H_INCLUDED
48 #define OGR_GEOMETRY_DEFAULT_NON_EMPTY_NAME "_ogr_geometry_"
51 # define OGR_SWAP(x) (x == wkbNDR)
53 # define OGR_SWAP(x) (x == wkbXDR)
57 #define POSTGIS15_CURVEPOLYGON 13
58 #define POSTGIS15_MULTICURVE 14
59 #define POSTGIS15_MULTISURFACE 15
62 #ifdef GDAL_COMPILATION
63 #define wkb25DBitInternalUse 0x80000000
70 #ifdef OGR_GEOMETRY_H_INCLUDED
71 #define OGR_WKT_TOKEN_MAX 64
73 const char CPL_DLL * OGRWktReadToken(
const char * pszInput,
char * pszToken );
75 const char CPL_DLL * OGRWktReadPoints(
const char * pszInput,
81 const char CPL_DLL * OGRWktReadPointsM(
const char * pszInput,
89 void CPL_DLL OGRMakeWktCoordinate(
char *,
double,
double,
double,
int );
90 void CPL_DLL OGRMakeWktCoordinateM(
char *,
double,
double,
double,
double,
OGRBoolean,
OGRBoolean );
94 void OGRFormatDouble(
char *pszBuffer,
int nBufferLen,
double dfVal,
95 char chDecimalSep,
int nPrecision = 15,
char chConversionSpecifier =
'f' );
103 int CPL_DLL OGRGetDayOfWeek(
int day,
int month,
int year);
104 int CPL_DLL OGRParseXMLDateTime(
const char* pszXMLDateTime,
106 int CPL_DLL OGRParseRFC822DateTime(
const char* pszRFC822DateTime,
108 char CPL_DLL * OGRGetRFC822DateTime(
const OGRField* psField);
109 char CPL_DLL * OGRGetXMLDateTime(
const OGRField* psField);
110 char CPL_DLL * OGRGetXML_UTF8_EscapedString(
const char* pszString);
112 int OGRCompareDate(
const OGRField *psFirstTuple,
116 int CPL_DLL OGRGeneralCmdLineProcessor(
int nArgc,
char ***ppapszArgv,
int nOptions );
122 #define SPF_OGR_GEOMETRY 1
123 #define SPF_OGR_STYLE 2
124 #define SPF_OGR_GEOM_WKT 3
125 #define SPF_OGR_GEOM_AREA 4
126 #define SPECIAL_FIELD_COUNT 5
128 extern const char*
const SpecialFieldNames[SPECIAL_FIELD_COUNT];
130 #ifdef SWQ_H_INCLUDED_
131 extern const swq_field_type SpecialFieldTypes[SPECIAL_FIELD_COUNT];
138 OGRErr CPL_DLL OSRGetEllipsoidInfo(
int,
char **,
double *,
double *);
141 double OGRFastAtof(
const char* pszStr);
143 OGRErr CPL_DLL OGRCheckPermutation(
int* panPermutation,
int nSize);
148 int nPseudoBoolGetSecondaryGeometryOption,
150 int nSRSDimension = 0,
151 bool bIgnoreGSG =
false,
152 bool bOrientation =
true,
153 bool bFaceHoleNegative =
false);
159 OGRGeometry CPL_DLL *OGRGeometryFromEWKB(
GByte *pabyWKB,
int nLength,
int* pnSRID,
160 int bIsPostGIS1_EWKB );
161 OGRGeometry CPL_DLL *OGRGeometryFromHexEWKB(
const char *pszBytea,
int* pnSRID,
162 int bIsPostGIS1_EWKB );
163 char CPL_DLL * OGRGeometryToHexEWKB(
OGRGeometry * poGeometry,
int nSRSId,
164 int nPostGISMajor,
int nPostGISMinor );
170 OGRErr OGRReadWKBGeometryType(
const unsigned char * pabyData,
#define SRS_PP_CENTRAL_MERIDIAN
Definition: ogr_srs_api.h:269
@ CXT_Element
Definition: cpl_minixml.h:46
#define SRS_PT_MILLER_CYLINDRICAL
Definition: ogr_srs_api.h:174
unsigned char GByte
Definition: cpl_port.h:213
#define SRS_PT_WAGNER_II
Definition: ogr_srs_api.h:238
#define SRS_PT_MERCATOR_1SP
Definition: ogr_srs_api.h:167
#define SRS_PT_GAUSSSCHREIBERTMERCATOR
Definition: ogr_srs_api.h:131
size_t VSIFReadL(void *, size_t, size_t, VSILFILE *) EXPERIMENTAL_CPL_WARN_UNUSED_RESULT
Read bytes from file.
Definition: cpl_vsil.cpp:1146
#define SRS_PT_HOTINE_OBLIQUE_MERCATOR
Definition: ogr_srs_api.h:146
#define SRS_PT_GALL_STEREOGRAPHIC
Definition: ogr_srs_api.h:128
#define SRS_PT_MOLLWEIDE
Definition: ogr_srs_api.h:176
#define SRS_PP_RECTIFIED_GRID_ANGLE
Definition: ogr_srs_api.h:305
#define SRS_PT_ROBINSON
Definition: ogr_srs_api.h:191
#define SRS_PP_LATITUDE_OF_POINT_1
Definition: ogr_srs_api.h:295
#define SRS_PT_ALBERS_CONIC_EQUAL_AREA
Definition: ogr_srs_api.h:100
#define SRS_PT_POLYCONIC
Definition: ogr_srs_api.h:189
#define SRS_PT_EQUIRECTANGULAR
Definition: ogr_srs_api.h:126
void * CPLCalloc(size_t, size_t)
Definition: cpl_conv.cpp:138
int GetWidth() const
Get the formatting width for this field.
Definition: ogr_feature.h:127
#define SRS_PP_LONGITUDE_OF_POINT_2
Definition: ogr_srs_api.h:297
#define SRS_PT_TRANSVERSE_MERCATOR
Definition: ogr_srs_api.h:200
#define SRS_PT_IMW_POLYCONIC
Definition: ogr_srs_api.h:234
Definition: ogr_geometry.h:286
const char * CPLResetExtension(const char *, const char *)
Definition: cpl_path.cpp:431
#define SRS_PT_CASSINI_SOLDNER
Definition: ogr_srs_api.h:105
Definition: ogrsf_frmts.h:70
Definition: ogr_miattrind.cpp:46
#define SRS_PT_WAGNER_VI
Definition: ogr_srs_api.h:246
#define SRS_PT_WAGNER_I
Definition: ogr_srs_api.h:236
CPLXMLNode * CPLParseXMLString(const char *)
Parse an XML string into tree form.
Definition: cpl_minixml.cpp:614
#define SRS_PT_LAMBERT_CONFORMAL_CONIC_2SP
Definition: ogr_srs_api.h:158
#define SRS_PP_LATITUDE_OF_1ST_POINT
Definition: ogr_srs_api.h:319
#define SRS_PP_PEG_POINT_LONGITUDE
Definition: ogr_srs_api.h:329
Definition: ogr_miattrind.cpp:79
void * CPLRealloc(void *, size_t)
Definition: cpl_conv.cpp:225
Definition: cpl_minixml.h:66
#define SRS_PT_EQUIDISTANT_CONIC
Definition: ogr_srs_api.h:123
#define EQUAL(a, b)
Definition: cpl_port.h:559
#define SRS_PT_BONNE
Definition: ogr_srs_api.h:109
int VSIFCloseL(VSILFILE *) EXPERIMENTAL_CPL_WARN_UNUSED_RESULT
Close file.
Definition: cpl_vsil.cpp:928
const char * GetNameRef() const
Fetch name of this field.
Definition: ogr_feature.h:113
int OGRBoolean
Definition: ogr_core.h:306
#define SRS_PP_LATITUDE_OF_CENTER
Definition: ogr_srs_api.h:281
#define SRS_PT_STEREOGRAPHIC
Definition: ogr_srs_api.h:195
#define CPLAssert(expr)
Definition: cpl_error.h:182
#define SRS_PT_QSC
Definition: ogr_srs_api.h:250
Definition: ogr_geometry.h:63
#define SRS_PP_SCALE_FACTOR
Definition: ogr_srs_api.h:271
#define SRS_PT_AZIMUTHAL_EQUIDISTANT
Definition: ogr_srs_api.h:103
char * CPLSerializeXMLTree(const CPLXMLNode *psNode)
Convert tree into string document.
Definition: cpl_minixml.cpp:1252
#define SRS_PT_ECKERT_III
Definition: ogr_srs_api.h:115
#define SRS_PT_ECKERT_IV
Definition: ogr_srs_api.h:117
char ** OPTGetProjectionMethods(void)
Definition: ogr_opt.cpp:511
#define SRS_PP_LONGITUDE_OF_2ND_POINT
Definition: ogr_srs_api.h:325
Definition: ogr_core.h:679
#define OGRERR_UNSUPPORTED_OPERATION
Definition: ogr_core.h:296
#define SRS_PP_LATITUDE_OF_POINT_3
Definition: ogr_srs_api.h:303
vsi_l_offset VSIFTellL(VSILFILE *)
Tell current file offset.
Definition: cpl_vsil.cpp:1031
#define SRS_PP_LATITUDE_OF_ORIGIN
Definition: ogr_srs_api.h:285
#define CPLE_OpenFailed
Definition: cpl_error.h:105
#define SRS_PP_LONGITUDE_OF_1ST_POINT
Definition: ogr_srs_api.h:321
#define OGRERR_FAILURE
Definition: ogr_core.h:298
@ OFTString
Definition: ogr_core.h:600
#define SRS_PP_LONGITUDE_OF_CENTER
Definition: ogr_srs_api.h:279
void CPLDestroyXMLNode(CPLXMLNode *)
Destroy a tree.
Definition: cpl_minixml.cpp:1412
void CPLDebug(const char *, const char *,...)
Definition: cpl_error.cpp:544
#define SRS_PP_PEG_POINT_HEIGHT
Definition: ogr_srs_api.h:333
#define SRS_PT_GOODE_HOMOLOSINE
Definition: ogr_srs_api.h:137
Definition: ogr_feature.h:92
#define SRS_PP_LONGITUDE_OF_POINT_1
Definition: ogr_srs_api.h:293
#define SRS_PP_STANDARD_PARALLEL_2
Definition: ogr_srs_api.h:275
#define SRS_PT_TUNISIA_MINING_GRID
Definition: ogr_srs_api.h:224
@ OFTInteger
Definition: ogr_core.h:596
int VSIUnlink(const char *pszFilename)
Delete a file.
Definition: cpl_vsil.cpp:408
void * CPLMalloc(size_t)
Definition: cpl_conv.cpp:168
#define SRS_PP_STANDARD_PARALLEL_1
Definition: ogr_srs_api.h:273
#define SRS_PT_GEOSTATIONARY_SATELLITE
Definition: ogr_srs_api.h:134
#define SRS_PT_POLAR_STEREOGRAPHIC
Definition: ogr_srs_api.h:186
#define SRS_PT_ORTHOGRAPHIC
Definition: ogr_srs_api.h:184
#define SRS_PT_GNOMONIC
Definition: ogr_srs_api.h:141
int VSIFSeekL(VSILFILE *, vsi_l_offset, int) EXPERIMENTAL_CPL_WARN_UNUSED_RESULT
Seek to requested offset.
Definition: cpl_vsil.cpp:988
const char * CPLSPrintf(const char *fmt,...)
Definition: cpl_string.cpp:977
const char * CPLGetXMLValue(const CPLXMLNode *poRoot, const char *pszPath, const char *pszDefault)
Fetch element/attribute value.
Definition: cpl_minixml.cpp:1645
#define SRS_PT_NEW_ZEALAND_MAP_GRID
Definition: ogr_srs_api.h:178
#define SRS_PP_LONGITUDE_OF_ORIGIN
Definition: ogr_srs_api.h:283
void CPLError(CPLErr eErrClass, CPLErrorNum err_no, const char *fmt,...)
Definition: cpl_error.cpp:232
#define SRS_PT_LAMBERT_CONFORMAL_CONIC_1SP
Definition: ogr_srs_api.h:155
GUIntBig vsi_l_offset
Definition: cpl_vsi.h:139
#define SRS_PP_LATITUDE_OF_POINT_2
Definition: ogr_srs_api.h:299
#define SRS_PT_HOTINE_OBLIQUE_MERCATOR_TWO_POINT_NATURAL_ORIGIN
Definition: ogr_srs_api.h:149
#define CPLE_NotSupported
Definition: cpl_error.h:109
#define SRS_PT_VANDERGRINTEN
Definition: ogr_srs_api.h:230
#define SRS_PP_SATELLITE_HEIGHT
Definition: ogr_srs_api.h:313
OGRFieldType GetType() const
Fetch type of this field.
Definition: ogr_feature.h:115
#define SRS_PT_OBLIQUE_STEREOGRAPHIC
Definition: ogr_srs_api.h:181
CPLXMLNode * CPLCreateXMLNode(CPLXMLNode *poParent, CPLXMLNodeType eType, const char *pszText)
Create an document tree item.
Definition: cpl_minixml.cpp:1297
bool IsFieldSetAndNotNull(int iField) const
Test if a field is set and not null.
Definition: ogrfeature.cpp:1583
#define SRS_PT_WAGNER_III
Definition: ogr_srs_api.h:240
int OGRErr
Definition: ogr_core.h:290
#define SRS_PT_ECKERT_VI
Definition: ogr_srs_api.h:121
long long GIntBig
Definition: cpl_port.h:246
#define SRS_PT_WAGNER_V
Definition: ogr_srs_api.h:244
#define SRS_PT_MERCATOR_2SP
Definition: ogr_srs_api.h:169
OGRwkbGeometryType
Definition: ogr_core.h:317
#define CPL_UNUSED
Definition: cpl_port.h:938
#define SRS_PP_FALSE_EASTING
Definition: ogr_srs_api.h:287
struct CPLXMLNode * psNext
Next sibling.
Definition: cpl_minixml.h:106
OGRField * GetRawFieldRef(int i)
Fetch a pointer to the internal field value given the index.
Definition: ogr_feature.h:618
#define SRS_PT_CYLINDRICAL_EQUAL_AREA
Definition: ogr_srs_api.h:107
Definition: ogr_feature.h:353
#define SRS_PT_IGH
Definition: ogr_srs_api.h:139
OGRFieldSubType
Definition: ogr_core.h:622
#define SRS_PT_TRANSVERSE_MERCATOR_SOUTH_ORIENTED
Definition: ogr_srs_api.h:203
VSILFILE * VSIFOpenL(const char *, const char *)
Open file.
Definition: cpl_vsil.cpp:818
char ** OPTGetParameterList(const char *pszProjectionMethod, char **ppszUserName)
Definition: ogr_opt.cpp:545
OGRFieldType
Definition: ogr_core.h:594
#define SRS_PP_PEG_POINT_HEADING
Definition: ogr_srs_api.h:331
#define SRS_PT_ECKERT_I
Definition: ogr_srs_api.h:111
char ** CSLAddString(char **papszStrList, const char *pszNewString)
Definition: cpl_string.cpp:83
#define SRS_PT_ECKERT_II
Definition: ogr_srs_api.h:113
#define SRS_PT_KROVAK
Definition: ogr_srs_api.h:232
@ OFTInteger64
Definition: ogr_core.h:608
#define SRS_PT_WAGNER_IV
Definition: ogr_srs_api.h:242
CPLXMLNode * CPLCreateXMLElementAndValue(CPLXMLNode *psParent, const char *pszName, const char *pszValue)
Create an element and text value.
Definition: cpl_minixml.cpp:1851
#define SRS_PT_SCH
Definition: ogr_srs_api.h:266
#define SRS_PT_LAMBERT_AZIMUTHAL_EQUAL_AREA
Definition: ogr_srs_api.h:164
#define OGRERR_NONE
Definition: ogr_core.h:292
char * CPLStrdup(const char *)
Definition: cpl_conv.cpp:293
double CPLAtof(const char *)
Definition: cpl_strtod.cpp:117
#define SRS_PT_WAGNER_VII
Definition: ogr_srs_api.h:248
struct CPLXMLNode * psChild
Child node.
Definition: cpl_minixml.h:118
#define SRS_PP_FALSE_NORTHING
Definition: ogr_srs_api.h:289
@ OFTReal
Definition: ogr_core.h:598
#define SRS_PP_PEG_POINT_LATITUDE
Definition: ogr_srs_api.h:327
#define SRS_PT_ECKERT_V
Definition: ogr_srs_api.h:119
#define SRS_PT_SINUSOIDAL
Definition: ogr_srs_api.h:193
#define OGRNullFID
Definition: ogr_core.h:646
#define CPLFree
Definition: cpl_conv.h:81
#define SRS_PP_PSEUDO_STD_PARALLEL_1
Definition: ogr_srs_api.h:277
const char * CPLGetFilename(const char *)
Definition: cpl_path.cpp:260
#define SRS_PP_LATITUDE_OF_2ND_POINT
Definition: ogr_srs_api.h:323
OGRwkbVariant
Definition: ogr_core.h:423
GIntBig GetFID() const
Get feature identifier.
Definition: ogr_feature.h:711
#define SRS_PP_AZIMUTH
Definition: ogr_srs_api.h:291
FILE VSILFILE
Definition: cpl_vsi.h:155
#define SRS_PT_TWO_POINT_EQUIDISTANT
Definition: ogr_srs_api.h:227
#define SRS_PT_LAMBERT_CONFORMAL_CONIC_2SP_BELGIUM
Definition: ogr_srs_api.h:161
#define STARTS_WITH_CI(a, b)
Definition: cpl_port.h:570
#define CPLE_AppDefined
Definition: cpl_error.h:99
#define SRS_PP_LONGITUDE_OF_POINT_3
Definition: ogr_srs_api.h:301
Generated for GDAL by
1.8.17.