Queries the closest event (an element's span starting or stopping) later than the given time
Queries the closest event (an element's span starting or stopping) later than the given time
the query time
a time, greater than the query time, at which the next event occurs, or None
if
there are no events after the query time
Queries the closest event (an element's span starting or stopping) earlier than the given time
Queries the closest event (an element's span starting or stopping) earlier than the given time
the query time
a time, smaller than the query time, at which the previous event occurs, or None
if
there are no events before the query time
Queries all elements which produce an event (starting or stopping) at a given time.
Queries all elements which produce an event (starting or stopping) at a given time.
the time instant for which to gather the events
a tuple of two iterators. the first iterator (_1
) contains the events which
start at the query time, the second iterator (_2
) contains the event which
stop at the query time
Finds the first occurring event, if there is any.
Finds the first occurring event, if there is any. Ignores objects with Span.All
.
Queries all elements intersecting a given time span.
Queries all elements intersecting a given time span.
That is, returns an iterator of all elements whose span contains or partly overlaps the query span.
(span start < query.stop && span.stop > query.start)
This methods makes no guarantees about the ordering of the returned iterator.
the the span to search within (this may be a half-bounded interval or even Span.All
)
a (possibly empty) iterator of the intersecting elements
Queries all elements intersecting a given point in time.
Queries all elements intersecting a given point in time.
That is, returns an iterator of all elements whose span contains the time point
(span start <= time && span.stop > time)
This methods makes no guarantees about the ordering of the returned iterator.
the point in time to search at
a (possibly empty) iterator of the intersecting elements
Returns true
if not a single element is contained in the collection.
Finds the last occurring event, if there is any.
Finds the last occurring event, if there is any. Ignores objects with Span.All
.
Returns true
if at least one element is contained in the collection.
Performs a range query according to separate intervals for the allowed start and stop positions of the element spans.
Performs a range query according to separate intervals for the allowed start and stop positions
of the element spans. That is, returns an iterator of all elements whose span satisfies the
constraints given for start and stop positions
(start.contains( elem.span.start ) && stop.contains( elem.span.stop ))
Both for the start and stop constraint, half-bounded or unbounded (Span.All
) intervals can be used.
Examples
- to find all elements which start between 10 (inclusive) and 20 (exclusive), use start = Span( 10, 20 ), stop = Span.All
.
- to find all elements which start before (<) 10 and stop from (>=) 20, use start = Span.until( 10 ), stop = Span.from( 20 )
.
This methods makes no guarantees about the ordering of the returned iterator.
the constraint for the start position of the spans of the elements filtered.
the constraint for the stop position of the spans of the elements filtered.
a (possibly empty) iterator of the intersecting elements