new TimeIntervalCollection
A non-overlapping collection of TimeIntervals sorted by start date.
See:
Source:
Methods
-
addInterval
-
Adds an interval to the collection, merging intervals that contain the same data and splitting intervals of different data as needed in order to maintain a non-overlapping collection. The data in the new interval takes precedence over any existing intervals in the collection.
Parameters:
Name Type Argument Description intervalTimeInterval The interval to add. equalsCallbackFunction <optional>
An optional function which takes the data from two TimeIntervals and returns true if they are equal, false otherwise. If this function is not provided, the Javascript equality operator is used. Throws:
DeveloperError : interval is required. -
clear
-
Clears the collection.
-
contains
-
Returns true if the specified date is contained in the interval collection.
Parameters:
Name Type Description dateJulianDate The date to search for. Throws:
DeveloperError : date is required.Returns:
True if the specified date is contained in the interval collection, undefined otherwise. -
findDataForIntervalContainingDate
-
Returns the data for the interval which contains the specified date.
Parameters:
Name Type Description dateJulianDate The date to search for. Throws:
DeveloperError : date is required.Returns:
The data for the interval containing the specified date, or undefined if no such interval exists. -
findInterval
-
Returns the first interval in the collection that matches the specified parameters. All parameters are optional and undefined parameters are treated as a don't care condition.
Parameters:
Name Type Argument Description startJulianDate <optional>
The start of the interval. stopJulianDate <optional>
The end of the interval. isStartIncludedJulianDate <optional>
True if the start date is included. isStopIncludedJulianDate <optional>
True if the stop date is included. Returns:
The first interval in the collection that matches the specified parameters. -
findIntervalContainingDate
-
Returns the interval which contains the specified date.
Parameters:
Name Type Description dateJulianDate The date to search for. Throws:
DeveloperError : date is required.Returns:
The interval containing the specified date, undefined if no such interval exists. -
get
-
Gets the interval at the specified index.
Parameters:
Name Type Description indexNumber The index of the interval to retrieve. Throws:
DeveloperError : index must be a number.Returns:
TimeInterval The TimeInterval at the specified index, or undefined if no such index exists. -
getLength
-
Gets the number of intervals in the collection.
Returns:
Number The number of intervals in the collection. -
getStart
-
Gets the start date of the collection.
Returns:
JulianDate The start date of the collection or undefined if the collection is empty. -
getStop
-
Gets the stop date of the collection.
Returns:
JulianDate The stop date of the collection or undefined if the collection is empty. -
indexOf
-
Returns the index of the interval in the collection that contains the specified date.
Parameters:
Name Type Description dateJulianDate The date to search for. Throws:
DeveloperError : date is required.Returns:
The index of the interval which contains the specified date, if no such interval exists, it returns a negative number which is the bitwise complement of the index of the next interval that starts after the date, or if no interval starts after the specified date, the bitwise complement of the length of the collection. -
intersect
-
Creates a new TimeIntervalCollection which is the intersection of this collection and the provided collection.
Parameters:
Name Type Argument Description timeIntervalCollectionTimeIntervalCollection The collection to intersect with. equalsCallbackFunction <optional>
An optional function which takes the data from two TimeIntervals and returns true if they are equal, false otherwise. If this function is not provided, the Javascript equality operator is used. mergeCallbackFunction <optional>
An optional function which takes the data from two TimeIntervals and returns a merged version of the data. If this parameter is omitted, the interval data from thiscollection will be used.Throws:
DeveloperError : timeIntervalCollection is required.Returns:
A new TimeIntervalCollection which is the intersection of this collection and the provided collection. -
intersectInterval
-
Creates a new TimeIntervalCollection which is the intersection of this collection and the provided interval.
Parameters:
Name Type Argument Description intervalTimeInterval The interval to intersect with. equalsCallbackFunction <optional>
An optional function which takes the data from two TimeIntervals and returns true if they are equal, false otherwise. If this function is not provided, the equality operator will be used. mergeCallbackFunction <optional>
An optional function which takes the data from two TimeIntervals and returns a merged version of the data. If this parameter is omitted, the interval data from thiscollection will be used.Throws:
DeveloperError : timeIntervalCollection is required.Returns:
A new TimeIntervalCollection which is the intersection of this collection and the provided collection. -
isEmpty
-
Returns true if the collection is empty, false otherwise.
Returns:
true if the collection is empty, false otherwise. -
removeInterval
-
Removes the specified interval from this interval collection, creating a hole over the specified interval. The Data property of the input interval is ignored.
Parameters:
Name Type Description intervalTimeInterval The interval to remove. Throws:
DeveloperError : interval is required.Returns:
true if the interval was removed, false if no part of the interval was in the collection.
