00001 #ifndef FDO_OdbcOVTABLE_H
00002 #define FDO_OdbcOVTABLE_H
00003 //
00004 //
00005 // Copyright (C) 2004-2006 Autodesk, Inc.
00006 //
00007 // This library is free software; you can redistribute it and/or
00008 // modify it under the terms of version 2.1 of the GNU Lesser
00009 // General Public License as published by the Free Software Foundation.
00010 //
00011 // This library is distributed in the hope that it will be useful,
00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00014 // Lesser General Public License for more details.
00015 //
00016 // You should have received a copy of the GNU Lesser General Public
00017 // License along with this library; if not, write to the Free Software
00018 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
00019 //
00020 #include <Rdbms/Override/RdbmsOvTable.h>
00021 #include <Rdbms/Override/ODBC/OdbcOv.h>
00022
00023
00024 /// \brief
00025 /// Concrete class defining physical schema overrides for a table.
00026 class FdoOdbcOvTable : public FdoRdbmsOvTable
00027 {
00028
00029 public:
00030 /// \brief
00031 /// Constructs a default of an FdoOdbcOvTable
00032 ///
00033 /// \return
00034 /// Returns FdoOdbcOvTable
00035 ///
00036 FDOODBC_OV_API static FdoOdbcOvTable* Create();
00037
00038 /// \brief
00039 /// Constructs an instance of an FdoOdbcOvTable using the specified arguments
00040 ///
00041 /// \param name
00042 /// Input name
00043 ///
00044 /// \return
00045 /// Returns FdoOdbcOvTable
00046 ///
00047 FDOODBC_OV_API static FdoOdbcOvTable* Create(FdoString *name);
00048
00049
00050 /// \cond DOXYGEN-IGNORE
00051
00052 /// XML Serialization functions, not part of the API.
00053
00054 /// Serialize this property to XML.
00055 virtual void _writeXmlContents(FdoXmlWriter* xmlWriter, const FdoXmlFlags* flags);
00056
00057 /// Initialize this element from its XML attributes
00058 virtual void InitFromXml(FdoXmlSaxContext* pContext, FdoXmlAttributeCollection* attrs);
00059
00060 /// Sets the parent of this object. Not part of the API.
00061 void SetParent(FdoPhysicalElementMapping* value);
00062
00063 /// Common initializer for all constructors:
00064 void Init();
00065
00066 /// \endcond
00067
00068 protected:
00069 FdoOdbcOvTable();
00070 FdoOdbcOvTable(FdoString *name);
00071 virtual ~FdoOdbcOvTable();
00072 virtual void Dispose();
00073
00074 private:
00075 };
00076
00077 /// \brief
00078 /// FdoOdbcOvTableP is a FdoPtr on FdoOdbcOvTable, provided for convenience.
00079 typedef FdoPtr<FdoOdbcOvTable> FdoOdbcOvTableP;
00080
00081 #endif
00082
00083