public IEnumerator <KeyValuePair <float, V> > GetEnumerator() { PeriodicPriorityQueue <V> c = new PeriodicPriorityQueue <V>(this); while (!c.IsEmpty) { yield return(c.Dequeue()); } }
public PeriodicPriorityQueue(PeriodicPriorityQueue <V> copy) { foreach (var v in copy.queue) { queue.Enqueue(v.Time, new PeriodicPriorityQueue <V> .Key { Period = v.Period, Repeating = v.Repeating, Time = v.Time, Value = v.Value }); } }