Click or drag to resize

TimeIntervalCollection Class

A collection of time intervals. The intervals are sorted by their start date and no two intervals in the list overlap each other.
Inheritance Hierarchy
SystemObject
  AGI.Foundation.TimeTimeIntervalCollection

Namespace:  AGI.Foundation.Time
Assembly:  AGI.Foundation.Core (in AGI.Foundation.Core.dll) Version: 24.3.420.0 (24.3.420.0)
Syntax
public sealed class TimeIntervalCollection : IList<TimeInterval>, 
	ICollection<TimeInterval>, IEnumerable<TimeInterval>, IEnumerable, 
	IList, ICollection, IEquatable<TimeIntervalCollection>, IEquatableEpsilon<TimeIntervalCollection>, 
	IFreezable

The TimeIntervalCollection type exposes the following members.

Constructors
  NameDescription
Public methodTimeIntervalCollection
Initializes a new, empty interval collection.
Public methodTimeIntervalCollection(TimeInterval)
Initializes a new instance from a single interval.
Public methodTimeIntervalCollection(TimeIntervalCollection)
Initializes a new interval collection by copying an existing one.
Top
Properties
  NameDescription
Public propertyCount
Gets the number of intervals in this interval collection.
Public propertyStatic memberEmpty
Gets an empty, read-only TimeIntervalCollection.
Public propertyStatic memberInfinite
Gets an unbounded, infinite, read-only TimeIntervalCollection.
Public propertyIsEmpty
Gets a value indicating whether this interval collection is empty, where emptiness is defined as the count of intervals being equal to zero. To determine if the amount of time contained in this interval collection is zero, convert to a duration using ToDuration and check for equality with Zero.
Public propertyIsFrozen
Gets a value indicating whether this object is frozen. A frozen object cannot be modified and an ObjectFrozenException will be thrown if an attempt is made to do so.
Public propertyIsInfinite
Gets a value indicating whether the interval collection is infinite. An infinite interval collection contains all possible times.
Public propertyItem
Gets the interval at the specified index.
Public propertyStart
Gets the start date of the first interval in the collection.
Public propertyStop
Gets the stop date of the last interval in the collection
Top
Methods
  NameDescription
Public methodAdd(TimeInterval)
Adds an interval to the interval collection.
Public methodAdd(TimeIntervalCollection)
Adds another interval collection to this interval collection. This interval collection will contain all intervals that were previously in either collection.
Public methodAddDataT
Public methodClear
Removes all intervals from the interval collection.
Public methodComplement
Computes the complement of this time interval collection.
Public methodContains(JulianDate)
Determines if the collection contains a specified date.
Public methodContains(TimeInterval)
Determines if this collection contains all of a specified interval.
Public methodCopyTo
Copies the intervals in this collection to an array.
Public methodEquals(Object)
Indicates whether another object is exactly equal to this instance.
(Overrides ObjectEquals(Object).)
Public methodEquals(TimeIntervalCollection)
Indicates whether another instance of this type is exactly equal to this instance.
Public methodEqualsEpsilon
Determines if this TimeIntervalCollection is equal to another by comparing each of the TimeInterval elements in the two collections with EqualsEpsilon(TimeInterval, Double).
Public methodFindIntervalContainingDate
Finds the TimeInterval in this collection that contains a specified date.
Public methodFreeze
Freezes this object. Further attempts to modify this object will result in an ObjectFrozenException.
Public methodGetEnumerator
Gets an enumerator for this interval list.
Public methodGetHashCode
Returns a hash code for this instance, which is suitable for use in hashing algorithms and data structures like a hash table.
(Overrides ObjectGetHashCode.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodIndexOf(JulianDate)
Finds the index of the TimeInterval in this collection that contains the specified date.
Public methodIndexOf(TimeInterval)
Finds the index of a given TimeInterval in the collection. This method requires that the given interval exactly match an interval in the collection. Intervals with different time standards or even slightly different values due to floating point noise will be considered to be different.
Public methodIntersect(TimeInterval)
Computes the intersection of this interval collection with an interval.
Public methodIntersect(TimeIntervalCollection)
Computes the intersection of this interval collection with another.
Public methodRemove(TimeInterval)
Removes the specified interval from this interval list, creating a hole over the specified interval.
Public methodRemove(TimeIntervalCollection)
Removes the specified intervals from this interval list, creating a hole over the specified intervals.
Public methodRemoveAt
Removes the interval at a specified index in the collection.
Public methodRemoveLeavingEndpoints(TimeInterval)
Removes the specified interval from this interval list, creating a hole over the specified interval. The end points of the removed interval are NOT removed.
Public methodRemoveLeavingEndpoints(TimeIntervalCollection)
Removes the specified intervals from this interval list, creating a hole over the specified intervals. The end points of the removed intervals are NOT removed.
Public methodToDuration
Returns a Duration representing the span of time represented by the sum of the individual time intervals in the collection.
Public methodToString
Returns a string that represents the current object.
(Overrides ObjectToString.)
Public methodToTimeStandard
Converts all times in this time interval collection to be the specified time standard.
Top
Operators
  NameDescription
Public operatorStatic memberEquality
Returns if the two instances are exactly equal.
Public operatorStatic memberInequality
Returns if the two instances are not exactly equal.
Top
See Also