OSGeo FDO Provider for WMS .NET API Reference

From OSGeo FDO WMS .NET API

.NET API Reference OSGeo FDO Provider for WMS

mgOvLayerCollection.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 
00020 #pragma once
00021 
00022 class FdoWmsOvLayerCollection;
00023 
00024 BEGIN_NAMESPACE_OSGEO_FDO_PROVIDERS_WMS_OVERRIDE
00025 public __gc class OvLayerDefinition;
00026 
00027 /// <summary> Concrete class defining a collection of FDO class definitions
00028 /// with overrides in the physical schema.</summary>
00029 [System::Reflection::DefaultMemberAttribute("RealTypeItem")]
00030 public __sealed __gc class OvLayerCollection : public NAMESPACE_OSGEO_RUNTIME::Disposable, public System::Collections::IList
00031 {
00032 private:
00033     /// <summary>
00034     ///     nested class defined to provide Enumerator.
00035     /// </summary>
00036     __gc class Enumerator : public System::Collections::IEnumerator
00037     {
00038     private:
00039         OvLayerCollection* m_pCol;
00040         System::Int32 m_nIdx;
00041 
00042     public:
00043         Enumerator(OvLayerCollection* elements) : m_pCol(elements), m_nIdx(-1) 
00044         {
00045 
00046         }
00047 
00048         __property System::Object* get_Current();
00049 
00050         System::Boolean MoveNext();
00051 
00052         System::Void Reset();
00053     };
00054 
00055 public private:
00056     OvLayerCollection(System::IntPtr unmanaged, System::Boolean autoDelete);
00057 
00058     inline FdoWmsOvLayerCollection* GetImpObj();
00059 
00060 protected:
00061     __sealed System::Void ReleaseUnmanagedObject();
00062 
00063 private:
00064     // System::Collections::ICollection interfaces
00065     System::Void System::Collections::ICollection::CopyTo(System::Array* array,System::Int32 index);
00066 
00067     __property System::Object* System::Collections::ICollection::get_SyncRoot();
00068 
00069     __property System::Boolean System::Collections::ICollection::get_IsSynchronized();
00070 
00071     //System::Collections::IList interfaces
00072     __property System::Boolean System::Collections::IList::get_IsFixedSize();
00073 
00074     __property System::Boolean System::Collections::IList::get_IsReadOnly();
00075 
00076     System::Int32 System::Collections::IList::Add(Object* value);
00077 
00078     System::Boolean System::Collections::IList::Contains(Object* value);
00079 
00080     System::Int32 System::Collections::IList::IndexOf(Object* value);
00081 
00082     System::Void System::Collections::IList::Insert(System::Int32 index, Object* value);
00083 
00084     System::Void System::Collections::IList::Remove(Object* value);
00085 
00086     __property Object* System::Collections::IList::get_Item(System::Int32 index);
00087 
00088     __property System::Void  System::Collections::IList::set_Item(System::Int32 index, Object* value);
00089 
00090 public:
00091     /// <summary>Constructs a new empty Layer Definition collection.</summary>
00092     /// <param name="parent">Input parent object</param> 
00093     OvLayerCollection(NAMESPACE_OSGEO_FDO_COMMANDS_SCHEMA::PhysicalElementMapping* parent);
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 OvLayerDefinition 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 OvLayerDefinition object into the collection.
00120     /// </summary>
00121     /// <param name="value">
00122     ///     Input the OvLayerDefinition 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_WMS_OVERRIDE::OvLayerDefinition* value);
00128 
00129     /// <summary>
00130     ///     Determines the index of a specific OvLayerDefinition object.
00131     /// </summary>
00132     /// <param name="value">
00133     ///     Input the OvLayerDefinition 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_WMS_OVERRIDE::OvLayerDefinition* value);
00139 
00140     System::Int32 IndexOf(System::String* name);
00141 
00142     /// <summary>
00143     ///     Inserts a OvLayerDefinition 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 OvLayerDefinition object to insert.
00150     /// </param>
00151     System::Void Insert(System::Int32 index, NAMESPACE_OSGEO_FDO_PROVIDERS_WMS_OVERRIDE::OvLayerDefinition* value);
00152 
00153     /// <summary>
00154     ///     Removes the first occurrence of a specific OvLayerDefinition object.
00155     /// </summary>
00156     /// <param name="value">
00157     ///     Input the OvLayerDefinition object to remove from the collection.
00158     /// </param>
00159     System::Void Remove(NAMESPACE_OSGEO_FDO_PROVIDERS_WMS_OVERRIDE::OvLayerDefinition* value);
00160 
00161     /// <summary>
00162     ///     Determines whether the collection contains a specific OvLayerDefinition object.
00163     /// </summary>
00164     /// <param name="value">
00165     ///     Input The OvLayerDefinition 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_WMS_OVERRIDE::OvLayerDefinition* value);
00171 
00172     System::Boolean Contains(System::String* name);
00173 
00174     /// <summary>
00175     ///     Copies the elements of the collection to an array.
00176     /// </summary>
00177     /// <param name="array">
00178     ///     Output the one-dimensional Array that is the destination of the elements copied from this collection. 
00179     /// </param>
00180     /// <param name="startAt">
00181     ///     Input an integer that represents the index in array at which copying begins. 
00182     /// </param>
00183     System::Void CopyTo(NAMESPACE_OSGEO_FDO_PROVIDERS_WMS_OVERRIDE::OvLayerDefinition* array[],System::Int32 index);
00184 
00185     //this is a hedious workaround for a bug in VS2002. 
00186     /// <summary>
00187     ///     Gets or sets a OvLayerDefinition in the collection.
00188     /// </summary>
00189     /// <param name="index">
00190     ///     Input index of the OvLayerDefinition to retrieve or set (System::Int32). 
00191     /// </param>
00192     __property NAMESPACE_OSGEO_FDO_PROVIDERS_WMS_OVERRIDE::OvLayerDefinition* get_RealTypeItem(System::Int32 index);
00193 
00194     __property System::Void  set_RealTypeItem(System::Int32 index, NAMESPACE_OSGEO_FDO_PROVIDERS_WMS_OVERRIDE::OvLayerDefinition* value);
00195 
00196     __property NAMESPACE_OSGEO_FDO_PROVIDERS_WMS_OVERRIDE::OvLayerDefinition* get_Item(System::Int32 index);
00197 
00198     __property System::Void  set_Item(System::Int32 index, NAMESPACE_OSGEO_FDO_PROVIDERS_WMS_OVERRIDE::OvLayerDefinition* value);
00199 };
00200 
00201 END_NAMESPACE_OSGEO_FDO_PROVIDERS_WMS_OVERRIDE

Comments?