#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; #endregion namespace Microsoft.Xna.Framework.Graphics { public sealed class EffectPassCollection : IEnumerable, IEnumerable { #region Public Properties public int Count { get { return elements.Count; } } public EffectPass this[int index] { get { return elements[index]; } } public EffectPass this[string name] { get { foreach (EffectPass elem in elements) { if (name.Equals(elem.Name)) { return elem; } } return null; // FIXME: ArrayIndexOutOfBounds? -flibit } } #endregion #region Private Variables private List elements; #endregion #region Internal Constructor internal EffectPassCollection(List value) { elements = value; } #endregion #region Public Methods public List.Enumerator GetEnumerator() { return elements.GetEnumerator(); } #endregion #region IEnumerator Methods IEnumerator System.Collections.IEnumerable.GetEnumerator() { return elements.GetEnumerator(); } IEnumerator System.Collections.Generic.IEnumerable.GetEnumerator() { return elements.GetEnumerator(); } #endregion } }