30 #ifndef OGRMUTEXEDDATASOURCELAYER_H_INCLUDED 31 #define OGRMUTEXEDDATASOURCELAYER_H_INCLUDED 34 #include "cpl_multiproc.h" 35 #include "ogrmutexedlayer.h" 50 CPLMutex *m_hGlobalMutex;
51 int m_bWrapLayersInMutexedLayer;
52 std::map<OGRLayer*, OGRMutexedLayer* > m_oMapLayers;
53 std::map<OGRMutexedLayer*, OGRLayer* > m_oReverseMapLayers;
63 int bWrapLayersInMutexedLayer);
68 OGRDataSource* GetBaseDataSource() {
return m_poBaseDataSource; }
70 virtual const char *GetName();
72 virtual int GetLayerCount() ;
74 virtual OGRLayer *GetLayerByName(
const char *);
75 virtual OGRErr DeleteLayer(
int);
77 virtual int TestCapability(
const char * );
79 virtual OGRLayer *ICreateLayer(
const char *pszName,
82 char ** papszOptions = NULL );
84 const char *pszNewName,
85 char **papszOptions = NULL );
88 virtual void SetStyleTableDirectly(
OGRStyleTable *poStyleTable );
92 virtual OGRLayer * ExecuteSQL(
const char *pszStatement,
94 const char *pszDialect );
95 virtual void ReleaseResultSet(
OGRLayer * poResultsSet );
97 virtual void FlushCache();
99 virtual OGRErr StartTransaction(
int bForce=FALSE);
100 virtual OGRErr CommitTransaction();
101 virtual OGRErr RollbackTransaction();
103 virtual char **GetMetadata(
const char * pszDomain =
"" );
104 virtual CPLErr SetMetadata(
char ** papszMetadata,
105 const char * pszDomain =
"" );
106 virtual const char *GetMetadataItem(
const char * pszName,
107 const char * pszDomain =
"" );
108 virtual CPLErr SetMetadataItem(
const char * pszName,
109 const char * pszValue,
110 const char * pszDomain =
"" );
113 #endif // OGRMUTEXEDDATASOURCELAYER_H_INCLUDED Definition: ogrsf_frmts.h:238
Definition: ogrmutexeddatasource.h:45
Definition: ogr_core.h:335
OGRwkbGeometryType
Definition: ogr_core.h:333
Definition: ogr_geometry.h:104
Definition: ogr_spatialref.h:129
Definition: ogrsf_frmts.h:66
Definition: ogr_featurestyle.h:82