API Reference | OSGeo FDO Provider for ODBC |
00001 #ifndef FDO_SqlServerOVTABLE_H 00002 #define FDO_SqlServerOVTABLE_H 00003 // 00004 // 00005 // (C) Copyright 1990-2005 by Autodesk, Inc. 00006 // 00007 // 00008 // 00009 // By using this code, you are agreeing to the terms 00010 // and conditions of the License Agreement that appeared 00011 // and was accepted upon download or installation 00012 // (or in connection with the download or installation) 00013 // of the Autodesk software in which this code is included. 00014 // All permissions on use of this code are as set forth 00015 // in such License Agreement provided that the above copyright 00016 // notice appears in all authorized copies and that both that 00017 // copyright notice and the limited warranty and 00018 // restricted rights notice below appear in all supporting 00019 // documentation. 00020 // 00021 // AUTODESK PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS. 00022 // AUTODESK SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF 00023 // MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. AUTODESK, INC. 00024 // DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE 00025 // UNINTERRUPTED OR ERROR FREE. 00026 // 00027 // Use, duplication, or disclosure by the U.S. Government is subject to 00028 // restrictions set forth in FAR 52.227-19 (Commercial Computer 00029 // Software - Restricted Rights) and DFAR 252.227-7013(c)(1)(ii) 00030 // (Rights in Technical Data and Computer Software), as applicable. 00031 // 00032 #include <Rdbms/Override/RdbmsOvTable.h> 00033 #include <Rdbms/Override/SqlServer/SqlServerOv.h> 00034 #include <Rdbms/Override/SqlServer/SqlServerOvTextInRowOption.h> 00035 00036 00037 /// \brief 00038 /// Concrete class defining physical schema overrides for a table. 00039 class FdoSqlServerOvTable : public FdoRdbmsOvTable 00040 { 00041 00042 public: 00043 /// \brief 00044 /// Constructs a default of an FdoSqlServerOvTable 00045 /// 00046 /// \return 00047 /// Returns FdoSqlServerOvTable 00048 /// 00049 FDOSQLSERVER_OV_API static FdoSqlServerOvTable* Create(); 00050 00051 /// \brief 00052 /// Constructs an instance of an FdoSqlServerOvTable using the specified arguments 00053 /// 00054 /// \param name 00055 /// Input name 00056 /// 00057 /// \return 00058 /// Returns FdoSqlServerOvTable 00059 /// 00060 FDOSQLSERVER_OV_API static FdoSqlServerOvTable* Create(FdoString *name); 00061 00062 /// \brief 00063 /// Gets the table filegroup 00064 /// 00065 /// \return 00066 /// Returns the table filegroup 00067 /// 00068 FDOSQLSERVER_OV_API FdoString *GetTableFilegroup(); 00069 00070 /// \brief 00071 /// Sets the table filegroup 00072 /// 00073 /// \return 00074 /// Returns nothing 00075 /// 00076 FDOSQLSERVER_OV_API void SetTableFilegroup(FdoString *tableFilegroup); 00077 00078 /// \brief 00079 /// Gets the text filegroup 00080 /// 00081 /// \return 00082 /// Returns the text filegroup 00083 /// 00084 FDOSQLSERVER_OV_API FdoString *GetTextFilegroup(); 00085 00086 /// \brief 00087 /// Sets the text filegroup 00088 /// 00089 /// \return 00090 /// Returns nothing 00091 /// 00092 FDOSQLSERVER_OV_API void SetTextFilegroup(FdoString *textFilegroup); 00093 00094 /// \brief 00095 /// Gets the index filegroup 00096 /// 00097 /// \return 00098 /// Returns the index filegroup 00099 /// 00100 FDOSQLSERVER_OV_API FdoString *GetIndexFilegroup(); 00101 00102 /// \brief 00103 /// Sets the index filegroup 00104 /// 00105 /// \return 00106 /// Returns nothing 00107 /// 00108 FDOSQLSERVER_OV_API void SetIndexFilegroup(FdoString *indexFilegroup); 00109 00110 /// \brief 00111 /// Gets the text-in-row option 00112 /// 00113 /// \return 00114 /// Returns the text-in-row option 00115 /// 00116 FDOSQLSERVER_OV_API SqlServerOvTextInRowOption GetTextInRow(); 00117 00118 /// \brief 00119 /// Sets the text-in-row option 00120 /// 00121 /// \return 00122 /// Returns nothing 00123 /// 00124 FDOSQLSERVER_OV_API void SetTextInRow(SqlServerOvTextInRowOption textInRow); 00125 00126 /// \brief 00127 /// Gets the database 00128 /// 00129 /// \return 00130 /// Returns the database 00131 /// 00132 FDOSQLSERVER_OV_API FdoString *GetDatabase(); 00133 00134 /// \brief 00135 /// Sets the database 00136 /// 00137 /// \return 00138 /// Returns nothing 00139 /// 00140 FDOSQLSERVER_OV_API void SetDatabase(FdoString *database); 00141 00142 /// \brief 00143 /// Gets the owner 00144 /// 00145 /// \return 00146 /// Returns the owner 00147 /// 00148 FDOSQLSERVER_OV_API FdoString *GetOwner(); 00149 00150 /// \brief 00151 /// Sets the owner 00152 /// 00153 /// \return 00154 /// Returns nothing 00155 /// 00156 FDOSQLSERVER_OV_API void SetOwner(FdoString *owner); 00157 00158 00159 /// \cond DOXYGEN-IGNORE 00160 00161 /// XML Serialization functions, not part of the API. 00162 00163 /// Serialize this property to XML. 00164 virtual void _writeXmlContents(FdoXmlWriter* xmlWriter, const FdoXmlFlags* flags); 00165 00166 /// Initialize this element from its XML attributes 00167 virtual void InitFromXml(FdoXmlSaxContext* pContext, FdoXmlAttributeCollection* attrs); 00168 00169 /// Sets the parent of this object. Not part of the API. 00170 void SetParent(FdoPhysicalElementMapping* value); 00171 00172 /// Common initializer for all constructors: 00173 void Init(); 00174 00175 /// \endcond 00176 00177 protected: 00178 FdoSqlServerOvTable(); 00179 FdoSqlServerOvTable(FdoString *name); 00180 virtual ~FdoSqlServerOvTable(); 00181 virtual void Dispose(); 00182 00183 private: 00184 FdoStringP mTableFilegroup; 00185 FdoStringP mTextFilegroup; 00186 FdoStringP mIndexFilegroup; 00187 SqlServerOvTextInRowOption mTextInRow; 00188 FdoStringP mDatabase; 00189 FdoStringP mOwner; 00190 }; 00191 00192 /// \brief 00193 /// FdoSqlServerOvTableP is a FdoPtr on FdoSqlServerOvTable, provided for convenience. 00194 typedef FdoPtr<FdoSqlServerOvTable> FdoSqlServerOvTableP; 00195 00196 #endif 00197 00198
Comments? |