Click or drag to resize

QueueDateTimes Class

Class implementing the IListDateTimes storing data in a queue/circular array.
Inheritance Hierarchy
SystemObject
  DHI.Mike1D.Generic.CollectionsFifoQueueDateTime
    DHI.Mike1D.GenericQueueDateTimes

Namespace:  DHI.Mike1D.Generic
Assembly:  DHI.Mike1D.Generic (in DHI.Mike1D.Generic.dll) Version: 19.0.0.0 (11.1.1.1111)
Syntax
public class QueueDateTimes : FifoQueue<DateTime>, 
	IListDateTimes, IEnumerable<DateTime>, IEnumerable, IList<DateTime>, 
	ICollection<DateTime>, IReadOnlyList<DateTime>, IReadOnlyCollection<DateTime>

The QueueDateTimes type exposes the following members.

Constructors
  NameDescription
Public methodQueueDateTimes
Initializes a new instance of the QueueDateTimes class
Top
Properties
Methods
  NameDescription
Public methodAdd
Adds an object to the end of the FifoQueue{T}, same as Enqueue(T)
(Inherited from FifoQueueT.)
Public methodAddRange
Adds an object to the end of the FifoQueue{T}, same as Enqueue(T)
(Inherited from FifoQueueT.)
Public methodAddRotate
Adds an object to the end of the FifoQueue{T}, dequeuing the first item if queue is full (capacity is met).
(Inherited from FifoQueueT.)
Public methodClear
Removes all objects from the FifoQueue{T}.
(Inherited from FifoQueueT.)
Public methodContains (Inherited from FifoQueueT.)
Public methodCopyTo (Inherited from FifoQueueT.)
Public methodDequeue
Removes and returns the object at the beginning of the FifoQueue{T}.
(Inherited from FifoQueueT.)
Public methodEnqueue
Adds an object to the end of the FifoQueue{T}.
(Inherited from FifoQueueT.)
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodFind
Public methodGetEnumerator
Returns an enumerator that iterates through the FifoQueue{T}.
(Inherited from FifoQueueT.)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodIndex
Index in internal _q array _q of the element with index in queue, handling circular array wrapping.
(Inherited from FifoQueueT.)
Public methodIndexOf (Inherited from FifoQueueT.)
Public methodInsert (Inherited from FifoQueueT.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodPeek
Returns the object at the beginning of the FifoQueue{T} without removing it.
(Inherited from FifoQueueT.)
Public methodPushBack
Put the first element to the end of the queue
(Inherited from FifoQueueT.)
Public methodRemove (Inherited from FifoQueueT.)
Public methodRemoveAt (Inherited from FifoQueueT.)
Public methodToArray
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Fields
Extension Methods
  NameDescription
Public Extension MethodBinarySearchDateTime(DateTime)Overloaded.
Searches the entire sorted IListT for an element and returns the zero-based index of the element.

If the key is not found, a negative number is returned, which can be intepreted as the bitwise complement of the interval of indices that the key is in between, i.e.

list[interval-1] < key < list[interval]

(Defined by GenericExtensions.)
Public Extension MethodCode exampleBinarySearchDateTime(FuncDateTime, Int32)Overloaded.
Searches the entire sorted IListT for an element using the provided comparer and returns the zero-based index of the element.

This differs from the "ordinary" binary search in allowing a comparer delegate that defines whether an item is found (returning 0), whether the item in the list is before (<0) or after (>0) that knows how to compare a class with its key. Example, if the list contains classes of type T having an id number and the class is sorted on that id, then the keySelector returns the id number for that class.

Examples
If having a list of doubles, to find 4.5 in the list, use:
int index = list.BinarySearch(d => d.CompareTo(4.5))
(Defined by GenericExtensions.)
Public Extension MethodBinarySearchDateTime(DateTime, IComparerDateTime)Overloaded.
Searches the entire sorted IListT for an element using the provided comparer and returns the zero-based index of the element.

If the key is not found, a negative number is returned, which can be intepreted as the bitwise complement of the interval of indices that the key is in between, i.e.

list[interval-1] < key < list[interval]

(Defined by GenericExtensions.)
Public Extension MethodBinarySearchDateTime, TKey(FuncDateTime, TKey, TKey)Overloaded.
Searches the entire sorted IListT for an element and returns the zero-based index of the element.

If the key is not found, a negative number is returned, which can be intepreted as the bitwise complement of the interval of indices that the key is in between, i.e.

list[interval-1] < key < list[interval]

This differs from the "ordinary" binary search in allowing a keySelectorcomparer that knows how to compare a class with its key. Example, if the list contains classes of type T having an id number and the class is sorted on that id, then the keySelector returns the id number for that class.

(Defined by GenericExtensions.)
Public Extension MethodBinarySearchDateTime, TKey(FuncDateTime, TKey, TKey, IComparerTKey)Overloaded.
Searches the entire sorted IListT for an element using the provided comparer and returns the zero-based index of the element.

If the key is not found, a negative number is returned, which can be intepreted as the bitwise complement of the interval of indices that the key is in between, i.e.

list[interval-1] < key < list[interval]

This differs from the "ordinary" binary search in allowing a keySelectorcomparer that knows how to compare a class with its key. Example, if the list contains classes of type T having an id number and the class is sorted on that id, then the keySelector returns the id number for that class.

(Defined by GenericExtensions.)
Public Extension MethodFindIndexDateTime(PredicateDateTime)Overloaded.
Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the list.
(Defined by GenericExtensions.)
Public Extension MethodFindIndexDateTime(Int32, PredicateDateTime)Overloaded.
Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the ListT that extends from the specified index to the last element.
(Defined by GenericExtensions.)
Public Extension MethodSortDateTimeOverloaded.
Sorts the elements in the entire List{T} using the default comparer.

A quick sort algorithm is used. Quick sort is a un-stable sort algorithm i.e. if two elements are equal their order may not be preserved.

If the provided IList is either an array or a list, the build in sorting method is used (also quick sort).

(Defined by GenericExtensions.)
Public Extension MethodSortDateTime(IComparerDateTime)Overloaded.
Sorts the elements in the entire List{T} using the provided comparer.

A quick sort algorithm is used. Quick sort is a un-stable sort algorithm i.e. if two elements are equal their order may not be preserved.

If the provided IList is either an array or a list, the build in sorting method is used (also quick sort).

(Defined by GenericExtensions.)
Public Extension MethodSortStableDateTimeOverloaded. (Defined by GenericExtensions.)
Public Extension MethodSortStableDateTime(IComparerDateTime)Overloaded.
Sorts the elements in the entire List{T} using the provided comparer.

A merge sort algorithm is used. merge sort is a stable sort algorithm i.e. if two elements are equal their order are preserved.

(Defined by GenericExtensions.)
Public Extension MethodSortStableDateTime(ComparisonDateTime)Overloaded.
Sorts the elements in the entire List{T} using the provided comparer.

A merge sort algorithm is used. merge sort is a stable sort algorithm i.e. if two elements are equal their order are preserved.

(Defined by GenericExtensions.)
Top
See Also