using System; using System.Collections.Generic; namespace XGame.Framework.Time { public class ClockContainer : IClockContainer, IDisposable { private readonly List _clockList = new List(); public IClock AddClock(long timestamp) { Clock clock = new Clock(timestamp); _clockList.Add(clock); return clock; } public void Dispose() { _clockList.Clear(); } public bool RemoveClock(IClock clock) { Clock node = (Clock)clock; if (_clockList.Contains(node)) { _clockList.Remove(node); return true; } return false; } public void Update(int millisecond) { for (int i = 0; i < _clockList.Count; i++) { _clockList[i].Update(millisecond); } } } }