00001 /*
00002 * Copyright (C) 2004-2006 Autodesk, 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 */
00018
00019 #pragma once
00020
00021 class FdoRdbmsOvGeometricPropertyDefinition;
00022
00023 BEGIN_NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE
00024
00025 public __gc class OvGeometricColumn;
00026
00027 /// <summary>Abstract class defining physical schema overrides for a geometric property
00028 /// definition.</summary>
00029 public __gc class OvGeometricPropertyDefinition : public NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE::OvPropertyDefinition
00030 {
00031 public private:
00032 inline FdoRdbmsOvGeometricPropertyDefinition* GetImpObj();
00033
00034 public protected:
00035 OvGeometricPropertyDefinition(System::IntPtr unmanaged, System::Boolean autoDelete);
00036
00037 public:
00038 /// <summary>Gets the column override</summary>
00039 /// <returns>Returns OvGeometricColumn</returns>
00040 __property NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE::OvGeometricColumn* get_Column();
00041
00042 /// <summary>Gets the geometric column type</summary>
00043 /// <returns>Returns the default geometric column type</returns>
00044 __property NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE::OvGeometricColumnType get_GeometricColumnType();
00045
00046 /// <summary>Sets the geometric column type</summary>
00047 /// <param name="mappingType">Input the geometric column type</param>
00048 /// <returns>Returns nothing</returns>
00049 __property System::Void set_GeometricColumnType(NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE::OvGeometricColumnType columnType);
00050
00051 /// <summary>Gets the geometric content type</summary>
00052 /// <returns>Returns the geometric content type</returns>
00053 __property NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE::OvGeometricContentType get_GeometricContentType();
00054
00055 /// <summary>Sets the content type</summary>
00056 /// <param name="mappingType">Input the content type</param>
00057 /// <returns>Returns nothing</returns>
00058 __property System::Void set_GeometricContentType(NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE::OvGeometricContentType contentType);
00059
00060 /// <summary>Gets the ordinate column name for the X ordinate.
00061 /// This only applies when GeometricContentType==OvGeometricContentType_Ordinates.
00062 /// Default value is "X".
00063 /// </summary>
00064 /// <returns>Returns the ordinate column name for the X ordinate</returns>
00065 __property System::String * get_XColumnName();
00066
00067 /// <summary>Sets the ordinate column name for the X ordinate</summary>
00068 /// <param name="mappingType">Input the X ordinate column name</param>
00069 /// <returns>Returns nothing</returns>
00070 __property System::Void set_XColumnName(System::String * columnName);
00071
00072 /// <summary>Gets the ordinate column name for the Y ordinate.
00073 /// This only applies when GeometricContentType==OvGeometricContentType_Ordinates.
00074 /// Default value is "Y".
00075 /// </summary>
00076 /// <returns>Returns the ordinate column name for the Y ordinate</returns>
00077 __property System::String * get_YColumnName();
00078
00079 /// <summary>Sets the ordinate column name for the Y ordinate</summary>
00080 /// <param name="mappingType">Input the Y ordinate column name</param>
00081 /// <returns>Returns nothing</returns>
00082 __property System::Void set_YColumnName(System::String * columnName);
00083
00084 /// <summary>Gets the ordinate column name for the Z ordinate.
00085 /// This only applies when GeometricContentType==OvGeometricContentType_Ordinates
00086 /// and the property definition's "HasElevation" attribute is "true".
00087 /// Default value is "Z".
00088 /// </summary>
00089 /// <returns>Returns the ordinate column name for the Z ordinate</returns>
00090 __property System::String * get_ZColumnName();
00091
00092 /// <summary>Sets the ordinate column name for the Z ordinate</summary>
00093 /// <param name="mappingType">Input the Z ordinate column name</param>
00094 /// <returns>Returns nothing</returns>
00095 __property System::Void set_ZColumnName(System::String * columnName);
00096 };
00097
00098 END_NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE