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
00031
00032
00033 #ifndef SFCSCHEMAROWSETS_H_INCLUDED
00034 #define SFCSCHEMAROWSETS_H_INCLUDED
00035
00036 #include <atldbsch.h>
00037
00038 #include "oledbgis.h"
00039
00040
00041
00042
00043
00044
00045
00046 class COGISFeatureTableInfo
00047 {
00048 public:
00049
00050 COGISFeatureTableInfo()
00051 {
00052 memset(this, 0, sizeof(*this));
00053 }
00054
00055
00056
00057 TCHAR m_szFeatureTableAlias[129];
00058 TCHAR m_szCatalog[129];
00059 TCHAR m_szSchema[129];
00060 TCHAR m_szName[129];
00061 TCHAR m_szIdColumnName[129];
00062 TCHAR m_szDGColumnName[129];
00063
00064
00065
00066 BEGIN_COLUMN_MAP(COGISFeatureTableInfo)
00067 COLUMN_ENTRY(1, m_szFeatureTableAlias)
00068 COLUMN_ENTRY(2, m_szCatalog)
00069 COLUMN_ENTRY(3, m_szSchema)
00070 COLUMN_ENTRY(4, m_szName)
00071 COLUMN_ENTRY(5, m_szIdColumnName)
00072 COLUMN_ENTRY(6, m_szDGColumnName)
00073 END_COLUMN_MAP()
00074 };
00075
00076 class COGISFeatureTables:
00077 public CSchemaRowset<CAccessor<COGISFeatureTableInfo>,0>
00078
00079 {
00080 public:
00081 HRESULT Open(const CSession& session, bool bBind = true )
00082 {
00083 USES_CONVERSION;
00084 return CSchemaRowset<CAccessor<COGISFeatureTableInfo>,0>::
00085 Open(session, DBSCHEMA_OGIS_FEATURE_TABLES );
00086 }
00087 };
00088
00089
00090
00091
00092
00093
00094
00095
00096 class COGISGeometryColumnInfo
00097 {
00098 public:
00099
00100 COGISGeometryColumnInfo()
00101 {
00102 memset(this, 0, sizeof(*this));
00103 }
00104
00105
00106
00107 TCHAR m_szCatalog[129];
00108 TCHAR m_szSchema[129];
00109 TCHAR m_szName[129];
00110 TCHAR m_szColumnName[129];
00111 ULONG m_nGeomType;
00112 ULONG m_nSRS_ID;
00113
00114
00115 BEGIN_COLUMN_MAP(COGISGeometryColumnInfo)
00116 COLUMN_ENTRY(1, m_szCatalog)
00117 COLUMN_ENTRY(2, m_szSchema)
00118 COLUMN_ENTRY(3, m_szName)
00119 COLUMN_ENTRY(4, m_szColumnName)
00120 COLUMN_ENTRY(5, m_nGeomType)
00121 COLUMN_ENTRY(6, m_nSRS_ID)
00122 END_COLUMN_MAP()
00123 };
00124
00125 class COGISGeometryColumnTable:
00126 public CSchemaRowset<CAccessor<COGISGeometryColumnInfo>,0>
00127
00128 {
00129 public:
00130 HRESULT Open(const CSession& session, bool bBind = true )
00131 {
00132 USES_CONVERSION;
00133 return CSchemaRowset<CAccessor<COGISGeometryColumnInfo>,0>::
00134 Open(session, DBSCHEMA_OGIS_GEOMETRY_COLUMNS);
00135 }
00136 };
00137
00138
00139
00140
00141
00142
00143
00144
00145 class COGISSpatialRefSystemsInfo
00146 {
00147 public:
00148
00149 COGISSpatialRefSystemsInfo()
00150 {
00151 memset(this, 0, sizeof(*this));
00152 }
00153
00154
00155
00156 ULONG m_nSRS_ID;
00157 TCHAR m_szAuthorityName[129];
00158 ULONG m_nAuthorityID;
00159 TCHAR m_szSpatialRefSystemWKT[2048];
00160
00161
00162 BEGIN_COLUMN_MAP(COGISSpatialRefSystemsInfo)
00163 COLUMN_ENTRY(1, m_nSRS_ID)
00164 COLUMN_ENTRY(2, m_szAuthorityName)
00165 COLUMN_ENTRY(3, m_nAuthorityID)
00166 COLUMN_ENTRY(4, m_szSpatialRefSystemWKT)
00167 END_COLUMN_MAP()
00168 };
00169
00170 class COGISSpatialRefSystemsTable:
00171 public CSchemaRowset<CAccessor<COGISSpatialRefSystemsInfo>,0>
00172
00173 {
00174 public:
00175 HRESULT Open(const CSession& session, bool bBind = true )
00176 {
00177 USES_CONVERSION;
00178 return CSchemaRowset<CAccessor<COGISSpatialRefSystemsInfo>,0>::
00179 Open(session, DBSCHEMA_OGIS_SPATIAL_REF_SYSTEMS );
00180 }
00181 };
00182
00183 #endif