00001 #ifndef FDO_MySQLOVGEOMETRICPROPERTYDEFINITION_H
00002 #define FDO_MySQLOVGEOMETRICPROPERTYDEFINITION_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/RdbmsOvGeometricPropertyDefinition.h>
00021 #include <Rdbms/Override/MySQL/MySqlOv.h>
00022 #include <Rdbms/Override/MySQL/MySqlOvGeometricColumn.h>
00023 #include <Rdbms/Override/MySQL/MySqlOvPropertyDefinition.h>
00024
00025 /// \brief
00026 /// Concrete class defining physical schema overrides for a geometric property definition.
00027 class FdoMySQLOvGeometricPropertyDefinition : public FdoRdbmsOvGeometricPropertyDefinition, public FdoMySQLOvPropertyDefinition
00028 {
00029 public:
00030 /// \brief
00031 /// Constructs a default of an FdoMySQLOvGeometricPropertyDefinition
00032 ///
00033 /// \return
00034 /// Returns FdoMySQLOvGeometricPropertyDefinition
00035 ///
00036 FDOMYSQL_OV_API static FdoMySQLOvGeometricPropertyDefinition* Create();
00037
00038 /// \brief
00039 /// Constructs an instance of an FdoMySQLOvGeometricPropertyDefinition using the specified arguments
00040 ///
00041 /// \param name
00042 /// Input name
00043 ///
00044 /// \return
00045 /// Returns FdoMySQLOvGeometricPropertyDefinition
00046 ///
00047 FDOMYSQL_OV_API static FdoMySQLOvGeometricPropertyDefinition* Create(FdoString* name);
00048
00049 /// \brief
00050 /// Gets the column
00051 ///
00052 /// \return
00053 /// Returns the column
00054 ///
00055 FDOMYSQL_OV_API FdoMySQLOvGeometricColumn* GetColumn();
00056
00057 /// \brief
00058 /// Sets the column
00059 ///
00060 /// \return
00061 /// Returns nothing
00062 ///
00063 FDOMYSQL_OV_API void SetColumn(FdoMySQLOvGeometricColumn* geometricColumn);
00064
00065
00066 protected:
00067 /// \cond DOXYGEN-IGNORE
00068
00069 FdoMySQLOvGeometricPropertyDefinition();
00070 FdoMySQLOvGeometricPropertyDefinition(FdoString* name);
00071 virtual ~FdoMySQLOvGeometricPropertyDefinition();
00072 virtual void Dispose();
00073 /// \endcond
00074
00075 private:
00076 };
00077
00078 /// \brief
00079 /// FdoMySQLOvGeometricPropertyP is a FdoPtr on FdoMySQLOvGeometricPropertyDefinition, provided for convenience.
00080 typedef FdoPtr<FdoMySQLOvGeometricPropertyDefinition> FdoMySQLOvGeometricPropertyP;
00081
00082 #endif
00083
00084