/// <summary> /// Creates a new iterator instance. /// </summary> /// <param name="sequence">An existing sequence instance.</param> /// <exception cref="System.ArgumentNullException">if sequence is null.</exception> public QuotesSingleIterator(QuotesSingleSequence sequence) { if (sequence == null) { throw new ArgumentNullException(nameof(sequence), "Sequence parameter can not be null."); } this.Sequence = sequence; if (sequence.StartTime <= sequence.EndTime) { this.from = sequence.StartTime.Normalize(); this.to = sequence.EndTime.Normalize(); this.direction = TimeDirection.Forward; } else { this.from = sequence.EndTime.Normalize(); this.to = sequence.StartTime.Normalize(); this.direction = TimeDirection.Backward; } this.fromEx = this.from.RoundDownMilliseconds(); this.toEx = this.to.RoundUpMilliseconds(); if (this.direction == TimeDirection.Forward) { this.Current = this.ConstructForward(); } else { this.Current = this.ConstructBackward(); } this.Continue = this.Current != null; }
public QuotesSingleEnumerator(QuotesSingleSequence sequence) { this.sequence = sequence; }