Click or drag to resize

Reaches Class

Class implementing a list of IReach's Required for generic list COM interop
Inheritance Hierarchy
System.Object
  System.Collections.Generic.List<IReach>
    DHI.Mike1D.NetworkDataAccess.Reaches

Namespace:  DHI.Mike1D.NetworkDataAccess
Assembly:  DHI.Mike1D.NetworkDataAccess (in DHI.Mike1D.NetworkDataAccess.dll) Version: 19.0.0.0 (11.1.1.1111)
Syntax
public class Reaches : List<IReach>, 
	IReaches, IList<IReach>, ICollection<IReach>, 
	IEnumerable<IReach>, IEnumerable

The Reaches type exposes the following members.

Constructors
  NameDescription
Public methodReaches()
Initializes a new instance of the List class that is empty and has the default initial capacity.
Public methodReaches(Int32)
Initializes a new instance of the List class that is empty and has the specified initial capacity.
Public methodReaches(IEnumerable<IReach>)
Initializes a new instance of the List class that contains elements copied from the specified collection and has sufficient capacity to accommodate the number of elements copied.
Top
Properties
  NameDescription
Public propertyCapacity
Gets or sets the total number of elements the internal data structure can hold without resizing.
(Inherited from List<IReach>.)
Public propertyCount (Inherited from List<IReach>.)
Public propertyItem
Gets or sets the element at the specified index.
(Inherited from List<IReach>.)
Top
Methods
  NameDescription
Public methodAdd (Inherited from List<IReach>.)
Public methodAddRange (Inherited from List<IReach>.)
Public methodAsReadOnly (Inherited from List<IReach>.)
Public methodBinarySearch(T)
Searches the entire sorted List<T> for an element using the default comparer and returns the zero-based index of the element.
(Inherited from List<IReach>.)
Public methodBinarySearch(T, IComparer<T>)
Searches the entire sorted List<T> for an element using the specified comparer and returns the zero-based index of the element.
(Inherited from List<IReach>.)
Public methodBinarySearch(Int32, Int32, T, IComparer<T>)
Searches a range of elements in the sorted List<T> for an element using the specified comparer and returns the zero-based index of the element.
(Inherited from List<IReach>.)
Public methodClear (Inherited from List<IReach>.)
Public methodContains (Inherited from List<IReach>.)
Public methodConvertAll<TOutput> (Inherited from List<IReach>.)
Public methodCopyTo(T[]) (Inherited from List<IReach>.)
Public methodCopyTo(T[], Int32) (Inherited from List<IReach>.)
Public methodCopyTo(Int32,T[], Int32, Int32)
Copies a range of elements from the List<T> to a compatible one-dimensional array, starting at the specified index of the target array.
(Inherited from List<IReach>.)
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Public methodExists (Inherited from List<IReach>.)
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
Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the entire List<T>.
(Inherited from List<IReach>.)
Public methodFindAll
Retrieves all the elements that match the conditions defined by the specified predicate.
(Inherited from List<IReach>.)
Public methodFindIndex(Predicate<T>)
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 entire List<T>.
(Inherited from List<IReach>.)
Public methodFindIndex(Int32, Predicate<T>)
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<T> that extends from the specified index to the last element.
(Inherited from List<IReach>.)
Public methodFindIndex(Int32, Int32, Predicate<T>)
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<T> that starts at the specified index and contains the specified number of elements.
(Inherited from List<IReach>.)
Public methodFindLast
Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire List<T>.
(Inherited from List<IReach>.)
Public methodFindLastIndex(Predicate<T>)
Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire List<T>.
(Inherited from List<IReach>.)
Public methodFindLastIndex(Int32, Predicate<T>)
Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the List<T> that extends from the first element to the specified index.
(Inherited from List<IReach>.)
Public methodFindLastIndex(Int32, Int32, Predicate<T>)
Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the List<T> that contains the specified number of elements and ends at the specified index.
(Inherited from List<IReach>.)
Public methodForEach (Inherited from List<IReach>.)
Public methodGetEnumerator (Inherited from List<IReach>.)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetRange (Inherited from List<IReach>.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodIndexOf(T) (Inherited from List<IReach>.)
Public methodIndexOf(T, Int32)
Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the List<T> that extends from the specified index to the last element.
(Inherited from List<IReach>.)
Public methodIndexOf(T, Int32, Int32)
Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the List<T> that starts at the specified index and contains the specified number of elements.
(Inherited from List<IReach>.)
Public methodInsert (Inherited from List<IReach>.)
Public methodInsertRange (Inherited from List<IReach>.)
Public methodLastIndexOf(T) (Inherited from List<IReach>.)
Public methodLastIndexOf(T, Int32)
Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the List<T> that extends from the first element to the specified index.
(Inherited from List<IReach>.)
Public methodLastIndexOf(T, Int32, Int32)
Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the List<T> that contains the specified number of elements and ends at the specified index.
(Inherited from List<IReach>.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodRemove (Inherited from List<IReach>.)
Public methodRemoveAll
Removes all the elements that match the conditions defined by the specified predicate.
(Inherited from List<IReach>.)
Public methodRemoveAt (Inherited from List<IReach>.)
Public methodRemoveRange (Inherited from List<IReach>.)
Public methodReverse() (Inherited from List<IReach>.)
Public methodReverse(Int32, Int32)
Reverses the order of the elements in the specified range.
(Inherited from List<IReach>.)
Public methodSort() (Inherited from List<IReach>.)
Public methodSort(IComparer<T>) (Inherited from List<IReach>.)
Public methodSort(Comparison<T>) (Inherited from List<IReach>.)
Public methodSort(Int32, Int32, IComparer<T>) (Inherited from List<IReach>.)
Public methodToArray (Inherited from List<IReach>.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodTrimExcess (Inherited from List<IReach>.)
Public methodTrueForAll (Inherited from List<IReach>.)
Top
Extension Methods
  NameDescription
Public Extension MethodBinarySearch(ILocation)Overloaded.
Find the reach that includes the given location. Assuming the reaches are sorted.

Location comparisons are case insensitive.

(Defined by NetworkExtensions.)
Public Extension MethodBinarySearch(ILocation, Double)Overloaded.
Find the reach that includes the given location. Assuming the reaches are sorted.

Location comparisons are case insensitive, and chainage comparisons uses the tolerance, i.e., the location can be tolerance outside the span and still be accepted. tolerance may be negative (it location has to be somewhat inside span).

(Defined by NetworkExtensions.)
Public Extension MethodBinarySearch<IReach>(IReach)Overloaded.
Searches the entire sorted IList<T> 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 exampleBinarySearch<IReach>(Func<IReach, Int32>)Overloaded.
Searches the entire sorted IList<T> 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 MethodBinarySearch<IReach>(IReach, IComparer<IReach>)Overloaded.
Searches the entire sorted IList<T> 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 MethodBinarySearch<IReach, TKey>(Func<IReach, TKey>, TKey)Overloaded.
Searches the entire sorted IList<T> 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 MethodBinarySearch<IReach, TKey>(Func<IReach, TKey>, TKey, IComparer<TKey>)Overloaded.
Searches the entire sorted IList<T> 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 MethodFindIndex<IReach>(Predicate<IReach>)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 MethodFindIndex<IReach>(Int32, Predicate<IReach>)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<T> that extends from the specified index to the last element.
(Defined by GenericExtensions.)
Public Extension MethodSort()Overloaded.
Sorts a list of reaches, first based on their ID, secondly on their start chainage value
(Defined by NetworkExtensions.)
Public Extension MethodSort<IReach>()Overloaded.
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 MethodSort<IReach>(IComparer<IReach>)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 MethodSortStable<IReach>()Overloaded. (Defined by GenericExtensions.)
Public Extension MethodSortStable<IReach>(IComparer<IReach>)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 MethodSortStable<IReach>(Comparison<IReach>)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