OSGeo FDO Provider for MySQL .NET API Reference

From OSGeo FDO MySQL .NET API

.NET API Reference OSGeo FDO Provider for MySQL

mgOvDataPropertyDefinitionCollection.h

Go to the documentation of this file.
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 FdoMySQLOvDataPropertyDefinitionCollection;
00022 
00023 BEGIN_NAMESPACE_OSGEO_FDO_COMMANDS_SCHEMA
00024 public __gc class PhysicalElementMapping;
00025 END_NAMESPACE_OSGEO_FDO_COMMANDS_SCHEMA
00026 
00027 BEGIN_NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL
00028 
00029 public __gc class OvDataPropertyDefinition;
00030 
00031 /// <summary>
00032 ///     OvDataPropertyDefinitionCollection is a collection of name-value pairs.
00033 /// </summary>
00034 [System::Reflection::DefaultMemberAttribute("RealTypeItem")]
00035 public __sealed __gc class OvDataPropertyDefinitionCollection : public NAMESPACE_OSGEO_RUNTIME::Disposable, public System::Collections::IList
00036 {
00037 private:
00038     /// <summary>
00039     ///     nested class defined to provide Enumerator.
00040     /// </summary>
00041     __gc class Enumerator : public System::Collections::IEnumerator
00042     {
00043     private:
00044         OvDataPropertyDefinitionCollection* m_pCol;
00045         System::Int32 m_nIdx;
00046 
00047     public:
00048         Enumerator(OvDataPropertyDefinitionCollection* elements) : m_pCol(elements), m_nIdx(-1) 
00049         {
00050 
00051         }
00052 
00053         __property System::Object* get_Current();
00054 
00055         System::Boolean MoveNext();
00056 
00057         System::Void Reset();
00058     };
00059 
00060 public private:
00061     OvDataPropertyDefinitionCollection(System::IntPtr unmanaged, System::Boolean autoDelete);
00062 
00063     inline FdoMySQLOvDataPropertyDefinitionCollection* GetImpObj();
00064 
00065 private:
00066     // System::Collections::ICollection interfaces
00067     System::Void System::Collections::ICollection::CopyTo(System::Array* array,System::Int32 index);
00068 
00069     __property System::Object* System::Collections::ICollection::get_SyncRoot();
00070 
00071     __property System::Boolean System::Collections::ICollection::get_IsSynchronized();
00072 
00073     //System::Collections::IList interfaces
00074     __property System::Boolean System::Collections::IList::get_IsFixedSize();
00075 
00076     __property System::Boolean System::Collections::IList::get_IsReadOnly();
00077 
00078     System::Int32 System::Collections::IList::Add(Object* value);
00079 
00080     System::Boolean System::Collections::IList::Contains(Object* value);
00081 
00082     System::Int32 System::Collections::IList::IndexOf(Object* value);
00083 
00084     System::Void System::Collections::IList::Insert(System::Int32 index, Object* value);
00085 
00086     System::Void System::Collections::IList::Remove(Object* value);
00087 
00088     __property Object* System::Collections::IList::get_Item(System::Int32 index);
00089 
00090     __property System::Void  System::Collections::IList::set_Item(System::Int32 index, Object* value);
00091 
00092 public:
00093     OvDataPropertyDefinitionCollection();
00094 
00095     OvDataPropertyDefinitionCollection(NAMESPACE_OSGEO_FDO_COMMANDS_SCHEMA::PhysicalElementMapping* parent);
00096 
00097     /// <summary>
00098     ///    Gets the count of items in collection.
00099     /// </summary>
00100     __property System::Int32 get_Count(System::Void);
00101 
00102     /// <summary>
00103     ///    Gets an enumerator that can iterate through a collection.
00104     /// </summary>
00105     __sealed System::Collections::IEnumerator* GetEnumerator(System::Void);
00106 
00107     /// <summary>
00108     ///     Removes the index-th OvDataPropertyDefinition from this collection.
00109     /// </summary>
00110     /// <param name="index">
00111     ///     Input index of the element to remove.
00112     /// </param>
00113     System::Void RemoveAt(System::Int32 index);
00114 
00115     /// <summary>
00116     ///     Removes all elements from the collection.
00117     /// </summary>
00118     System::Void  Clear();
00119 
00120     /// <summary>
00121     ///     Adds a OvDataPropertyDefinition object into the collection.
00122     /// </summary>
00123     /// <param name="value">
00124     ///     Input the OvDataPropertyDefinition object to add.
00125     /// </param>
00126     /// <returns>
00127     ///     Returns the position into which the new element was inserted.
00128     /// </returns>
00129     System::Int32 Add(NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvDataPropertyDefinition* value);
00130 
00131     /// <summary>
00132     ///     Determines the index of a specific OvDataPropertyDefinition object.
00133     /// </summary>
00134     /// <param name="value">
00135     ///     Input the OvDataPropertyDefinition object to locate in the collection.
00136     /// </param>
00137     /// <returns>
00138     ///     The index of value if found in the collection; otherwise, -1.
00139     /// </returns>
00140     System::Int32 IndexOf(NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvDataPropertyDefinition* value);
00141 
00142     /// <summary>
00143     ///     Inserts a OvDataPropertyDefinition object into the collection at the specified position.
00144     /// </summary>
00145     /// <param name="index">
00146     ///     Input the zero-based index at which value should be inserted. 
00147     /// </param>
00148     /// <param name="value">
00149     ///     Input the OvDataPropertyDefinition object to insert.
00150     /// </param>
00151     System::Void Insert(System::Int32 index, NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvDataPropertyDefinition* value);
00152 
00153     /// <summary>
00154     ///     Removes the first occurrence of a specific OvDataPropertyDefinition object.
00155     /// </summary>
00156     /// <param name="value">
00157     ///     Input the OvDataPropertyDefinition object to remove from the collection.
00158     /// </param>
00159     System::Void Remove(NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvDataPropertyDefinition* value);
00160 
00161     /// <summary>
00162     ///     Determines whether the collection contains a specific OvDataPropertyDefinition object.
00163     /// </summary>
00164     /// <param name="value">
00165     ///     Input The OvDataPropertyDefinition object to search in the collection.
00166     /// </param>
00167     /// <returns>
00168     ///     Returns true if the value is found in the collection; otherwise, false.
00169     /// </returns>
00170     System::Boolean Contains(NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvDataPropertyDefinition* value);
00171 
00172     /// <summary>
00173     ///     Copies the elements of the collection to an array.
00174     /// </summary>
00175     /// <param name="array">
00176     ///     Output the one-dimensional Array that is the destination of the elements copied from this collection. 
00177     /// </param>
00178     /// <param name="startAt">
00179     ///     Input an integer that represents the index in array at which copying begins. 
00180     /// </param>
00181     System::Void CopyTo(NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvDataPropertyDefinition* array[],System::Int32 size);
00182 
00183     //this is a hedious workaround for a bug in VS2002. 
00184     /// <summary>
00185     ///     Gets or sets a OvDataPropertyDefinition in the collection.
00186     /// </summary>
00187     /// <param name="index">
00188     ///     Input index of the OvDataPropertyDefinition to retrieve or set (System::Int32). 
00189     /// </param>
00190     __property NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvDataPropertyDefinition* get_RealTypeItem(System::Int32 index);
00191     __property NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvDataPropertyDefinition* get_RealTypeItem(System::String* index);
00192 
00193     __property System::Void  set_RealTypeItem(System::Int32 index, NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvDataPropertyDefinition* value);
00194 
00195     __property NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvDataPropertyDefinition* get_Item(System::Int32 index);
00196 
00197     __property System::Void  set_Item(System::Int32 index, NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL::OvDataPropertyDefinition* value);
00198 
00199 protected:
00200     System::Void ReleaseUnmanagedObject();
00201 };
00202 
00203 END_NAMESPACE_OSGEO_FDO_PROVIDERS_RDBMS_OVERRIDE_MYSQL
00204 

Comments?