From 15d93de5d531ec8f6867dd06d731c7772cb82246 Mon Sep 17 00:00:00 2001 From: JoelCourtney Date: Thu, 5 Sep 2024 17:23:11 -0700 Subject: [PATCH] Add ParallelOps.highlightAll() --- .../nasa/ammos/aerie/procedural/timeline/ops/ParallelOps.kt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/procedural/timeline/src/main/kotlin/gov/nasa/ammos/aerie/procedural/timeline/ops/ParallelOps.kt b/procedural/timeline/src/main/kotlin/gov/nasa/ammos/aerie/procedural/timeline/ops/ParallelOps.kt index 4212ea78bf..2d7650e6a5 100644 --- a/procedural/timeline/src/main/kotlin/gov/nasa/ammos/aerie/procedural/timeline/ops/ParallelOps.kt +++ b/procedural/timeline/src/main/kotlin/gov/nasa/ammos/aerie/procedural/timeline/ops/ParallelOps.kt @@ -3,6 +3,7 @@ package gov.nasa.ammos.aerie.procedural.timeline.ops import gov.nasa.jpl.aerie.merlin.protocol.types.Duration import gov.nasa.ammos.aerie.procedural.timeline.* import gov.nasa.ammos.aerie.procedural.timeline.collections.Universal +import gov.nasa.ammos.aerie.procedural.timeline.collections.Windows import gov.nasa.ammos.aerie.procedural.timeline.collections.profiles.Numbers import gov.nasa.ammos.aerie.procedural.timeline.collections.profiles.Booleans import gov.nasa.ammos.aerie.procedural.timeline.ops.coalesce.CoalesceNoOp @@ -22,6 +23,9 @@ interface ParallelOps, THIS: ParallelOps>: GeneralOp override fun isAlwaysSorted() = false + /** [(DOC)][highlightAll] Highlights all objects in the timeline in a new [Windows] timeline. */ + fun highlightAll() = unsafeMap(::Windows, BoundsTransformer.IDENTITY, true) { it.interval } + /** [(DOC)][merge] Combines two timelines together by overlaying them. Does not perform any transformation. */ infix fun merge(other: GeneralOps) = unsafeOperate { opts -> collect(opts) + other.collect(opts)