Interface IReadOnlyEventQueue<TEvent, TPoint, TPointDelta>
Represents a generic read-only event queue.
public interface IReadOnlyEventQueue<TEvent, TPoint, TPointDelta> : IReadOnlyCollection<EnqueuedEvent<TEvent, TPoint, TPointDelta>>, IEnumerable<EnqueuedEvent<TEvent, TPoint, TPointDelta>>, IEnumerable
Type Parameters
TEvent
Event type.
TPoint
Queue point type.
TPointDelta
Queue point delta type.
- Inherited Members
Properties
Comparer
Queue point comparer.
IComparer<TPoint> Comparer { get; }
Property Value
- IComparer<TPoint>
CurrentPoint
Specifies the current point that this queue is in.
TPoint CurrentPoint { get; }
Property Value
- TPoint
StartPoint
Specifies the starting point of this queue.
TPoint StartPoint { get; }
Property Value
- TPoint
Methods
GetEvents(TPoint)
Returns information about all currently registered events in this queue,
from CurrentPoint to the specified endPoint
.
[Pure]
IEnumerable<EnqueuedEvent<TEvent, TPoint, TPointDelta>> GetEvents(TPoint endPoint)
Parameters
endPoint
TPointLargest event point to include in the result.
Returns
- IEnumerable<EnqueuedEvent<TEvent, TPoint, TPointDelta>>
New IEnumerable<T> instance.
GetNext()
Attempts to return information about the next event to happen.
[Pure]
EnqueuedEvent<TEvent, TPoint, TPointDelta>? GetNext()
Returns
- EnqueuedEvent<TEvent, TPoint, TPointDelta>?
EnqueuedEvent<TEvent, TPoint, TPointDelta> instance or null when this queue is empty.