#region License /* FNA - XNA4 Reimplementation for Desktop Platforms * Copyright 2009-2016 Ethan Lee and the MonoGame Team * * Released under the Microsoft Public License. * See LICENSE for details. */ #endregion #region Using Statements using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; #endregion namespace Microsoft.Xna.Framework.Graphics { public sealed class ModelMeshPartCollection : ReadOnlyCollection { #region Public Constructor public ModelMeshPartCollection(IList list) : base(list) { } #endregion #region Enumerator public new Enumerator GetEnumerator() { return new Enumerator(this); } public struct Enumerator : IEnumerator { private readonly ModelMeshPartCollection collection; private int position; internal Enumerator(ModelMeshPartCollection collection) { this.collection = collection; position = -1; } /// /// Gets the current element in the ModelMeshCollection. /// public ModelMeshPart Current { get { return collection[position]; } } /// /// Advances the enumerator to the next element of the ModelMeshCollection. /// public bool MoveNext() { position += 1; return (position < collection.Count); } /// /// Immediately releases the unmanaged resources used by this object. /// public void Dispose() { } object IEnumerator.Current { get { return collection[position]; } } void IEnumerator.Reset() { position = -1; } } #endregion } }