- Main Page
- Classes
- Files

# mgOvPropertyDefinitionCollection.h

Go to the documentation of this file.

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

Please send us your comment about this page