OSGeo FDO Provider for ODBC API Reference

OSGeo FDO Provider for ODBC API

API Reference OSGeo FDO Provider for ODBC

PostGisOvGeometricColumn.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 FDOPOSTGISOVGEOMETRICCOLUMN_H
00018 #define FDOPOSTGISOVGEOMETRICCOLUMN_H
00019 
00020 #include <Rdbms/Override/PostGIS/PostGisOv.h>
00021 #include <Rdbms/Override/RdbmsOvGeometricColumn.h>
00022 
00023 
00024 /// \brief
00025 /// Concrete class defining physical schema overrides for geometric column.
00026 /// This class is used in PostGIS schema overrides.
00027 ///
00028 class FdoPostGISOvGeometricColumn : public FdoRdbmsOvGeometricColumn
00029 {
00030 public:
00031 
00032     /// Named constructor for FdoPostGISOvGeometricColumn.
00033     /// 
00034     /// \return
00035     /// Pointer to new instance of FdoPostGISOvGeometricColumn.
00036     /// 
00037     FDOPOSTGIS_OV_API static FdoPostGISOvGeometricColumn* Create();
00038 
00039     /// Named constructor for FdoPostGISOvGeometricColumn.
00040     /// 
00041     /// \param
00042     /// name [in] - name of column.
00043     ///
00044     /// \return
00045     /// Pointer to new instance of FdoPostGISOvGeometricColumn.
00046     /// 
00047     FDOPOSTGIS_OV_API static FdoPostGISOvGeometricColumn* Create(
00048         FdoString* name);
00049 
00050 
00051 /// \cond DOXYGEN-IGNORE
00052 
00053     /// XML serialization functions, not part of the API.
00054 
00055     /// Initialize this element from its XML attributes
00056     ///
00057     /// \param
00058     /// saxContext [in] - 
00059     ///
00060     /// \param
00061     /// attrs [in] - 
00062     ///
00063     virtual void InitFromXml(FdoXmlSaxContext* saxContext,
00064         FdoXmlAttributeCollection* attrs);
00065 
00066     /// Serialize provider-specific parts of this override to XML
00067     ///
00068     /// \param
00069     /// xmlWriter [in] - 
00070     ///
00071     /// \param
00072     /// flags [in] - 
00073     ///
00074     virtual void _writeXmlContents(FdoXmlWriter* xmlWriter,
00075         const FdoXmlFlags* flags);
00076 
00077 /// \endcond
00078 
00079 protected:
00080 
00081     /// Default constructor.
00082     FdoPostGISOvGeometricColumn();
00083 
00084     /// Alternative constructor.
00085     /// \param name [in] - name of class definition. 
00086     FdoPostGISOvGeometricColumn(FdoString* name);
00087 
00088     /// Destructor
00089     virtual ~FdoPostGISOvGeometricColumn();
00090 
00091     /// Named destructor.
00092     /// Responsible for final destruction calling
00093     /// \code delete this \endcode.
00094     virtual void Dispose();
00095 
00096 private:
00097 
00098 };
00099 
00100 /// \brief
00101 /// Declaration of smart-pointer type
00102 /// for FdoPostGISOvGeometricColumn.
00103 /// Provided for convenience.
00104 ///
00105 typedef FdoPtr<FdoPostGISOvGeometricColumn>
00106     FdoPostGISOvGeometricColumnP;
00107 
00108 #endif // FDOPOSTGISOVGEOMETRICCOLUMN_H

Comments?