FDO .NET API Reference | Feature Data Objects |
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 #include "FDO\Schema\mgPropertyDefinition.h" 00022 #include "FDO\Schema\mgDataType.h" 00023 00024 class FdoDataPropertyDefinition; 00025 00026 BEGIN_NAMESPACE_OSGEO_FDO_SCHEMA 00027 00028 /// \ingroup (OSGeoFDOSchema) 00029 /// \brief 00030 /// The DataPropertyDefinition class derives PropertyDefinition and represents simple 00031 /// values or collections of simple values. DataPropertyDefinitions can take on 00032 /// any of the data types listed in DataType enumeration. 00033 public __gc class DataPropertyDefinition : public NAMESPACE_OSGEO_FDO_SCHEMA::PropertyDefinition 00034 { 00035 public: 00036 /// \brief 00037 /// Constructs a default instance of an DataPropertyDefinition. 00038 /// 00039 DataPropertyDefinition(); 00040 00041 /// \brief 00042 /// Constructs an instance of an DataPropertyDefinition using the specified arguments 00043 /// 00044 /// \param name 00045 /// Input name 00046 /// \param description 00047 /// Input description 00048 /// 00049 DataPropertyDefinition(System::String* name, System::String* description); 00050 00051 /// \brief 00052 /// Constructs an instance of an DataPropertyDefinition using the specified arguments 00053 /// 00054 /// \param name 00055 /// Input name 00056 /// \param description 00057 /// Input description 00058 /// \param system 00059 /// Input true if this is a system generated property, otherwise falseds. 00060 /// 00061 DataPropertyDefinition(System::String* name, System::String* description, System::Boolean system); 00062 00063 /// \brief 00064 /// Gets the concrete property type. 00065 /// \return 00066 /// Returns the concrete property type. 00067 __property NAMESPACE_OSGEO_FDO_SCHEMA::PropertyType get_PropertyType(); 00068 00069 /// \brief 00070 /// Gets the DataType of this property. 00071 /// 00072 /// \return 00073 /// Returns the DataType of this property 00074 /// 00075 __property NAMESPACE_OSGEO_FDO_SCHEMA::DataType get_DataType(); 00076 00077 /// \brief 00078 /// Sets the DataType of this property. 00079 /// 00080 /// \param value 00081 /// Input the DataType of this property 00082 /// 00083 /// \return 00084 /// Returns nothing 00085 /// 00086 __property System::Void set_DataType(NAMESPACE_OSGEO_FDO_SCHEMA::DataType value); 00087 00088 /// \brief 00089 /// Returns a Boolean value that indicates if this property is read-only. 00090 /// 00091 /// \return 00092 /// Returns a Boolean value 00093 /// 00094 __property System::Boolean get_ReadOnly(); 00095 00096 /// \brief 00097 /// Sets a Boolean value that indicates if this property is read-only. 00098 /// 00099 /// \param value 00100 /// Input a Boolean value that indicates if this property is read-only 00101 /// 00102 /// \return 00103 /// Returns nothing 00104 /// 00105 __property System::Void set_ReadOnly(System::Boolean value); 00106 00107 /// \brief 00108 /// Gets the length of a String, BLOB, or CLOB data property. This value 00109 /// does not apply to any other DataType. 00110 /// 00111 /// \return 00112 /// Returns the length of a String, BLOB, or CLOB data property 00113 /// 00114 __property System::Int32 get_Length(); 00115 00116 /// \brief 00117 /// Sets the length of a String, BLOB, or CLOB data property. This value is 00118 /// ignored for all other DataType values. 00119 /// 00120 /// \param value 00121 /// Input the length of a String, BLOB, or CLOB data property 00122 /// 00123 /// \return 00124 /// Returns nothing 00125 /// 00126 __property System::Void set_Length(System::Int32 value); 00127 00128 /// \brief 00129 /// Gets the precision (total number of digits) of a decimal data property. 00130 /// This value does not apply to any other DataType. 00131 /// 00132 /// \return 00133 /// Returns the precision 00134 /// 00135 __property System::Int32 get_Precision(); 00136 00137 /// \brief 00138 /// Sets the precision (total number of digits) of a decimal data property. 00139 /// This value is ignored for all other DataType values. 00140 /// 00141 /// \param value 00142 /// Input the precision 00143 /// 00144 /// \return 00145 /// Returns nothing 00146 /// 00147 __property System::Void set_Precision(System::Int32 value); 00148 00149 /// \brief 00150 /// Gets the scale (number of digits to the right of the decimal point) of a 00151 /// decimal data property. This value does not apply to any other DataType. 00152 /// 00153 /// \return 00154 /// Returns the scale 00155 /// 00156 __property System::Int32 get_Scale(); 00157 00158 /// \brief 00159 /// Sets the scale (number of digits to the right of the decimal point) of a 00160 /// decimal data property. This value is ignored for all other DataType values. 00161 /// 00162 /// \param value 00163 /// Input the scale 00164 /// 00165 /// \return 00166 /// Returns nothing 00167 /// 00168 __property System::Void set_Scale(System::Int32 value); 00169 00170 /// \brief 00171 /// Returns a Boolean value that indicates if this property's value can be 00172 /// null. 00173 /// 00174 /// \return 00175 /// Returns a Boolean value 00176 /// 00177 __property System::Boolean get_Nullable(); 00178 00179 /// \brief 00180 /// Sets a Boolean value that indicates if this property's value can be 00181 /// null. 00182 /// 00183 /// \param value 00184 /// Input a Boolean value that indicates if this property's value can be 00185 /// null 00186 /// 00187 /// \return 00188 /// Returns nothing 00189 /// 00190 __property System::Void set_Nullable(System::Boolean value); 00191 00192 /// \brief 00193 /// Gets the default value for this property. The default value is used when 00194 /// an instance of the containing class is created without specifying a value 00195 /// for this property. 00196 /// 00197 /// \return 00198 /// Returns the default value 00199 /// 00200 __property System::String* get_DefaultValue(); 00201 00202 /// \brief 00203 /// Sets the default value for this property. The default value is used when 00204 /// an instance of the containing class is created without specifying a value 00205 /// for this property. 00206 /// 00207 /// \param value 00208 /// Input the default value 00209 /// 00210 /// \return 00211 /// Returns nothing 00212 /// 00213 __property System::Void set_DefaultValue(System::String* value); 00214 00215 /// \brief 00216 /// Sets a Boolean value that indicates if this is an autogenerated property. 00217 /// 00218 /// \param value 00219 /// Input a Boolean value that indicates if this property should 00220 /// be automatically generated by the provider. If true, then the provider will auto-generate 00221 /// unique id values for objects of the class containing this property. 00222 /// The provider will set the attribute properties to read-only. 00223 /// If the provider does not support auto-generation or if the data types of the 00224 /// property is not supported for unique id generation by the provider, then the provider will 00225 /// throw an AutoGenerationException. If false, then the provider will not autogenerate values. 00226 /// 00227 /// \return 00228 /// Returns nothing 00229 /// 00230 __property System::Void set_IsAutoGenerated(System::Boolean value); 00231 00232 /// \brief 00233 /// Returns a Boolean value that indicates if this is an autogenerated property. 00234 /// 00235 /// \return 00236 /// Returns a Boolean value. 00237 /// 00238 __property System::Boolean get_IsAutoGenerated(); 00239 00240 /// \brief 00241 /// Returns the value constraint of this data property. 00242 /// 00243 /// \return 00244 /// Returns PropertyValueConstraint or NULL if not set. 00245 /// 00246 __property NAMESPACE_OSGEO_FDO_SCHEMA::PropertyValueConstraint* get_ValueConstraint(); 00247 00248 /// \brief 00249 /// Sets the value constraint of this data property. 00250 /// 00251 /// \param value 00252 /// Set the value constraint of this data property. 00253 /// 00254 /// \return 00255 /// Returns nothing 00256 /// 00257 __property System::Void set_ValueConstraint(NAMESPACE_OSGEO_FDO_SCHEMA::PropertyValueConstraint* value ); 00258 00259 /// \brief 00260 /// Constructs a DataPropertyDefinition object based on an unmanaged instance of the object 00261 /// 00262 /// \param unmanaged 00263 /// Input A Pointer to the unmanaged object. 00264 /// 00265 /// \param autoDelete 00266 /// Input Indicates if the constructed object should be automatically deleted 00267 /// once it no longer referenced. 00268 /// 00269 DataPropertyDefinition(System::IntPtr unmanaged, System::Boolean autoDelete) : NAMESPACE_OSGEO_FDO_SCHEMA::PropertyDefinition(unmanaged, autoDelete) 00270 { 00271 00272 } 00273 00274 public private: 00275 inline FdoDataPropertyDefinition* GetImpObj(); 00276 }; 00277 00278 END_NAMESPACE_OSGEO_FDO_SCHEMA 00279 00280
Comments or suggestions? Send us feedback. |