Show More
Commit Description:
Various UI improvements.
Commit Description:
Various UI improvements.
File last commit:
Show/Diff file:
Action:
FNA/src/Graphics/ModelMeshPartCollection.cs
90 lines | 1.7 KiB | text/x-csharp | CSharpLexer
#region License
/* FNA - XNA4 Reimplementation for Desktop Platforms
* Copyright 2009-2020 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<ModelMeshPart>
{
#region Internal Constructor
internal ModelMeshPartCollection(IList<ModelMeshPart> list) : base(list)
{
}
#endregion
#region Enumerator
public new Enumerator GetEnumerator()
{
return new Enumerator(this);
}
public struct Enumerator : IEnumerator<ModelMeshPart>
{
private readonly ModelMeshPartCollection collection;
private int position;
internal Enumerator(ModelMeshPartCollection collection)
{
this.collection = collection;
position = -1;
}
/// <summary>
/// Gets the current element in the ModelMeshCollection.
/// </summary>
public ModelMeshPart Current
{
get
{
return collection[position];
}
}
/// <summary>
/// Advances the enumerator to the next element of the ModelMeshCollection.
/// </summary>
public bool MoveNext()
{
position += 1;
return (position < collection.Count);
}
/// <summary>
/// Immediately releases the unmanaged resources used by this object.
/// </summary>
public void Dispose()
{
}
object IEnumerator.Current
{
get
{
return collection[position];
}
}
void IEnumerator.Reset()
{
position = -1;
}
}
#endregion
}
}