duheng
2025-03-18 7ee0220b5f5626deef516b6e5c417bfa201e5a88
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
using System.Collections;
using System.Diagnostics;
 
namespace IStation.Epanet.Network.Structures
{
 
    ///<summary>Temporal pattern.</summary>
    [DebuggerDisplay("{Name}:{_factors}")]
    public class Pattern : Element, IEnumerable<double>
    {
        ///<summary>Pattern factors list.</summary>
        private readonly List<double> _factors = new List<double>();
 
        public Pattern(string name) : base(name) { }
 
        #region Overrides of Element
 
        public override ElementType ElementType => ElementType.PATTERN;
 
        #endregion
 
        // public IList<double> Factors => _factors;
 
        #region partial implementation of IList<double>
 
        public void Add(double factor) => _factors.Add(factor);
 
        public int Count => _factors.Count;
 
        public double this[int index] => _factors[index];
 
        public IEnumerator<double> GetEnumerator() => _factors.GetEnumerator();
        IEnumerator IEnumerable.GetEnumerator() => _factors.GetEnumerator();
 
        #endregion
    }
 
}