OGR
ogr_xerces.h
1 /******************************************************************************
2  * Project: OGR
3  * Purpose: Convenience functions for parsing with Xerces-C library
4  * Author: Even Rouault, <even.rouault at spatialys.com>
5  *
6  ******************************************************************************
7  * Copyright (c) 2016, Even Rouault <even.rouault at spatialys.com>
8  *
9  * Permission is hereby granted, free of charge, to any person obtaining a
10  * copy of this software and associated documentation files (the "Software"),
11  * to deal in the Software without restriction, including without limitation
12  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
13  * and/or sell copies of the Software, and to permit persons to whom the
14  * Software is furnished to do so, subject to the following conditions:
15  *
16  * The above copyright notice and this permission notice shall be included
17  * in all copies or substantial portions of the Software.
18  *
19  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
20  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
22  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
24  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
25  * DEALINGS IN THE SOFTWARE.
26  ****************************************************************************/
27 
28 #ifndef OGR_XERCES_INCLUDED
29 #define OGR_XERCES_INCLUDED
30 
31 // Must be first for DEBUG_BOOL case
32 #ifdef HAVE_XERCES
33 #include "ogr_xerces_headers.h"
34 #endif
35 
36 #include "cpl_port.h"
37 #include "cpl_string.h"
38 #include "cpl_vsi.h"
39 
40 #ifdef HAVE_XERCES
41 
42 /* All those functions are for in-tree drivers use only ! */
43 
44 /* Thread-safe initialization/de-initialization. Calls should be paired */
45 bool CPL_DLL OGRInitializeXerces(void);
46 void CPL_DLL OGRDeinitializeXerces(void);
47 
48 InputSource CPL_DLL* OGRCreateXercesInputSource(VSILFILE* fp);
49 void CPL_DLL OGRDestroyXercesInputSource(InputSource* is);
50 
51 namespace OGR
52 {
53 CPLString CPL_DLL transcode( const XMLCh *panXMLString, int nLimitingChars = -1 );
54 CPLString CPL_DLL &transcode( const XMLCh *panXMLString, CPLString& osRet,
55  int nLimitingChars = -1 );
56 }
57 
58 #ifndef OGR_USING
59 using OGR::transcode;
60 #endif
61 
62 void OGRCleanupXercesMutex(void);
63 
64 #endif /* HAVE_XERCES */
65 
66 #endif /* OGR_XERCES_INCLUDED */
OGRSpatialReference::GetPrimeMeridian
double GetPrimeMeridian(char **) const CPL_WARN_DEPRECATED("Use GetPrimeMeridian( const char**) instead")
Fetch prime meridian info.
Definition: ogrspatialreference.cpp:2765
OGRSpatialReference::SetEC
OGRErr SetEC(double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5434
OGR_SRSNode::DestroyChild
void DestroyChild(int)
Definition: ogr_srsnode.cpp:322
SRS_PP_CENTRAL_MERIDIAN
#define SRS_PP_CENTRAL_MERIDIAN
Definition: ogr_srs_api.h:247
SRS_UA_DEGREE_CONV
#define SRS_UA_DEGREE_CONV
Definition: ogr_srs_api.h:424
OGR_SRSNode::GetChildCount
int GetChildCount() const
Definition: ogr_spatialref.h:88
CPLRecodeFromWChar
char * CPLRecodeFromWChar(const wchar_t *pwszSource, const char *pszSrcEncoding, const char *pszDstEncoding)
Definition: cpl_recode.cpp:149
OGRSpatialReference::SetAngularUnits
OGRErr SetAngularUnits(const char *pszName, double dfInRadians)
Set the angular units for the geographic coordinate system.
Definition: ogrspatialreference.cpp:1974
CXT_Element
@ CXT_Element
Definition: cpl_minixml.h:46
ogr_spatialref.h
SRS_PT_MILLER_CYLINDRICAL
#define SRS_PT_MILLER_CYLINDRICAL
Definition: ogr_srs_api.h:152
CSLTokenizeString2
char ** CSLTokenizeString2(const char *pszString, const char *pszDelimiter, int nCSLTFlags)
Definition: cpl_string.cpp:836
SRS_PT_MERCATOR_1SP
#define SRS_PT_MERCATOR_1SP
Definition: ogr_srs_api.h:145
VSIFReadL
size_t VSIFReadL(void *, size_t, size_t, VSILFILE *) EXPERIMENTAL_CPL_WARN_UNUSED_RESULT
Read bytes from file.
Definition: cpl_vsil.cpp:1690
SRS_PT_HOTINE_OBLIQUE_MERCATOR
#define SRS_PT_HOTINE_OBLIQUE_MERCATOR
Definition: ogr_srs_api.h:124
CPLPrintStringFill
int CPLPrintStringFill(char *, const char *, int)
Definition: cpl_conv.cpp:1267
SRS_PT_MOLLWEIDE
#define SRS_PT_MOLLWEIDE
Definition: ogr_srs_api.h:154
cpl_error.h
OGRSpatialReference::SetMercator
OGRErr SetMercator(double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6432
OGRSpatialReference::SetWellKnownGeogCS
OGRErr SetWellKnownGeogCS(const char *)
Set a GeogCS based on well known name.
Definition: ogrspatialreference.cpp:2953
OGRSpatialReference::SetTOWGS84
OGRErr SetTOWGS84(double, double, double, double=0.0, double=0.0, double=0.0, double=0.0)
Set the Bursa-Wolf conversion to WGS84.
Definition: ogrspatialreference.cpp:8516
OGR_SRSNode::importFromWkt
OGRErr importFromWkt(char **)
Definition: ogr_srsnode.cpp:647
SRS_PT_ROBINSON
#define SRS_PT_ROBINSON
Definition: ogr_srs_api.h:169
SRS_PP_LATITUDE_OF_POINT_1
#define SRS_PP_LATITUDE_OF_POINT_1
Definition: ogr_srs_api.h:273
CPLString::Printf
CPLSTRING_METHOD_DLL CPLString & Printf(const char *pszFormat,...)
Definition: cplstring.cpp:59
OGRSpatialReference::SetEquirectangular
OGRErr SetEquirectangular(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5617
OGR_SRSNode::GetNode
OGR_SRSNode * GetNode(const char *)
Definition: ogr_srsnode.cpp:199
OGRSpatialReference::GetAuthorityCode
const char * GetAuthorityCode(const char *pszTargetKey) const
Get the authority code for a node.
Definition: ogrspatialreference.cpp:7381
OGRSpatialReference::SetLCC1SP
OGRErr SetLCC1SP(double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6325
SRS_PT_ALBERS_CONIC_EQUAL_AREA
#define SRS_PT_ALBERS_CONIC_EQUAL_AREA
Definition: ogr_srs_api.h:78
SRS_PT_POLYCONIC
#define SRS_PT_POLYCONIC
Definition: ogr_srs_api.h:167
SRS_PT_EQUIRECTANGULAR
#define SRS_PT_EQUIRECTANGULAR
Definition: ogr_srs_api.h:104
OGRSpatialReference::GetAttrValue
const char * GetAttrValue(const char *, int=0) const
Fetch indicated attribute of named node.
Definition: ogrspatialreference.cpp:1099
CPLCalloc
void * CPLCalloc(size_t, size_t)
Definition: cpl_conv.cpp:138
OGRSpatialReference::importFromPCI
OGRErr importFromPCI(const char *, const char *=nullptr, double *=nullptr)
Import coordinate system from PCI projection definition.
Definition: ogr_srs_pci.cpp:205
USGS_ANGLE_RADIANS
#define USGS_ANGLE_RADIANS
Definition: ogr_spatialref.h:221
cpl_minixml.h
OGRSpatialReference::SetAE
OGRErr SetAE(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5304
OGR_SRSNode::ClearChildren
void ClearChildren()
Definition: ogr_srsnode.cpp:110
cpl_vsi.h
OGRSpatialReference
Definition: ogr_spatialref.h:156
OGRSpatialReference::SetACEA
OGRErr SetACEA(double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5265
SRS_PP_LONGITUDE_OF_POINT_2
#define SRS_PP_LONGITUDE_OF_POINT_2
Definition: ogr_srs_api.h:275
SRS_PT_TRANSVERSE_MERCATOR
#define SRS_PT_TRANSVERSE_MERCATOR
Definition: ogr_srs_api.h:178
SRS_UL_FOOT_CONV
#define SRS_UL_FOOT_CONV
Definition: ogr_srs_api.h:318
CPLPackedDMSToDec
double CPLPackedDMSToDec(double)
Definition: cpl_conv.cpp:2222
OSRImportFromPanorama
OGRErr OSRImportFromPanorama(OGRSpatialReferenceH, long, long, long, double *)
Definition: ogr_srs_panorama.cpp:160
OGRSpatialReference::GetNormProjParm
double GetNormProjParm(const char *, double=0.0, OGRErr *=nullptr) const
Fetch a normalized projection parameter value.
Definition: ogrspatialreference.cpp:4952
SRS_PT_IMW_POLYCONIC
#define SRS_PT_IMW_POLYCONIC
Definition: ogr_srs_api.h:212
OGRSpatialReference::IsLocal
int IsLocal() const
Check if local coordinate system.
Definition: ogrspatialreference.cpp:7823
OGRSpatialReference::SetSinusoidal
OGRErr SetSinusoidal(double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6803
OGRSpatialReference::SetLinearUnits
OGRErr SetLinearUnits(const char *pszName, double dfInMeters)
Set the linear units for the projection.
Definition: ogrspatialreference.cpp:2255
SRS_PT_CASSINI_SOLDNER
#define SRS_PT_CASSINI_SOLDNER
Definition: ogr_srs_api.h:83
CSLCount
int CSLCount(CSLConstList papszStrList)
Definition: cpl_string.cpp:147
OGRSpatialReference::FromHandle
static OGRSpatialReference * FromHandle(OGRSpatialReferenceH hSRS)
Definition: ogr_spatialref.h:663
OGRSpatialReference::importFromPanorama
OGRErr importFromPanorama(long, long, long, double *)
Definition: ogr_srs_panorama.cpp:252
CPLString
Convenient string class based on std::string.
Definition: cpl_string.h:329
OGRSpatialReference::SetPS
OGRErr SetPS(double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6698
OGRSpatialReference::IsProjected
int IsProjected() const
Check if projected coordinate system.
Definition: ogrspatialreference.cpp:7642
OGR_SRSNode::SetValue
void SetValue(const char *)
Definition: ogr_srsnode.cpp:390
SRS_PT_WAGNER_I
#define SRS_PT_WAGNER_I
Definition: ogr_srs_api.h:214
OGRSpatialReference::CopyGeogCSFrom
OGRErr CopyGeogCSFrom(const OGRSpatialReference *poSrcSRS)
Copy GEOGCS from another OGRSpatialReference.
Definition: ogrspatialreference.cpp:3081
CPLParseXMLString
CPLXMLNode * CPLParseXMLString(const char *)
Parse an XML string into tree form.
Definition: cpl_minixml.cpp:614
SRS_UL_FOOT
#define SRS_UL_FOOT
Definition: ogr_srs_api.h:316
SRS_DN_WGS84
#define SRS_DN_WGS84
Definition: ogr_srs_api.h:438
CXT_Text
@ CXT_Text
Definition: cpl_minixml.h:47
SRS_PT_LAMBERT_CONFORMAL_CONIC_2SP
#define SRS_PT_LAMBERT_CONFORMAL_CONIC_2SP
Definition: ogr_srs_api.h:136
SRS_PP_LATITUDE_OF_1ST_POINT
#define SRS_PP_LATITUDE_OF_1ST_POINT
Definition: ogr_srs_api.h:297
CPLRealloc
void * CPLRealloc(void *, size_t)
Definition: cpl_conv.cpp:225
OGRSpatialReference::SetPolyconic
OGRErr SetPolyconic(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6663
CPLAtofM
double CPLAtofM(const char *)
Definition: cpl_strtod.cpp:142
CPLXMLNode
Definition: cpl_minixml.h:66
SRS_PT_EQUIDISTANT_CONIC
#define SRS_PT_EQUIDISTANT_CONIC
Definition: ogr_srs_api.h:101
OGRSpatialReference::GetUTMZone
int GetUTMZone(int *pbNorth=nullptr) const
Get utm zone information.
Definition: ogrspatialreference.cpp:7024
EQUAL
#define EQUAL(a, b)
Definition: cpl_port.h:569
PCIDatums
Definition: ogr_srs_pci.cpp:53
OGRSpatialReference::SetProjCS
OGRErr SetProjCS(const char *)
Set the user visible PROJCS name.
Definition: ogrspatialreference.cpp:4613
VSIFCloseL
int VSIFCloseL(VSILFILE *) EXPERIMENTAL_CPL_WARN_UNUSED_RESULT
Close file.
Definition: cpl_vsil.cpp:1472
OGR_SRSNode::GetValue
const char * GetValue() const
Definition: ogr_spatialref.h:102
OGRSpatialReference::SetStatePlane
OGRErr SetStatePlane(int nZone, int bNAD83=TRUE, const char *pszOverrideUnitName=nullptr, double dfOverrideUnit=0.0)
Set State Plane projection definition.
Definition: ogr_fromepsg.cpp:151
OGRSpatialReference::GetSemiMajor
double GetSemiMajor(OGRErr *=nullptr) const
Get spheroid semi major axis (in metres starting with GDAL 3.0)
Definition: ogrspatialreference.cpp:4084
OGRSpatialReference::exportToPCI
OGRErr exportToPCI(char **, char **, double **) const
Export coordinate system in PCI projection definition.
Definition: ogr_srs_pci.cpp:774
OGRSpatialReference::SetEquirectangular2
OGRErr SetEquirectangular2(double dfCenterLat, double dfCenterLong, double dfPseudoStdParallel1, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5665
SRS_PP_LATITUDE_OF_CENTER
#define SRS_PP_LATITUDE_OF_CENTER
Definition: ogr_srs_api.h:259
SRS_PT_STEREOGRAPHIC
#define SRS_PT_STEREOGRAPHIC
Definition: ogr_srs_api.h:173
OGRSpatialReference::GetAuthorityName
const char * GetAuthorityName(const char *pszTargetKey) const
Get the authority name for a node.
Definition: ogrspatialreference.cpp:7465
CPLAssert
#define CPLAssert(expr)
Definition: cpl_error.h:186
OGRERR_UNSUPPORTED_SRS
#define OGRERR_UNSUPPORTED_SRS
Definition: ogr_core.h:299
SRS_PP_SCALE_FACTOR
#define SRS_PP_SCALE_FACTOR
Definition: ogr_srs_api.h:249
OGRSpatialReferenceH
void * OGRSpatialReferenceH
Definition: ogr_api.h:74
SRS_PT_AZIMUTHAL_EQUIDISTANT
#define SRS_PT_AZIMUTHAL_EQUIDISTANT
Definition: ogr_srs_api.h:81
CPLSerializeXMLTree
char * CPLSerializeXMLTree(const CPLXMLNode *psNode)
Convert tree into string document.
Definition: cpl_minixml.cpp:1252
CPLTestBool
bool CPLTestBool(const char *pszValue)
Definition: cpl_string.cpp:1526
CPLGetXMLNode
CPLXMLNode * CPLGetXMLNode(CPLXMLNode *poRoot, const char *pszPath)
Find node by path.
Definition: cpl_minixml.cpp:1550
OGRSpatialReference::importFromXML
OGRErr importFromXML(const char *)
Import coordinate system from XML format (GML only currently).
Definition: ogr_srs_xml.cpp:1259
VSIFTellL
vsi_l_offset VSIFTellL(VSILFILE *)
Tell current file offset.
Definition: cpl_vsil.cpp:1575
SRS_PP_LATITUDE_OF_ORIGIN
#define SRS_PP_LATITUDE_OF_ORIGIN
Definition: ogr_srs_api.h:263
OGRSpatialReference::exportToXML
OGRErr exportToXML(char **, const char *=nullptr) const
Export coordinate system in XML format.
Definition: ogr_srs_xml.cpp:715
CPLE_OpenFailed
#define CPLE_OpenFailed
Definition: cpl_error.h:105
OGRSpatialReference::SetIWMPolyconic
OGRErr SetIWMPolyconic(double dfLat1, double dfLat2, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6146
VALIDATE_POINTER1
#define VALIDATE_POINTER1(ptr, func, rc)
Definition: cpl_error.h:276
OGRERR_FAILURE
#define OGRERR_FAILURE
Definition: ogr_core.h:298
OSRImportFromPCI
OGRErr OSRImportFromPCI(OGRSpatialReferenceH hSRS, const char *, const char *, double *)
Import coordinate system from PCI projection definition.
Definition: ogr_srs_pci.cpp:147
OGR_SRSNode::GetChild
OGR_SRSNode * GetChild(int)
Definition: ogr_srsnode.cpp:150
OGRSpatialReference::SetRobinson
OGRErr SetRobinson(double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6770
CPL_ENC_UTF8
#define CPL_ENC_UTF8
Definition: cpl_string.h:265
SRS_PP_LONGITUDE_OF_CENTER
#define SRS_PP_LONGITUDE_OF_CENTER
Definition: ogr_srs_api.h:257
OGRERR_NOT_ENOUGH_MEMORY
#define OGRERR_NOT_ENOUGH_MEMORY
Definition: ogr_core.h:294
OGRSpatialReference::SetGeogCS
OGRErr SetGeogCS(const char *pszGeogName, const char *pszDatumName, const char *pszEllipsoidName, double dfSemiMajor, double dfInvFlattening, const char *pszPMName=nullptr, double dfPMOffset=0.0, const char *pszUnits=nullptr, double dfConvertToRadians=0.0)
Set geographic coordinate system.
Definition: ogrspatialreference.cpp:2836
OGRSpatialReference::SetOrthographic
OGRErr SetOrthographic(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6630
CPLXMLNode::eType
CPLXMLNodeType eType
Node type.
Definition: cpl_minixml.h:74
CPLDestroyXMLNode
void CPLDestroyXMLNode(CPLXMLNode *)
Destroy a tree.
Definition: cpl_minixml.cpp:1405
OGRSpatialReference::Clear
void Clear()
Wipe current definition.
Definition: ogrspatialreference.cpp:790
OGRSpatialReference::importFromUSGS
OGRErr importFromUSGS(long iProjSys, long iZone, double *padfPrjParams, long iDatum, int nUSGSAngleFormat=TRUE)
Import coordinate system from USGS projection definition.
Definition: ogr_srs_usgs.cpp:421
CPLDebug
void CPLDebug(const char *, const char *,...)
Definition: cpl_error.cpp:602
OSRExportToUSGS
OGRErr OSRExportToUSGS(OGRSpatialReferenceH, long *, long *, double **, long *)
Export coordinate system in USGS GCTP projection definition.
Definition: ogr_srs_usgs.cpp:798
OGR_SRSNode::exportToWkt
OGRErr exportToWkt(char **) const
Definition: ogr_srsnode.cpp:481
SRS_PP_LONGITUDE_OF_POINT_1
#define SRS_PP_LONGITUDE_OF_POINT_1
Definition: ogr_srs_api.h:271
ogr_srs_api.h
SRS_PP_STANDARD_PARALLEL_2
#define SRS_PP_STANDARD_PARALLEL_2
Definition: ogr_srs_api.h:253
OGR_SRSNode::exportToPrettyWkt
OGRErr exportToPrettyWkt(char **, int=1) const
Definition: ogr_srsnode.cpp:555
CPLMalloc
void * CPLMalloc(size_t)
Definition: cpl_conv.cpp:168
SRS_PP_STANDARD_PARALLEL_1
#define SRS_PP_STANDARD_PARALLEL_1
Definition: ogr_srs_api.h:251
SRS_PT_POLAR_STEREOGRAPHIC
#define SRS_PT_POLAR_STEREOGRAPHIC
Definition: ogr_srs_api.h:164
OGRSpatialReference::SetMC
OGRErr SetMC(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6397
cpl_conv.h
SRS_UA_DEGREE
#define SRS_UA_DEGREE
Definition: ogr_srs_api.h:422
cpl_string.h
CPLAddXMLChild
void CPLAddXMLChild(CPLXMLNode *psParent, CPLXMLNode *psChild)
Add child node to parent.
Definition: cpl_minixml.cpp:1700
OGRSpatialReference::SetHOM
OGRErr SetHOM(double dfCenterLat, double dfCenterLong, double dfAzimuth, double dfRectToSkew, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Set a Hotine Oblique Mercator projection using azimuth angle.
Definition: ogrspatialreference.cpp:6004
SRS_PT_ORTHOGRAPHIC
#define SRS_PT_ORTHOGRAPHIC
Definition: ogr_srs_api.h:162
OGR_SRSNode::AddChild
void AddChild(OGR_SRSNode *)
Definition: ogr_srsnode.cpp:266
SRS_PT_GNOMONIC
#define SRS_PT_GNOMONIC
Definition: ogr_srs_api.h:119
SRS_UL_METER
#define SRS_UL_METER
Definition: ogr_srs_api.h:314
OSRExportToPCI
OGRErr OSRExportToPCI(OGRSpatialReferenceH, char **, char **, double **)
Export coordinate system in PCI projection definition.
Definition: ogr_srs_pci.cpp:729
OGRSpatialReference::SetOS
OGRErr SetOS(double dfOriginLat, double dfCMeridian, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6594
SRS_DN_NAD83
#define SRS_DN_NAD83
Definition: ogr_srs_api.h:434
OGRSpatialReference::importFromEPSG
OGRErr importFromEPSG(int)
Initialize SRS based on EPSG geographic, projected or vertical CRS code.
Definition: ogrspatialreference.cpp:10220
CPLGetXMLValue
const char * CPLGetXMLValue(const CPLXMLNode *poRoot, const char *pszPath, const char *pszDefault)
Fetch element/attribute value.
Definition: cpl_minixml.cpp:1638
OSRCalcInvFlattening
double OSRCalcInvFlattening(double dfSemiMajor, double dfSemiMinor)
Compute inverse flattening from semi-major and semi-minor axis.
Definition: ogrspatialreference.cpp:9474
CPLError
void CPLError(CPLErr eErrClass, CPLErrorNum err_no, const char *fmt,...)
Definition: cpl_error.cpp:308
SRS_PT_LAMBERT_CONFORMAL_CONIC_1SP
#define SRS_PT_LAMBERT_CONFORMAL_CONIC_1SP
Definition: ogr_srs_api.h:133
OSRExportToXML
OGRErr OSRExportToXML(OGRSpatialReferenceH, char **, const char *)
Export coordinate system in XML format.
Definition: ogr_srs_xml.cpp:746
OGRSpatialReference::GetRoot
OGR_SRSNode * GetRoot()
Return root node.
Definition: ogrspatialreference.cpp:955
OGR_SRSNode::RegisterListener
void RegisterListener(const std::shared_ptr< Listener > &listener)
Definition: ogr_srsnode.cpp:86
OGRSpatialReference::SetLAEA
OGRErr SetLAEA(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6228
SRS_PP_LATITUDE_OF_POINT_2
#define SRS_PP_LATITUDE_OF_POINT_2
Definition: ogr_srs_api.h:277
OSRCalcSemiMinorFromInvFlattening
double OSRCalcSemiMinorFromInvFlattening(double dfSemiMajor, double dfInvFlattening)
Compute semi-minor axis from semi-major axis and inverse flattening.
Definition: ogrspatialreference.cpp:9502
SRS_PT_HOTINE_OBLIQUE_MERCATOR_TWO_POINT_NATURAL_ORIGIN
#define SRS_PT_HOTINE_OBLIQUE_MERCATOR_TWO_POINT_NATURAL_ORIGIN
Definition: ogr_srs_api.h:127
CSLTokenizeStringComplex
char ** CSLTokenizeStringComplex(const char *pszString, const char *pszDelimiter, int bHonourStrings, int bAllowEmptyTokens)
Definition: cpl_string.cpp:769
CPLE_NotSupported
#define CPLE_NotSupported
Definition: cpl_error.h:109
OGRERR_NOT_ENOUGH_DATA
#define OGRERR_NOT_ENOUGH_DATA
Definition: ogr_core.h:293
OGRSpatialReference::GetLinearUnits
double GetLinearUnits(char **) const CPL_WARN_DEPRECATED("Use GetLinearUnits( const char**) instead")
Fetch linear projection units.
Definition: ogrspatialreference.cpp:2430
OGRERR_CORRUPT_DATA
#define OGRERR_CORRUPT_DATA
Definition: ogr_core.h:297
CXT_Attribute
@ CXT_Attribute
Definition: cpl_minixml.h:48
SRS_PT_VANDERGRINTEN
#define SRS_PT_VANDERGRINTEN
Definition: ogr_srs_api.h:208
CPL_ARRAYSIZE
#define CPL_ARRAYSIZE(array)
Definition: cpl_port.h:1045
CPLStrnlen
size_t CPLStrnlen(const char *pszStr, size_t nMaxLen)
Definition: cpl_string.cpp:2796
OGR_SRSNode::MakeValueSafe
void MakeValueSafe()
Definition: ogr_srsnode.cpp:795
SRS_PT_OBLIQUE_STEREOGRAPHIC
#define SRS_PT_OBLIQUE_STEREOGRAPHIC
Definition: ogr_srs_api.h:159
CPLCreateXMLNode
CPLXMLNode * CPLCreateXMLNode(CPLXMLNode *poParent, CPLXMLNodeType eType, const char *pszText)
Create an document tree item.
Definition: cpl_minixml.cpp:1297
CPLStripXMLNamespace
void CPLStripXMLNamespace(CPLXMLNode *psRoot, const char *pszNameSpace, int bRecurse)
Strip indicated namespaces.
Definition: cpl_minixml.cpp:2054
OGR_SRSNode::InsertChild
void InsertChild(OGR_SRSNode *, int)
Definition: ogr_srsnode.cpp:289
OGRErr
int OGRErr
Definition: ogr_core.h:290
OGRSpatialReference::SetAuthority
OGRErr SetAuthority(const char *pszTargetKey, const char *pszAuthority, int nCode)
Set the authority for a node.
Definition: ogrspatialreference.cpp:7245
OGRSpatialReference::GetInvFlattening
double GetInvFlattening(OGRErr *=nullptr) const
Get spheroid inverse flattening.
Definition: ogrspatialreference.cpp:4145
SRS_WGS84_SEMIMAJOR
#define SRS_WGS84_SEMIMAJOR
Definition: ogr_srs_api.h:441
CSLDestroy
void CSLDestroy(char **papszStrList)
Definition: cpl_string.cpp:200
M_PI
#define M_PI
Definition: cpl_port.h:417
OSRExportToPanorama
OGRErr OSRExportToPanorama(OGRSpatialReferenceH, long *, long *, long *, long *, double *)
Definition: ogr_srs_panorama.cpp:502
OSRImportFromOzi
OGRErr OSRImportFromOzi(OGRSpatialReferenceH, const char *const *)
Definition: ogr_srs_ozi.cpp:68
CPL_UNUSED
#define CPL_UNUSED
Definition: cpl_port.h:948
SRS_PP_FALSE_EASTING
#define SRS_PP_FALSE_EASTING
Definition: ogr_srs_api.h:265
CPLXMLNode::psNext
struct CPLXMLNode * psNext
Next sibling.
Definition: cpl_minixml.h:106
SRS_PT_CYLINDRICAL_EQUAL_AREA
#define SRS_PT_CYLINDRICAL_EQUAL_AREA
Definition: ogr_srs_api.h:85
CPLDecToPackedDMS
double CPLDecToPackedDMS(double dfDec)
Definition: cpl_conv.cpp:2256
OGRSpatialReference::SetLCC
OGRErr SetLCC(double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6289
cpl_port.h
OGRSpatialReference::SetVDG
OGRErr SetVDG(double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6922
EQUALN
#define EQUALN(a, b, n)
Definition: cpl_port.h:567
SRS_WGS84_INVFLATTENING
#define SRS_WGS84_INVFLATTENING
Definition: ogr_srs_api.h:443
OGRSpatialReference::GetTOWGS84
OGRErr GetTOWGS84(double *padfCoef, int nCoeff=7) const
Fetch TOWGS84 parameters, if available.
Definition: ogrspatialreference.cpp:8692
OGRSpatialReference::SetMollweide
OGRErr SetMollweide(double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6528
OGRSpatialReference::SetGnomonic
OGRErr SetGnomonic(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5883
OGR_SRSNode::FindChild
int FindChild(const char *) const
Definition: ogr_srsnode.cpp:354
SRS_UL_US_FOOT_CONV
#define SRS_UL_US_FOOT_CONV
Definition: ogr_srs_api.h:322
OGRSpatialReference::importFromOzi
OGRErr importFromOzi(const char *const *papszLines)
Definition: ogr_srs_ozi.cpp:95
VSIFOpenL
VSILFILE * VSIFOpenL(const char *, const char *)
Open file.
Definition: cpl_vsil.cpp:997
OGRSpatialReference::GetAttrNode
OGR_SRSNode * GetAttrNode(const char *)
Find named node in tree.
Definition: ogrspatialreference.cpp:1019
OGR_SRSNode::Clone
OGR_SRSNode * Clone() const
Definition: ogr_srsnode.cpp:408
OGRSpatialReference::exportToUSGS
OGRErr exportToUSGS(long *, long *, double **, long *) const
Export coordinate system in USGS GCTP projection definition.
Definition: ogr_srs_usgs.cpp:837
OSRImportFromUSGS
OGRErr OSRImportFromUSGS(OGRSpatialReferenceH, long, long, double *, long)
Import coordinate system from USGS projection definition.
Definition: ogr_srs_usgs.cpp:165
OGRSpatialReference::SetCS
OGRErr SetCS(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5401
SRS_PT_WAGNER_IV
#define SRS_PT_WAGNER_IV
Definition: ogr_srs_api.h:220
CPLCreateXMLElementAndValue
CPLXMLNode * CPLCreateXMLElementAndValue(CPLXMLNode *psParent, const char *pszName, const char *pszValue)
Create an element and text value.
Definition: cpl_minixml.cpp:1844
SRS_PT_LAMBERT_AZIMUTHAL_EQUAL_AREA
#define SRS_PT_LAMBERT_AZIMUTHAL_EQUAL_AREA
Definition: ogr_srs_api.h:142
OGRERR_NONE
#define OGRERR_NONE
Definition: ogr_core.h:292
CPLStrdup
char * CPLStrdup(const char *)
Definition: cpl_conv.cpp:293
CPLAtof
double CPLAtof(const char *)
Definition: cpl_strtod.cpp:117
OGRSpatialReference::SetLinearUnitsAndUpdateParameters
OGRErr SetLinearUnitsAndUpdateParameters(const char *pszName, double dfInMeters, const char *pszUnitAuthority=nullptr, const char *pszUnitCode=nullptr)
Set the linear units for the projection.
Definition: ogrspatialreference.cpp:2180
CPLXMLNode::pszValue
char * pszValue
Node value.
Definition: cpl_minixml.h:97
SRS_PT_WAGNER_VII
#define SRS_PT_WAGNER_VII
Definition: ogr_srs_api.h:226
OGR_SRSNode
Definition: ogr_spatialref.h:66
CPLXMLNode::psChild
struct CPLXMLNode * psChild
Child node.
Definition: cpl_minixml.h:118
OGR_SRSNode::OGR_SRSNode
OGR_SRSNode(const char *=nullptr)
Definition: ogr_srsnode.cpp:57
OGRSpatialReference::SetTM
OGRErr SetTM(double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5060
CPLPrintInt32
int CPLPrintInt32(char *, GInt32, int)
Definition: cpl_conv.cpp:1311
CSLT_ALLOWEMPTYTOKENS
#define CSLT_ALLOWEMPTYTOKENS
Definition: cpl_string.h:85
OGRSpatialReference::SetHOM2PNO
OGRErr SetHOM2PNO(double dfCenterLat, double dfLat1, double dfLong1, double dfLat2, double dfLong2, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Set a Hotine Oblique Mercator projection using two points on projection centerline.
Definition: ogrspatialreference.cpp:6066
CPLScanLong
long CPLScanLong(const char *, int)
Definition: cpl_conv.cpp:906
SRS_PP_FALSE_NORTHING
#define SRS_PP_FALSE_NORTHING
Definition: ogr_srs_api.h:267
OGRSpatialReference::SetCEA
OGRErr SetCEA(double dfStdP1, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5369
OGRSpatialReference::SetLocalCS
OGRErr SetLocalCS(const char *)
Set the user visible LOCAL_CS name.
Definition: ogrspatialreference.cpp:4305
ogr_core.h
SRS_PT_SINUSOIDAL
#define SRS_PT_SINUSOIDAL
Definition: ogr_srs_api.h:171
OGRSpatialReference::SetStereographic
OGRErr SetStereographic(double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:6836
OGRSpatialReference::SetWagner
OGRErr SetWagner(int nVariation, double dfCenterLat, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:7085
CSLT_STRIPENDSPACES
#define CSLT_STRIPENDSPACES
Definition: cpl_string.h:93
OGRSpatialReference::IsGeographic
int IsGeographic() const
Check if geographic coordinate system.
Definition: ogrspatialreference.cpp:7760
CPLFree
#define CPLFree
Definition: cpl_conv.h:81
CSLT_STRIPLEADSPACES
#define CSLT_STRIPLEADSPACES
Definition: cpl_string.h:91
CPL_DISALLOW_COPY_ASSIGN
#define CPL_DISALLOW_COPY_ASSIGN(ClassName)
Definition: cpl_port.h:997
SRS_PP_LATITUDE_OF_2ND_POINT
#define SRS_PP_LATITUDE_OF_2ND_POINT
Definition: ogr_srs_api.h:301
OSRImportFromXML
OGRErr OSRImportFromXML(OGRSpatialReferenceH, const char *)
Import coordinate system from XML format (GML only currently).
Definition: ogr_srs_xml.cpp:1310
SRS_PP_AZIMUTH
#define SRS_PP_AZIMUTH
Definition: ogr_srs_api.h:269
USGS_ANGLE_DECIMALDEGREES
#define USGS_ANGLE_DECIMALDEGREES
Definition: ogr_spatialref.h:219
CPLGetConfigOption
const char * CPLGetConfigOption(const char *, const char *)
Definition: cpl_conv.cpp:1692
VSILFILE
FILE VSILFILE
Definition: cpl_vsi.h:156
SRS_DN_NAD27
#define SRS_DN_NAD27
Definition: ogr_srs_api.h:432
OGRSpatialReference::exportToPanorama
OGRErr exportToPanorama(long *, long *, long *, long *, double *) const
Definition: ogr_srs_panorama.cpp:548
STARTS_WITH_CI
#define STARTS_WITH_CI(a, b)
Definition: cpl_port.h:580
OGR_SRSNode::StripNodes
void StripNodes(const char *)
Definition: ogr_srsnode.cpp:856
CPLE_AppDefined
#define CPLE_AppDefined
Definition: cpl_error.h:99
SRS_UL_US_FOOT
#define SRS_UL_US_FOOT
Definition: ogr_srs_api.h:320
OGRSpatialReference::SetUTM
OGRErr SetUTM(int nZone, int bNorth=TRUE)
Set UTM projection definition.
Definition: ogrspatialreference.cpp:6973

Generated for GDAL by doxygen 1.8.17.