30 #ifndef OGRWARPEDLAYER_H_INCLUDED
31 #define OGRWARPEDLAYER_H_INCLUDED
35 #include "ogrlayerdecorator.h"
41 class OGRWarpedLayer :
public OGRLayerDecorator
53 OGREnvelope sStaticEnvelope{};
55 static int ReprojectEnvelope( OGREnvelope* psEnvelope,
63 OGRWarpedLayer(
OGRLayer* poDecoratedLayer,
68 virtual ~OGRWarpedLayer();
70 void SetExtent(
double dfXMin,
double dfYMin,
double dfXMax,
double dfYMax);
72 virtual void SetSpatialFilter(
OGRGeometry * )
override;
73 virtual void SetSpatialFilterRect(
double dfMinX,
double dfMinY,
74 double dfMaxX,
double dfMaxY )
override;
75 virtual void SetSpatialFilter(
int iGeomField,
OGRGeometry * )
override;
76 virtual void SetSpatialFilterRect(
int iGeomField,
double dfMinX,
double dfMinY,
77 double dfMaxX,
double dfMaxY )
override;
88 virtual GIntBig GetFeatureCount(
int bForce = TRUE )
override;
89 virtual OGRErr GetExtent(
int iGeomField, OGREnvelope *psExtent,
int bForce = TRUE)
override;
90 virtual OGRErr GetExtent(OGREnvelope *psExtent,
int bForce = TRUE)
override;
92 virtual int TestCapability(
const char * )
override;
97 #endif // OGRWARPEDLAYER_H_INCLUDED
#define OLCFastSpatialFilter
Definition: ogr_core.h:755
@ wkbPointZM
Definition: ogr_core.h:381
@ wkbCurvePolygonZM
Definition: ogr_core.h:390
unsigned char GByte
Definition: cpl_port.h:215
virtual OGRErr SetFID(GIntBig nFIDIn)
Set the feature identifier.
Definition: ogrfeature.cpp:5440
#define OGRERR_UNSUPPORTED_GEOMETRY_TYPE
Definition: ogr_core.h:295
OGRGeometry * StealGeometry() CPL_WARN_UNUSED_RESULT
Take away ownership of geometry.
Definition: ogrfeature.cpp:498
short GInt16
Definition: cpl_port.h:211
@ wkbMultiCurveZM
Definition: ogr_core.h:391
@ wkbMultiLineStringZM
Definition: ogr_core.h:385
int CPLIsUTF8(const char *pabyData, int nLen)
Definition: cpl_recode.cpp:251
char * CPLEscapeString(const char *pszString, int nLength, int nScheme)
Definition: cpl_string.cpp:2036
@ wkbCurvePolygonZ
Definition: ogr_core.h:354
@ wkbMultiSurfaceZM
Definition: ogr_core.h:392
@ wkbCompoundCurveZM
Definition: ogr_core.h:389
@ wkbMultiSurfaceM
Definition: ogr_core.h:374
void * CPLCalloc(size_t, size_t)
Definition: cpl_conv.cpp:138
@ wkbMultiPoint25D
Definition: ogr_core.h:402
virtual OGRSpatialReference * GetSpatialRef()
Fetch the spatial reference system for this layer.
Definition: ogrlayer.cpp:1037
@ wkbNDR
Definition: ogr_core.h:492
Definition: ogr_spatialref.h:156
@ wkbCompoundCurve
Definition: ogr_core.h:335
virtual GIntBig GetFeatureCount(int bForce=TRUE)
Fetch the feature count in this layer.
Definition: ogrlayer.cpp:173
int CPLsnprintf(char *str, size_t size, const char *fmt,...)
Definition: cpl_string.cpp:1337
@ wkbPolygon25D
Definition: ogr_core.h:401
@ wkbPolygonZM
Definition: ogr_core.h:383
@ wkbVariantPostGIS1
Definition: ogr_core.h:427
#define OLCSequentialWrite
Definition: ogr_core.h:753
@ wkbPolygonM
Definition: ogr_core.h:365
Definition: ogr_geometry.h:286
@ wkbCircularString
Definition: ogr_core.h:333
Definition: ogrsf_frmts.h:70
@ wkbMultiPolygonZM
Definition: ogr_core.h:386
void * CPLRealloc(void *, size_t)
Definition: cpl_conv.cpp:225
#define OLCFastFeatureCount
Definition: ogr_core.h:756
@ wkbPoint25D
Definition: ogr_core.h:399
@ wkbCircularStringZM
Definition: ogr_core.h:388
#define EQUAL(a, b)
Definition: cpl_port.h:569
@ wkbCircularStringZ
Definition: ogr_core.h:352
int OGRBoolean
Definition: ogr_core.h:306
@ wkbMultiPointZM
Definition: ogr_core.h:384
double x
Definition: ogr_geometry.h:73
#define CPLES_XML
Definition: cpl_string.h:169
@ wkbLineStringZM
Definition: ogr_core.h:382
OGRErr SetFrom(const OGRFeature *, int=TRUE)
Set one feature from another.
Definition: ogrfeature.cpp:5737
#define CPLAssert(expr)
Definition: cpl_error.h:186
Definition: ogr_geometry.h:63
bool CPLTestBool(const char *pszValue)
Definition: cpl_string.cpp:1526
OGRwkbByteOrder
Definition: ogr_core.h:489
Definition: ogr_core.h:683
@ wkbCurvePolygon
Definition: ogr_core.h:336
@ wkbLineStringM
Definition: ogr_core.h:364
#define OGRERR_FAILURE
Definition: ogr_core.h:298
virtual OGRFeatureDefn * Clone() const
Create a copy of this feature definition.
Definition: ogrfeaturedefn.cpp:201
@ wkbMultiPolygon25D
Definition: ogr_core.h:404
@ wkbCircularStringM
Definition: ogr_core.h:370
@ wkbMultiSurface
Definition: ogr_core.h:340
@ wkbCurvePolygonM
Definition: ogr_core.h:372
@ wkbMultiPointM
Definition: ogr_core.h:366
void CPLDebug(const char *, const char *,...)
Definition: cpl_error.cpp:602
@ wkbGeometryCollectionM
Definition: ogr_core.h:369
void * CPLMalloc(size_t)
Definition: cpl_conv.cpp:168
@ wkbMultiCurveM
Definition: ogr_core.h:373
@ wkbMultiLineString25D
Definition: ogr_core.h:403
#define OLCRandomWrite
Definition: ogr_core.h:754
@ wkbCompoundCurveM
Definition: ogr_core.h:371
const char * CPLSPrintf(const char *fmt,...)
Definition: cpl_string.cpp:977
virtual void SetSpatialFilterRect(double dfMinX, double dfMinY, double dfMaxX, double dfMaxY)
Set a new rectangular spatial filter.
Definition: ogrlayer.cpp:1184
void CPLError(CPLErr eErrClass, CPLErrorNum err_no, const char *fmt,...)
Definition: cpl_error.cpp:308
void VSIFree(void *)
Definition: cpl_vsisimple.cpp:827
#define CPLE_NotSupported
Definition: cpl_error.h:109
#define OGRERR_CORRUPT_DATA
Definition: ogr_core.h:297
#define CPL_ARRAYSIZE(array)
Definition: cpl_port.h:1045
int OGRErr
Definition: ogr_core.h:290
@ wkbCompoundCurveZ
Definition: ogr_core.h:353
long long GIntBig
Definition: cpl_port.h:248
#define VSI_MALLOC_VERBOSE(size)
Definition: cpl_vsi.h:268
#define CPL_SWAP32PTR(x)
Definition: cpl_port.h:747
OGRwkbGeometryType
Definition: ogr_core.h:317
#define CPL_UNUSED
Definition: cpl_port.h:948
int Reference()
Increments the reference count by one.
Definition: ogr_feature.h:307
Definition: ogr_feature.h:354
#define OLCFastGetExtent
Definition: ogr_core.h:757
@ wkbXDR
Definition: ogr_core.h:491
char * CPLForceToASCII(const char *pabyData, int nLen, char chReplacementChar)
Definition: cpl_recode.cpp:276
@ wkbGeometryCollection25D
Definition: ogr_core.h:405
@ wkbMultiCurveZ
Definition: ogr_core.h:355
virtual OGRErr transform(OGRCoordinateTransformation *poCT)=0
Apply arbitrary coordinate transformation to geometry.
@ wkbMultiCurve
Definition: ogr_core.h:339
@ wkbMultiPolygonM
Definition: ogr_core.h:368
@ wkbLineString25D
Definition: ogr_core.h:400
@ wkbGeometryCollectionZM
Definition: ogr_core.h:387
#define OGRERR_NONE
Definition: ogr_core.h:292
char * CPLStrdup(const char *)
Definition: cpl_conv.cpp:293
Definition: ogr_feature.h:259
double CPLAtof(const char *)
Definition: cpl_strtod.cpp:117
@ wkbMultiSurfaceZ
Definition: ogr_core.h:356
#define CPLE_IllegalArg
Definition: cpl_error.h:107
OGRGeometry * GetGeomFieldRef(int iField)
Fetch pointer to feature geometry.
Definition: ogrfeature.cpp:666
virtual void getEnvelope(OGREnvelope *psEnvelope) const =0
Computes and returns the bounding envelope for this geometry in the passed psEnvelope structure.
long CPLScanLong(const char *, int)
Definition: cpl_conv.cpp:906
int OGR_GET_MS(float fSec)
Definition: ogr_core.h:737
@ wkbMultiLineStringM
Definition: ogr_core.h:367
#define CPLFree
Definition: cpl_conv.h:81
#define CPL_DISALLOW_COPY_ASSIGN(ClassName)
Definition: cpl_port.h:997
OGRwkbVariant
Definition: ogr_core.h:423
GIntBig GetFID() const
Get feature identifier.
Definition: ogr_feature.h:712
@ wkbPointM
Definition: ogr_core.h:363
const char * CPLGetConfigOption(const char *, const char *)
Definition: cpl_conv.cpp:1692
#define CPLE_AppDefined
Definition: cpl_error.h:99
Generated for GDAL by
1.8.17.