00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef _OGRAPISPY_H_INCLUDED
00031 #define _OGRAPISPY_H_INCLUDED
00032
00033 #include "gdal.h"
00034
00065 #ifdef DEBUG
00066 #define OGRAPISPY_ENABLED
00067 #endif
00068
00069 #ifdef OGRAPISPY_ENABLED
00070
00071 CPL_C_START
00072
00073 extern int bOGRAPISpyEnabled;
00074
00075 int OGRAPISpyOpenTakeSnapshot(const char* pszName, int bUpdate);
00076 void OGRAPISpyOpen(const char* pszName, int bUpdate, int iSnapshot,
00077 GDALDatasetH* phDS);
00078 void OGRAPISpyPreClose(OGRDataSourceH hDS);
00079 void OGRAPISpyPostClose(OGRDataSourceH hDS);
00080 void OGRAPISpyCreateDataSource(OGRSFDriverH hDriver, const char* pszName,
00081 char** papszOptions, OGRDataSourceH hDS);
00082 void OGRAPISpyDeleteDataSource(OGRSFDriverH hDriver, const char* pszName);
00083
00084 void OGRAPISpy_DS_GetLayerCount( OGRDataSourceH hDS );
00085 void OGRAPISpy_DS_GetLayer( OGRDataSourceH hDS, int iLayer, OGRLayerH hLayer );
00086 void OGRAPISpy_DS_GetLayerByName( OGRDataSourceH hDS, const char* pszLayerName,
00087 OGRLayerH hLayer );
00088 void OGRAPISpy_DS_ExecuteSQL( OGRDataSourceH hDS,
00089 const char *pszStatement,
00090 OGRGeometryH hSpatialFilter,
00091 const char *pszDialect,
00092 OGRLayerH hLayer);
00093 void OGRAPISpy_DS_ReleaseResultSet( OGRDataSourceH hDS, OGRLayerH hLayer);
00094
00095 void OGRAPISpy_DS_CreateLayer( OGRDataSourceH hDS,
00096 const char * pszName,
00097 OGRSpatialReferenceH hSpatialRef,
00098 OGRwkbGeometryType eType,
00099 char ** papszOptions,
00100 OGRLayerH hLayer);
00101 void OGRAPISpy_DS_DeleteLayer( OGRDataSourceH hDS, int iLayer );
00102
00103 void OGRAPISpy_Dataset_StartTransaction( GDALDatasetH hDS, int bForce );
00104 void OGRAPISpy_Dataset_CommitTransaction( GDALDatasetH hDS );
00105 void OGRAPISpy_Dataset_RollbackTransaction( GDALDatasetH hDS );
00106
00107 void OGRAPISpy_L_GetFeatureCount( OGRLayerH hLayer, int bForce );
00108 void OGRAPISpy_L_GetExtent( OGRLayerH hLayer, int bForce );
00109 void OGRAPISpy_L_GetExtentEx( OGRLayerH hLayer, int iGeomField, int bForce );
00110 void OGRAPISpy_L_SetAttributeFilter( OGRLayerH hLayer, const char* pszFilter );
00111 void OGRAPISpy_L_GetFeature( OGRLayerH hLayer, GIntBig nFeatureId );
00112 void OGRAPISpy_L_SetNextByIndex( OGRLayerH hLayer, GIntBig nIndex );
00113 void OGRAPISpy_L_GetNextFeature( OGRLayerH hLayer );
00114 void OGRAPISpy_L_SetFeature( OGRLayerH hLayer, OGRFeatureH hFeat );
00115 void OGRAPISpy_L_CreateFeature( OGRLayerH hLayer, OGRFeatureH hFeat );
00116 void OGRAPISpy_L_CreateField( OGRLayerH hLayer, OGRFieldDefnH hField,
00117 int bApproxOK );
00118 void OGRAPISpy_L_DeleteField( OGRLayerH hLayer, int iField );
00119 void OGRAPISpy_L_ReorderFields( OGRLayerH hLayer, int* panMap );
00120 void OGRAPISpy_L_ReorderField( OGRLayerH hLayer, int iOldFieldPos,
00121 int iNewFieldPos );
00122 void OGRAPISpy_L_AlterFieldDefn( OGRLayerH hLayer, int iField,
00123 OGRFieldDefnH hNewFieldDefn,
00124 int nFlags );
00125 void OGRAPISpy_L_CreateGeomField( OGRLayerH hLayer, OGRGeomFieldDefnH hField,
00126 int bApproxOK );
00127 void OGRAPISpy_L_StartTransaction( OGRLayerH hLayer );
00128 void OGRAPISpy_L_CommitTransaction( OGRLayerH hLayer );
00129 void OGRAPISpy_L_RollbackTransaction( OGRLayerH hLayer );
00130 void OGRAPISpy_L_GetLayerDefn( OGRLayerH hLayer );
00131 void OGRAPISpy_L_FindFieldIndex( OGRLayerH hLayer, const char *pszFieldName,
00132 int bExactMatch );
00133 void OGRAPISpy_L_GetSpatialRef( OGRLayerH hLayer );
00134 void OGRAPISpy_L_TestCapability( OGRLayerH hLayer, const char* pszCap );
00135 void OGRAPISpy_L_GetSpatialFilter( OGRLayerH hLayer );
00136 void OGRAPISpy_L_SetSpatialFilter( OGRLayerH hLayer, OGRGeometryH hGeom );
00137 void OGRAPISpy_L_SetSpatialFilterEx( OGRLayerH hLayer, int iGeomField,
00138 OGRGeometryH hGeom );
00139 void OGRAPISpy_L_SetSpatialFilterRect( OGRLayerH hLayer,
00140 double dfMinX, double dfMinY,
00141 double dfMaxX, double dfMaxY);
00142 void OGRAPISpy_L_SetSpatialFilterRectEx( OGRLayerH hLayer, int iGeomField,
00143 double dfMinX, double dfMinY,
00144 double dfMaxX, double dfMaxY);
00145 void OGRAPISpy_L_ResetReading( OGRLayerH hLayer );
00146 void OGRAPISpy_L_SyncToDisk( OGRLayerH hLayer );
00147 void OGRAPISpy_L_DeleteFeature( OGRLayerH hLayer, GIntBig nFID );
00148 void OGRAPISpy_L_GetFIDColumn( OGRLayerH hLayer );
00149 void OGRAPISpy_L_GetGeometryColumn( OGRLayerH hLayer );
00150 void OGRAPISpy_L_GetName( OGRLayerH hLayer );
00151 void OGRAPISpy_L_GetGeomType( OGRLayerH hLayer );
00152 void OGRAPISpy_L_SetIgnoredFields( OGRLayerH hLayer,
00153 const char** papszIgnoredFields );
00154
00155 void OGRAPISpy_FD_GetGeomType(OGRFeatureDefnH hDefn);
00156 void OGRAPISpy_FD_GetFieldCount(OGRFeatureDefnH hDefn);
00157 void OGRAPISpy_FD_GetFieldDefn(OGRFeatureDefnH hDefn, int iField,
00158 OGRFieldDefnH hGeomField);
00159 void OGRAPISpy_FD_GetFieldIndex(OGRFeatureDefnH hDefn, const char* pszFieldName);
00160
00161 void OGRAPISpy_Fld_GetXXXX(OGRFieldDefnH hField, const char* pszOp);
00162
00163 void OGRAPISpy_FD_GetGeomFieldCount(OGRFeatureDefnH hDefn);
00164 void OGRAPISpy_FD_GetGeomFieldDefn(OGRFeatureDefnH hDefn, int iGeomField,
00165 OGRGeomFieldDefnH hGeomField);
00166 void OGRAPISpy_FD_GetGeomFieldIndex(OGRFeatureDefnH hDefn, const char* pszFieldName);
00167 void OGRAPISpy_GFld_GetXXXX(OGRGeomFieldDefnH hGeomField, const char* pszOp);
00168
00169 CPL_C_END
00170
00171 #endif
00172
00173 #endif