31 #ifndef OGR_GENSQL_H_INCLUDED
32 #define OGR_GENSQL_H_INCLUDED
43 #define GEOM_FIELD_INDEX_TO_ALL_FIELD_INDEX(poFDefn, iGeom) \
44 ((poFDefn)->GetFieldCount() + SPECIAL_FIELD_COUNT + (iGeom))
46 #define IS_GEOM_FIELD_INDEX(poFDefn, idx) \
47 (((idx) >= (poFDefn)->GetFieldCount() + SPECIAL_FIELD_COUNT) && \
48 ((idx) < (poFDefn)->GetFieldCount() + SPECIAL_FIELD_COUNT + (poFDefn)->GetGeomFieldCount()))
50 #define ALL_FIELD_INDEX_TO_GEOM_FIELD_INDEX(poFDefn, idx) \
51 ((idx) - ((poFDefn)->GetFieldCount() + SPECIAL_FIELD_COUNT))
57 class CPL_DLL OGRGenSQLResultsLayer :
public OGRLayer
70 int *panGeomFieldToSrcGeomField;
82 GDALDataset **papoExtraDS;
85 std::vector<CPLString> m_oDistinctList;
90 void CreateOrderByIndex();
94 void SortIndexSection(
const OGRField *pasIndexFields,
96 size_t nStart,
size_t nEntries );
97 void FreeIndexFields(
OGRField *pasIndexFields,
99 bool bFreeArray =
true);
103 void ApplyFiltersToSource();
105 void FindAndSetIgnoredFields();
106 void ExploreExprForIgnoredFields(swq_expr_node* expr,
CPLHashSet* hSet);
107 void AddFieldDefnToSet(
int iTable,
int iColumn,
CPLHashSet* hSet);
109 int ContainGeomSpecialField(swq_expr_node* expr);
111 void InvalidateOrderByIndex();
113 int MustEvaluateSpatialFilterOnGenSQL();
116 OGRGenSQLResultsLayer( GDALDataset *poSrcDS,
119 const char *pszWHERE,
120 const char *pszDialect );
121 virtual ~OGRGenSQLResultsLayer();
133 virtual OGRErr GetExtent(OGREnvelope *psExtent,
int bForce = TRUE)
override {
return GetExtent(0, psExtent, bForce); }
134 virtual OGRErr GetExtent(
int iGeomField, OGREnvelope *psExtent,
int bForce = TRUE)
override;
OGR_SRSNode * GetRoot()
Return root node.
Definition: ogr_spatialref.h:233
void DestroyChild(int)
Definition: ogr_srsnode.cpp:291
#define SRS_PP_CENTRAL_MERIDIAN
Definition: ogr_srs_api.h:269
#define SRS_UA_DEGREE_CONV
Definition: ogr_srs_api.h:446
int GetChildCount() const
Definition: ogr_spatialref.h:81
void SetSpatialRef(OGRSpatialReference *poSRSIn)
Set the spatial reference of this field.
Definition: ogrgeomfielddefn.cpp:486
int GetEPSGGeogCS()
Definition: ogr_fromepsg.cpp:2507
unsigned long CPLHashSetHashPointer(const void *elt)
Definition: cpl_hash_set.cpp:514
OGRErr SetVertCS(const char *pszVertCSName, const char *pszVertDatumName, int nVertDatumClass=2005)
Set the user visible VERT_CS name.
Definition: ogrspatialreference.cpp:3119
OGRErr SetMercator2SP(double dfStdP1, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5102
@ OAO_North
Definition: ogr_srs_api.h:50
const char * CPLGetLastErrorMsg(void)
Definition: cpl_error.cpp:788
OGRErr SetNode(const char *, const char *)
Set attribute value in spatial reference.
Definition: ogrspatialreference.cpp:826
OGRErr SetGeogCS(const char *pszGeogName, const char *pszDatumName, const char *pszEllipsoidName, double dfSemiMajor, double dfInvFlattening, const char *pszPMName=NULL, double dfPMOffset=0.0, const char *pszUnits=NULL, double dfConvertToRadians=0.0)
Set geographic coordinate system.
Definition: ogrspatialreference.cpp:1560
virtual OGRErr SetFID(GIntBig nFIDIn)
Set the feature identifier.
Definition: ogrfeature.cpp:5214
int GetFieldAsInteger(int i)
Fetch field value as integer.
Definition: ogrfeature.cpp:1661
int OGR_RawField_IsNull(const OGRField *)
Returns whether a raw field is null.
Definition: ogrfeature.cpp:6738
OGRErr SetMercator(double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5061
void SetNativeMediaType(const char *pszNativeMediaType)
Sets the native media type for the feature.
Definition: ogrfeature.cpp:6665
void Release()
Decrements the reference count by one, and destroy if zero.
Definition: ogrspatialreference.cpp:378
char * CPLEscapeString(const char *pszString, int nLength, int nScheme)
Definition: cpl_string.cpp:2018
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:6771
virtual OGRFeature * GetNextFeature() CPL_WARN_UNUSED_RESULT=0
Fetch the next available feature from this layer.
virtual void ResetReading()=0
Reset feature reading to start on the first feature.
@ OFSTBoolean
Definition: ogr_core.h:616
OGRErr SetTMG(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:3927
virtual const char * GetStyleString()
Fetch style string for this feature.
Definition: ogrfeature.cpp:5907
CPLString & Printf(const char *pszFormat,...)
Definition: cplstring.cpp:59
OGRErr SetEquirectangular(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:4306
virtual int GetGeomFieldCount()
Fetch number of geometry fields on this feature.
Definition: ogrfeaturedefn.cpp:583
const char * GetAuthorityCode(const char *pszTargetKey) const
Get the authority code for a node.
Definition: ogrspatialreference.cpp:5905
#define VSI_REALLOC_VERBOSE(pOldPtr, nNewSize)
Definition: cpl_vsi.h:274
OGRErr SetLCC1SP(double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:4950
CPLHashSet * CPLHashSetNew(CPLHashSetHashFunc fnHashFunc, CPLHashSetEqualFunc fnEqualFunc, CPLHashSetFreeEltFunc fnFreeEltFunc)
Definition: cpl_hash_set.cpp:91
@ wkbMultiPolygon
Definition: ogr_core.h:324
const char * GetAttrValue(const char *, int=0) const
Fetch indicated attribute of named node.
Definition: ogrspatialreference.cpp:518
void * CPLCalloc(size_t, size_t)
Definition: cpl_conv.cpp:128
OGRErr SetStatePlane(int nZone, int bNAD83=TRUE, const char *pszOverrideUnitName=NULL, double dfOverrideUnit=0.0)
Set State Plane projection definition.
Definition: ogr_fromepsg.cpp:2357
OGRErr SetExtension(const char *pszTargetKey, const char *pszName, const char *pszValue)
Set extension value.
Definition: ogrspatialreference.cpp:7163
virtual int GetFieldCount()
Fetch number of fields on this feature.
Definition: ogrfeaturedefn.cpp:270
int GetWidth() const
Get the formatting width for this field.
Definition: ogr_feature.h:97
OGRGeometryH OGR_G_ForceToMultiLineString(OGRGeometryH) CPL_WARN_UNUSED_RESULT
Convert to multilinestring.
Definition: ogrgeometryfactory.cpp:1230
Definition: ogr_spatialref.h:132
OGRErr SetACEA(double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:3961
virtual GIntBig GetFeatureCount(int bForce=TRUE)
Fetch the feature count in this layer.
Definition: ogrlayer.cpp:166
int EPSGTreatsAsNorthingEasting()
This method returns TRUE if EPSG feels this projected coordinate system should be treated as having n...
Definition: ogr_fromepsg.cpp:2805
int CPLsnprintf(char *str, size_t size, const char *fmt,...)
Definition: cpl_string.cpp:1333
OGRErr OSRAutoIdentifyEPSG(OGRSpatialReferenceH hSRS)
Set EPSG authority info if possible.
Definition: ogr_fromepsg.cpp:2713
@ OFTDateTime
Definition: ogr_core.h:597
Definition: ogr_geometry.h:118
OGRErr SetLinearUnits(const char *pszName, double dfInMeters)
Set the linear units for the projection.
Definition: ogrspatialreference.cpp:1185
OGRGeomFieldDefn * GetGeomFieldDefnRef(int iField)
Fetch definition for this geometry field.
Definition: ogr_feature.h:312
Definition: ogrsf_frmts.h:68
Convenient string class based on std::string.
Definition: cpl_string.h:338
OGRErr SetPS(double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5320
int IsProjected() const
Check if projected coordinate system.
Definition: ogrspatialreference.cpp:6176
void SetValue(const char *)
Definition: ogr_srsnode.cpp:358
int GetPrecision() const
Get the formatting precision for this field. This should normally be zero for fields of types other t...
Definition: ogr_feature.h:100
virtual OGRGeometry * GetSpatialFilter()
This method returns the current spatial filter for this layer.
Definition: ogrlayer.cpp:1079
void SetNativeData(const char *pszNativeData)
Sets the native data for the feature.
Definition: ogrfeature.cpp:6609
@ OAO_East
Definition: ogr_srs_api.h:52
void * CPLRealloc(void *, size_t)
Definition: cpl_conv.cpp:215
virtual void SetSpatialFilter(OGRGeometry *)
Set a new spatial filter.
Definition: ogrlayer.cpp:1106
OGRErr SetPolyconic(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5283
OGRErr SetLCCB(double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:4988
#define OLCFastFeatureCount
Definition: ogr_core.h:726
#define CPL_FRMT_GIB
Definition: cpl_port.h:326
#define EQUAL(a, b)
Definition: cpl_port.h:622
OGRErr FixupOrdering()
Correct parameter ordering to match CT Specification.
Definition: ogrspatialreference.cpp:6998
const char * GetValue() const
Definition: ogr_spatialref.h:95
OGRErr SetTargetLinearUnits(const char *pszTargetKey, const char *pszName, double dfInMeters)
Set the linear units for the projection.
Definition: ogrspatialreference.cpp:1239
virtual OGRFeatureDefn * GetLayerDefn()=0
Fetch the schema information for this layer.
virtual OGRFieldDefn * GetFieldDefn(int i)
Fetch field definition.
Definition: ogrfeaturedefn.cpp:317
#define SRS_PT_LABORDE_OBLIQUE_MERCATOR
Definition: ogr_srs_api.h:152
const char * CSLGetField(char **, int)
Definition: cpl_string.cpp:173
#define wkbFlatten(x)
Definition: ogr_core.h:431
const char * GetAuthorityName(const char *pszTargetKey) const
Get the authority name for a node.
Definition: ogrspatialreference.cpp:5977
int OGR_RawField_IsUnset(const OGRField *)
Returns whether a raw field is unset.
Definition: ogrfeature.cpp:6717
char ** CSLDuplicate(char **papszStrList)
Definition: cpl_string.cpp:228
#define CPLAssert(expr)
Definition: cpl_error.h:182
int CPLHashSetInsert(CPLHashSet *set, void *elt)
Definition: cpl_hash_set.cpp:355
void SetField(int i, int nValue)
Set field to integer value.
Definition: ogrfeature.cpp:3208
#define OGRERR_UNSUPPORTED_SRS
Definition: ogr_core.h:294
OGRErr SetHOMAC(double dfCenterLat, double dfCenterLong, double dfAzimuth, double dfRectToSkew, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Set an Hotine Oblique Mercator Azimuth Center projection using azimuth angle.
Definition: ogrspatialreference.cpp:4608
#define SRS_PP_SCALE_FACTOR
Definition: ogr_srs_api.h:271
#define CPLES_SQL
Definition: cpl_string.h:204
double GetPrimeMeridian(char **=NULL) const
Fetch prime meridian info.
Definition: ogrspatialreference.cpp:1476
void * OGRSpatialReferenceH
Definition: ogr_api.h:69
double GetProjParm(const char *, double=0.0, OGRErr *=NULL) const
Fetch a projection parameter value.
Definition: ogrspatialreference.cpp:3579
OGRFieldDefn * GetFieldDefnRef(int iField) const
Fetch definition for this field.
Definition: ogr_feature.h:328
virtual OGRFeature * GetFeature(GIntBig nFID) CPL_WARN_UNUSED_RESULT
Fetch a feature by its identifier.
Definition: ogrlayer.cpp:445
OGRErr SetKrovak(double dfCenterLat, double dfCenterLong, double dfAzimuth, double dfPseudoStdParallelLat, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:4832
Definition: ogr_core.h:661
virtual OGRGeomFieldDefn * GetGeomFieldDefn(int i)
Fetch geometry field definition.
Definition: ogrfeaturedefn.cpp:632
int EPSGTreatsAsLatLong()
This method returns TRUE if EPSG feels this geographic coordinate system should be treated as having ...
Definition: ogr_fromepsg.cpp:2742
int CSLCount(const char *const *papszStrList)
Definition: cpl_string.cpp:147
unsigned long long GUIntBig
Definition: cpl_port.h:253
void CPLHashSetDestroy(CPLHashSet *set)
Definition: cpl_hash_set.cpp:207
#define SRS_PP_LATITUDE_OF_ORIGIN
Definition: ogr_srs_api.h:285
#define CPLE_OpenFailed
Definition: cpl_error.h:106
GIntBig GetFieldAsInteger64(int i)
Fetch field value as integer 64 bit.
Definition: ogrfeature.cpp:1800
#define VALIDATE_POINTER1(ptr, func, rc)
Definition: cpl_error.h:208
int GetUTMZone(int *pbNorth=NULL) const
Get utm zone information.
Definition: ogrspatialreference.cpp:5631
#define OGRERR_FAILURE
Definition: ogr_core.h:293
OGR_SRSNode * GetChild(int)
Definition: ogr_srsnode.cpp:122
@ OFTString
Definition: ogr_core.h:590
@ OAO_Other
Definition: ogr_srs_api.h:49
OGRErr importFromDict(const char *pszDict, const char *pszCode)
Definition: ogr_srs_dict.cpp:69
OGRErr SetTMSO(double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:3849
void Clear()
Wipe current definition.
Definition: ogrspatialreference.cpp:239
OGRErr SetGeocCS(const char *pszGeocName)
Set the user visible GEOCCS name.
Definition: ogrspatialreference.cpp:3036
void CPLDebug(const char *, const char *,...)
Definition: cpl_error.cpp:492
virtual OGRErr GetExtent(OGREnvelope *psExtent, int bForce=TRUE) CPL_WARN_UNUSED_RESULT
Fetch the extent of this layer.
Definition: ogrlayer.cpp:207
Definition: ogr_feature.h:62
virtual void SetStyleString(const char *)
Set feature style string.
Definition: ogrfeature.cpp:5959
@ OFTInteger
Definition: ogr_core.h:586
#define OLMD_FID64
Definition: ogr_core.h:761
void * CPLMalloc(size_t)
Definition: cpl_conv.cpp:158
#define SRS_PT_POLAR_STEREOGRAPHIC
Definition: ogr_srs_api.h:186
@ wkbNone
Definition: ogr_core.h:344
int CPLHashSetEqualPointer(const void *elt1, const void *elt2)
Definition: cpl_hash_set.cpp:533
OGRGeometryH OGR_G_ForceToLineString(OGRGeometryH) CPL_WARN_UNUSED_RESULT
Convert to line string.
Definition: ogrgeometryfactory.cpp:4059
OGRFeatureDefn * GetDefnRef()
Fetch feature definition.
Definition: ogr_feature.h:303
@ wkbPolygon
Definition: ogr_core.h:319
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:4677
OGRErr SetAxes(const char *pszTargetKey, const char *pszXAxisName, OGRAxisOrientation eXAxisOrientation, const char *pszYAxisName, OGRAxisOrientation eYAxisOrientation)
Set the axes for a coordinate system.
Definition: ogrspatialreference.cpp:7412
void AddChild(OGR_SRSNode *)
Definition: ogr_srsnode.cpp:238
#define SRS_UL_METER
Definition: ogr_srs_api.h:336
void CPLErrorReset(void)
Definition: cpl_error.cpp:653
const char * CPLSPrintf(const char *fmt,...)
Definition: cpl_string.cpp:975
OGRErr SetOS(double dfOriginLat, double dfCMeridian, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5211
@ OFSTNone
Definition: ogr_core.h:614
OGRErr importFromEPSG(int)
Initialize SRS based on EPSG GCS or PCS code.
Definition: ogr_fromepsg.cpp:2126
bool IsFieldSetAndNotNull(int iField)
Test if a field is set and not null.
Definition: ogrfeature.cpp:1464
double OSRCalcInvFlattening(double dfSemiMajor, double dfSemiMinor)
Compute inverse flattening from semi-major and semi-minor axis.
Definition: ogrspatialreference.cpp:7612
OGRAxisOrientation
Definition: ogr_srs_api.h:48
OGRErr importFromProj4(const char *)
Import PROJ.4 coordinate string.
Definition: ogr_srs_proj4.cpp:478
void * OGRGeometryH
Definition: ogr_api.h:56
void CPLError(CPLErr eErrClass, CPLErrorNum err_no, const char *fmt,...)
Definition: cpl_error.cpp:215
Definition: ogr_feature.h:141
const char * GetNameRef()
Fetch name of this field.
Definition: ogr_feature.h:83
int OSREPSGTreatsAsNorthingEasting(OGRSpatialReferenceH hSRS)
This function returns TRUE if EPSG feels this geographic coordinate system should be treated as havin...
Definition: ogr_fromepsg.cpp:2842
OGRErr SetLAEA(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:4877
void VSIFree(void *)
Definition: cpl_vsisimple.cpp:817
#define CPLE_NotSupported
Definition: cpl_error.h:110
@ OFTTime
Definition: ogr_core.h:596
OGRFieldType GetType() const
Fetch type of this field.
Definition: ogr_feature.h:85
int OSREPSGTreatsAsLatLong(OGRSpatialReferenceH hSRS)
This function returns TRUE if EPSG feels this geographic coordinate system should be treated as havin...
Definition: ogr_fromepsg.cpp:2776
const char * GetNameRef()
Fetch name of this field.
Definition: ogr_feature.h:162
int OGRErr
Definition: ogr_core.h:285
OGRErr SetAuthority(const char *pszTargetKey, const char *pszAuthority, int nCode)
Set the authority for a node.
Definition: ogrspatialreference.cpp:5822
Definition: cpl_hash_set.cpp:40
void CSLDestroy(char **papszStrList)
Definition: cpl_string.cpp:200
#define M_PI
Definition: cpl_port.h:470
long long GIntBig
Definition: cpl_port.h:250
OGRErr CPL_STDCALL OSRImportFromEPSGA(OGRSpatialReferenceH, int)
Initialize SRS based on EPSG GCS or PCS code.
Definition: ogr_fromepsg.cpp:2318
#define VSI_MALLOC_VERBOSE(size)
Definition: cpl_vsi.h:254
OGRwkbGeometryType
Definition: ogr_core.h:312
#define SRS_PP_FALSE_EASTING
Definition: ogr_srs_api.h:287
OGRField * GetRawFieldRef(int i)
Fetch a pointer to the internal field value given the index.
Definition: ogr_feature.h:343
#define OLCRandomRead
Definition: ogr_core.h:722
@ OFTDate
Definition: ogr_core.h:595
Definition: ogr_feature.h:279
OGRErr SetLCC(double dfStdP1, double dfStdP2, double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:4911
const char * OSRAxisEnumToName(OGRAxisOrientation eOrientation)
Return the string representation for the OGRAxisOrientation enumeration.
Definition: ogrspatialreference.cpp:7369
OGRwkbGeometryType GetType() const
Fetch geometry type of this field.
Definition: ogr_feature.h:164
const char * GetNativeMediaType() const
Returns the native media type for the feature.
Definition: ogr_feature.h:468
OGRErr SetGeomField(int iField, const OGRGeometry *)
Set feature geometry of a specified geometry field.
Definition: ogrfeature.cpp:805
#define OLCFastGetExtent
Definition: ogr_core.h:727
int FindChild(const char *) const
Definition: ogr_srsnode.cpp:322
#define SRS_UL_US_FOOT_CONV
Definition: ogr_srs_api.h:344
@ wkbGeometryCollection
Definition: ogr_core.h:325
OGRFieldType
Definition: ogr_core.h:584
OGRGeometryH OGR_G_ForceToMultiPolygon(OGRGeometryH) CPL_WARN_UNUSED_RESULT
Convert to multipolygon.
Definition: ogrgeometryfactory.cpp:875
virtual OGRErr SetNextByIndex(GIntBig nIndex)
Move read cursor to the nIndex'th feature in the current resultset.
Definition: ogrlayer.cpp:497
double GetFieldAsDouble(int i)
Fetch field value as a double.
Definition: ogrfeature.cpp:1918
OGR_SRSNode * GetAttrNode(const char *)
Find named node in tree.
Definition: ogrspatialreference.cpp:447
virtual OGRErr SetIgnoredFields(const char **papszFields)
Set which fields can be omitted when retrieving features from the layer.
Definition: ogrlayer.cpp:1780
OGR_SRSNode * Clone() const
Definition: ogr_srsnode.cpp:375
char ** CSLAddString(char **papszStrList, const char *pszNewString)
Definition: cpl_string.cpp:83
OGRErr SetCS(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:4104
@ OFTInteger64
Definition: ogr_core.h:598
double GetLinearUnits(char **=NULL) const
Fetch linear projection units.
Definition: ogrspatialreference.cpp:1338
#define OGRERR_NONE
Definition: ogr_core.h:287
char * CPLStrdup(const char *)
Definition: cpl_conv.cpp:284
virtual OGRSpatialReference * GetSpatialRef()
Fetch spatial reference system of this field.
Definition: ogrgeomfielddefn.cpp:435
Definition: ogr_feature.h:207
double CPLAtof(const char *)
Definition: cpl_strtod.cpp:117
Definition: ogr_spatialref.h:60
virtual OGRErr SetAttributeFilter(const char *)
Set a new attribute query.
Definition: ogrlayer.cpp:337
#define OLCFastSetNextByIndex
Definition: ogr_core.h:734
@ wkbLineString
Definition: ogr_core.h:317
OGRGeometry * GetGeomFieldRef(int iField)
Fetch pointer to feature geometry.
Definition: ogrfeature.cpp:630
OGRErr importFromEPSGA(int)
Initialize SRS based on EPSG GCS or PCS code.
Definition: ogr_fromepsg.cpp:2191
@ wkbMultiLineString
Definition: ogr_core.h:323
OGRErr OSRSetStatePlaneWithUnits(OGRSpatialReferenceH hSRS, int nZone, int bNAD83, const char *pszOverrideUnitName, double dfOverrideUnit)
Set State Plane projection definition.
Definition: ogr_fromepsg.cpp:2481
double GetNormProjParm(const char *, double=0.0, OGRErr *=NULL) const
Fetch a normalized projection parameter value.
Definition: ogrspatialreference.cpp:3652
OGRErr SetTM(double dfCenterLat, double dfCenterLong, double dfScale, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:3767
virtual int TestCapability(const char *)=0
Test if this layer supported the named capability.
const char * GetFieldAsString(int i)
Fetch field value as a string.
Definition: ogrfeature.cpp:2090
OGRErr AutoIdentifyEPSG()
Set EPSG authority info if possible.
Definition: ogr_fromepsg.cpp:2601
#define SRS_PP_FALSE_NORTHING
Definition: ogr_srs_api.h:289
OGRErr SetCEA(double dfStdP1, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:4070
@ OFTReal
Definition: ogr_core.h:588
OGRErr SetLocalCS(const char *)
Set the user visible LOCAL_CS name.
Definition: ogrspatialreference.cpp:2980
OGRFieldSubType GetSubType() const
Fetch subtype of this field.
Definition: ogr_feature.h:89
OGRErr SetNZMG(double dfCenterLat, double dfCenterLong, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5177
OGRErr OSRSetStatePlane(OGRSpatialReferenceH hSRS, int nZone, int bNAD83)
Set State Plane projection definition.
Definition: ogr_fromepsg.cpp:2462
int IsGeographic() const
Check if geographic coordinate system.
Definition: ogrspatialreference.cpp:6265
#define CPLFree
Definition: cpl_conv.h:81
@ wkbUnknown
Definition: ogr_core.h:314
OGRErr CPL_STDCALL OSRImportFromEPSG(OGRSpatialReferenceH, int)
Initialize SRS based on EPSG GCS or PCS code.
Definition: ogr_fromepsg.cpp:2157
OGRErr SetSOC(double dfLatitudeOfOrigin, double dfCentralMeridian, double dfFalseEasting, double dfFalseNorthing)
Definition: ogrspatialreference.cpp:5469
OGRErr SetNormProjParm(const char *, double)
Set a projection parameter with a normalized value.
Definition: ogrspatialreference.cpp:3722
const char * GetNativeData() const
Returns the native data for the feature.
Definition: ogr_feature.h:467
void * CPLHashSetLookup(CPLHashSet *set, const void *elt)
Definition: cpl_hash_set.cpp:405
GIntBig GetFID() const
Get feature identifier.
Definition: ogr_feature.h:435
OGRGeometryH OGR_G_ForceToPolygon(OGRGeometryH) CPL_WARN_UNUSED_RESULT
Convert to polygon.
Definition: ogrgeometryfactory.cpp:708
void StripNodes(const char *)
Definition: ogr_srsnode.cpp:864
#define CPLE_AppDefined
Definition: cpl_error.h:100
#define SRS_UL_US_FOOT
Definition: ogr_srs_api.h:342
Generated for GDAL by
1.8.17.