OSGeo FDO Provider for ODBC API Reference

OSGeo FDO Provider for ODBC API

API Reference OSGeo FDO Provider for ODBC

PostGisOvTable.h

Go to the documentation of this file.
00001 //
00002 // Copyright (C) 2006 Refractions Research, Inc.
00003 // 
00004 // This library is free software; you can redistribute it and/or
00005 // modify it under the terms of version 2.1 of the GNU Lesser
00006 // General Public License as published by the Free Software Foundation.
00007 // 
00008 // This library is distributed in the hope that it will be useful,
00009 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00010 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00011 // Lesser General Public License for more details.
00012 // 
00013 // You should have received a copy of the GNU Lesser General Public
00014 // License along with this library; if not, write to the Free Software
00015 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
00016 //
00017 #ifndef FDOPOSTGISOVTABLE_H
00018 #define FDOPOSTGISOVTABLE_H
00019 
00020 #include <Rdbms/Override/RdbmsOvTable.h>
00021 #include <Rdbms/Override/PostGIS/PostGisOv.h>
00022 
00023 /// \brief
00024 /// Concrete class defining physical schema overrides for a table.
00025 /// This class is used in PostGIS schema overrides.
00026 ///
00027 class FdoPostGISOvTable : public FdoRdbmsOvTable
00028 {
00029 public:
00030 
00031     /// Named constructor for FdoPostGISOvColumn.
00032     /// 
00033     /// \return
00034     /// Pointer to new instance of FdoPostGISOvColumn.
00035     /// 
00036     FDOPOSTGIS_OV_API static FdoPostGISOvTable* Create();
00037 
00038     /// Named constructor for FdoPostGISOvTable.
00039     /// 
00040     /// \param
00041     /// name [in] - name of table.
00042     ///
00043     /// \return
00044     /// Pointer to new instance of FdoPostGISOvTable.
00045     /// 
00046     FDOPOSTGIS_OV_API static FdoPostGISOvTable* Create(FdoString* name);
00047 
00048     /// \brief
00049     /// Gets the owner
00050     /// 
00051     /// \return
00052     /// Returns the owner
00053     /// 
00054     FDOPOSTGIS_OV_API FdoString* GetOwner();
00055 
00056     /// \brief
00057     /// Sets the owner
00058     /// 
00059     /// \return
00060     /// Returns nothing
00061     /// 
00062     FDOPOSTGIS_OV_API void SetOwner(FdoString* owner);
00063 
00064 
00065 /// \cond DOXYGEN-IGNORE
00066 
00067     /// XML Serialization functions, not part of the API.
00068 
00069     /// Serialize this property to XML.
00070     virtual void _writeXmlContents(FdoXmlWriter* xmlWriter,
00071         const FdoXmlFlags* flags);
00072 
00073     /// Initialize this element from its XML attributes
00074     virtual void InitFromXml(FdoXmlSaxContext* saxContext,
00075         FdoXmlAttributeCollection* attrs);
00076 
00077     /// Sets the parent of this object. Not part of the API.
00078     void SetParent(FdoPhysicalElementMapping* value);
00079 
00080 /// \endcond
00081 
00082 protected:
00083 
00084     FdoPostGISOvTable();
00085     FdoPostGISOvTable(FdoString* name);
00086     virtual ~FdoPostGISOvTable();
00087     virtual void Dispose();
00088 
00089     /// Named constructor.
00090     /// Called from class constructors.
00091     void Init();
00092 
00093 private:
00094     FdoStringP mOwner;
00095 };
00096 
00097 /// \brief
00098 /// Declaration of smart-pointer type for FdoPostGISOvTable.
00099 /// Provided for convenience.
00100 typedef FdoPtr<FdoPostGISOvTable> FdoPostGISOvTableP;
00101 
00102 #endif // FDOPOSTGISOVTABLE_H

Comments?