Interface IReorderableEventQueue<TEvent, TPoint, TPointDelta>
Represents a generic event queue that allows to modify registered events.
public interface IReorderableEventQueue<TEvent, TPoint, TPointDelta> : IEventQueue<TEvent, TPoint, TPointDelta>, IReadOnlyReorderableEventQueue<TEvent, TPoint, TPointDelta>, IReadOnlyEventQueue<TEvent, TPoint, TPointDelta>, IReadOnlyCollection<EnqueuedEvent<TEvent, TPoint, TPointDelta>>, IEnumerable<EnqueuedEvent<TEvent, TPoint, TPointDelta>>, IEnumerable
Type Parameters
TEventEvent type.
TPointQueue point type.
TPointDeltaQueue point delta type.
- Inherited Members
Methods
AdvanceDequeuePoint(TEvent, TPointDelta)
Modifies the existing event by moving the DequeuePoint
backward by the specified delta.
EnqueuedEvent<TEvent, TPoint, TPointDelta>? AdvanceDequeuePoint(TEvent @event, TPointDelta delta)
Parameters
eventTEventEvent to modify.
deltaTPointDeltaPoint delta to move the current DequeuePoint backward by.
Returns
- EnqueuedEvent<TEvent, TPoint, TPointDelta>?
EnqueuedEvent<TEvent, TPoint, TPointDelta> instance associated with the modified
eventor null when event does not exist.
DecreaseDelta(TEvent, TPointDelta)
Modifies the existing event by subtracting a value from
Delta.
EnqueuedEvent<TEvent, TPoint, TPointDelta>? DecreaseDelta(TEvent @event, TPointDelta delta)
Parameters
eventTEventEvent to modify.
deltaTPointDeltaPoint delta to subtract.
Returns
- EnqueuedEvent<TEvent, TPoint, TPointDelta>?
EnqueuedEvent<TEvent, TPoint, TPointDelta> instance associated with the modified
eventor null when event does not exist.
DecreaseRepetitions(TEvent, int)
Modifies the existing event by subtracting Repetitions.
EnqueuedEvent<TEvent, TPoint, TPointDelta>? DecreaseRepetitions(TEvent @event, int count)
Parameters
eventTEventEvent to modify.
countintNumber of repetitions to subtract.
Returns
- EnqueuedEvent<TEvent, TPoint, TPointDelta>?
EnqueuedEvent<TEvent, TPoint, TPointDelta> instance associated with the modified
eventor null when event does not exist.
Exceptions
- ArgumentOutOfRangeException
When new number of repetitions is less than 1.
DelayDequeuePoint(TEvent, TPointDelta)
Modifies the existing event by moving the DequeuePoint
forward by the specified delta.
EnqueuedEvent<TEvent, TPoint, TPointDelta>? DelayDequeuePoint(TEvent @event, TPointDelta delta)
Parameters
eventTEventEvent to modify.
deltaTPointDeltaPoint delta to move the current DequeuePoint forward by.
Returns
- EnqueuedEvent<TEvent, TPoint, TPointDelta>?
EnqueuedEvent<TEvent, TPoint, TPointDelta> instance associated with the modified
eventor null when event does not exist.
IncreaseDelta(TEvent, TPointDelta)
Modifies the existing event by adding a value to Delta.
EnqueuedEvent<TEvent, TPoint, TPointDelta>? IncreaseDelta(TEvent @event, TPointDelta delta)
Parameters
eventTEventEvent to modify.
deltaTPointDeltaPoint delta to add.
Returns
- EnqueuedEvent<TEvent, TPoint, TPointDelta>?
EnqueuedEvent<TEvent, TPoint, TPointDelta> instance associated with the modified
eventor null when event does not exist.
IncreaseRepetitions(TEvent, int)
Modifies the existing event by adding Repetitions.
EnqueuedEvent<TEvent, TPoint, TPointDelta>? IncreaseRepetitions(TEvent @event, int count)
Parameters
eventTEventEvent to modify.
countintNumber of repetitions to add.
Returns
- EnqueuedEvent<TEvent, TPoint, TPointDelta>?
EnqueuedEvent<TEvent, TPoint, TPointDelta> instance associated with the modified
eventor null when event does not exist.
Exceptions
- ArgumentOutOfRangeException
When new number of repetitions is less than 1.
MakeInfinite(TEvent)
Modifies the existing event by making it repeat infinitely.
EnqueuedEvent<TEvent, TPoint, TPointDelta>? MakeInfinite(TEvent @event)
Parameters
eventTEventEvent to modify.
Returns
- EnqueuedEvent<TEvent, TPoint, TPointDelta>?
EnqueuedEvent<TEvent, TPoint, TPointDelta> instance associated with the modified
eventor null when event does not exist.
Remove(TEvent)
Attempts to remove the specified event.
EnqueuedEvent<TEvent, TPoint, TPointDelta>? Remove(TEvent @event)
Parameters
eventTEventEvent to remove.
Returns
- EnqueuedEvent<TEvent, TPoint, TPointDelta>?
Removed EnqueuedEvent<TEvent, TPoint, TPointDelta> instance or null when
eventdoes not exist.
SetDelta(TEvent, TPointDelta)
Modifies the existing event by changing the Delta.
EnqueuedEvent<TEvent, TPoint, TPointDelta>? SetDelta(TEvent @event, TPointDelta delta)
Parameters
eventTEventEvent to modify.
deltaTPointDeltaPoint delta used for moving DequeuePoint forward on each repetition of this event.
Returns
- EnqueuedEvent<TEvent, TPoint, TPointDelta>?
EnqueuedEvent<TEvent, TPoint, TPointDelta> instance associated with the modified
eventor null when event does not exist.
SetDequeuePoint(TEvent, TPoint)
Modifies the existing event by changing the DequeuePoint.
EnqueuedEvent<TEvent, TPoint, TPointDelta>? SetDequeuePoint(TEvent @event, TPoint dequeuePoint)
Parameters
eventTEventEvent to modify.
dequeuePointTPointNext queue point at which this event should be dequeued.
Returns
- EnqueuedEvent<TEvent, TPoint, TPointDelta>?
EnqueuedEvent<TEvent, TPoint, TPointDelta> instance associated with the modified
eventor null when event does not exist.
SetRepetitions(TEvent, int)
Modifies the existing event by changing the Repetitions.
EnqueuedEvent<TEvent, TPoint, TPointDelta>? SetRepetitions(TEvent @event, int repetitions)
Parameters
eventTEventEvent to modify.
repetitionsintNumber of repetitions.
Returns
- EnqueuedEvent<TEvent, TPoint, TPointDelta>?
EnqueuedEvent<TEvent, TPoint, TPointDelta> instance associated with the modified
eventor null when event does not exist.
Exceptions
- ArgumentOutOfRangeException
When
repetitionsis less than 1.