@fideus-labs/fidnii 0.5.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,7 @@ import type { Multiscales, Omero } from "@fideus-labs/ngff-zarr";
2
2
  import type { Niivue } from "@niivue/niivue";
3
3
  import { NVImage } from "@niivue/niivue";
4
4
  import { type OMEZarrNVImageEventListener, type OMEZarrNVImageEventListenerOptions, type OMEZarrNVImageEventMap, type PopulateTrigger } from "./events.js";
5
- import type { ClipPlane, ClipPlanes, OMEZarrNVImageOptions, SlabBufferState, SlabSliceType, VolumeBounds } from "./types.js";
5
+ import type { ClipPlane, ClipPlanes, OMEZarrNVImageOptions, SlabBufferState, SlabSliceType, TimeAxisInfo, VolumeBounds } from "./types.js";
6
6
  /**
7
7
  * OMEZarrNVImage extends NVImage to support rendering OME-Zarr images in NiiVue.
8
8
  *
@@ -26,6 +26,15 @@ export declare class OMEZarrNVImage extends NVImage {
26
26
  * OMERO intensity windowing is skipped.
27
27
  */
28
28
  readonly isLabelImage: boolean;
29
+ /**
30
+ * The continuous colormap name used for rendering.
31
+ *
32
+ * Overrides the NVImage setter so that changing the colormap on this
33
+ * image automatically propagates to all slab (2D slice) NVImages.
34
+ * Label images are unaffected — they use `setColormapLabel()` instead.
35
+ */
36
+ get colormap(): string;
37
+ set colormap(cm: string);
29
38
  /** Reference to NiiVue instance */
30
39
  private readonly niivue;
31
40
  /** Buffer manager for dynamically-sized pixel data */
@@ -63,8 +72,8 @@ export declare class OMEZarrNVImage extends NVImage {
63
72
  private readonly _volumeBounds;
64
73
  /** Current buffer bounds in world space (may differ from full volume when clipped) */
65
74
  private _currentBufferBounds;
66
- /** Previous clip plane change handler (to restore later) */
67
- private previousOnClipPlaneChange?;
75
+ /** AbortController for the clip plane event listener on the primary NV */
76
+ private _clipPlaneAbortController?;
68
77
  /** Debounce delay for clip plane updates (ms) */
69
78
  private readonly clipPlaneDebounceMs;
70
79
  /** Timeout handle for debounced clip plane refetch */
@@ -83,6 +92,12 @@ export declare class OMEZarrNVImage extends NVImage {
83
92
  private readonly _eventTarget;
84
93
  /** Pending populate request (latest wins - replaces any previous pending) */
85
94
  private _pendingPopulateRequest;
95
+ /**
96
+ * AbortController for the in-flight `populateVolume` fetch.
97
+ * Aborted when a new `populateVolume` call supersedes the current one,
98
+ * allowing in-flight HTTP requests to be cancelled promptly.
99
+ */
100
+ private _populateAbortController;
86
101
  /** Current populate trigger (set at start of populateVolume, used by events) */
87
102
  private _currentPopulateTrigger;
88
103
  /** Attached Niivue instances and their state */
@@ -107,6 +122,31 @@ export declare class OMEZarrNVImage extends NVImage {
107
122
  private _viewportUpdateTimeout;
108
123
  /** Per-slab AbortController to cancel in-flight progressive loads */
109
124
  private _slabAbortControllers;
125
+ /**
126
+ * Time axis metadata, or `null` if the dataset has no `"t"` dimension.
127
+ * Populated during construction by inspecting `NgffImage.dims`.
128
+ */
129
+ private readonly _timeAxisInfo;
130
+ /** Current time index (0-based). Always 0 for non-time datasets. */
131
+ private _timeIndex;
132
+ /** Number of adjacent time frames to pre-fetch in each direction. */
133
+ private readonly _timePrefetchCount;
134
+ /**
135
+ * LRU cache of pre-fetched 3D time frames, keyed by time index.
136
+ * Only used when `_timeAxisInfo` is non-null.
137
+ */
138
+ private readonly _timeFrameCache;
139
+ /** Set of time indices currently being pre-fetched (for dedup). */
140
+ private readonly _prefetchingTimeIndices;
141
+ /** AbortController for the most recent pre-fetch batch. */
142
+ private _prefetchAbortController;
143
+ /**
144
+ * Snapshot of the chunk-aligned region and resolution level used for
145
+ * the last successful 3D volume load. Used to serve cached time frames
146
+ * at the same spatial region. Cleared on clip plane / viewport / resolution
147
+ * changes.
148
+ */
149
+ private _lastLoadedRegion;
110
150
  /** Maximum 3D render zoom level for scroll-wheel zoom */
111
151
  private readonly _max3DZoom;
112
152
  /** Minimum 3D render zoom level for scroll-wheel zoom */
@@ -117,6 +157,8 @@ export declare class OMEZarrNVImage extends NVImage {
117
157
  * continuous zoom/pan interactions.
118
158
  */
119
159
  private static readonly VIEWPORT_DEBOUNCE_MS;
160
+ /** Default number of adjacent time frames to pre-fetch. */
161
+ private static readonly DEFAULT_TIME_PREFETCH_COUNT;
120
162
  /**
121
163
  * Private constructor. Use OMEZarrNVImage.create() for instantiation.
122
164
  */
@@ -171,6 +213,8 @@ export declare class OMEZarrNVImage extends NVImage {
171
213
  *
172
214
  * @param levelIndex - Resolution level index
173
215
  * @param requesterId - ID for request coalescing
216
+ * @param timeIndex - Time point index to fetch (defaults to `this._timeIndex`)
217
+ * @param signal - Optional AbortSignal to cancel the fetch
174
218
  */
175
219
  private loadResolutionLevel;
176
220
  /**
@@ -320,6 +364,76 @@ export declare class OMEZarrNVImage extends NVImage {
320
364
  * Get the volume bounds in world space.
321
365
  */
322
366
  getVolumeBounds(): VolumeBounds;
367
+ /**
368
+ * Time axis metadata, or `null` if the dataset has no `"t"` dimension.
369
+ *
370
+ * @example
371
+ * ```ts
372
+ * const info = image.timeAxisInfo
373
+ * if (info) {
374
+ * console.log(`${info.count} time points, step=${info.step} ${info.unit}`)
375
+ * }
376
+ * ```
377
+ */
378
+ get timeAxisInfo(): TimeAxisInfo | null;
379
+ /**
380
+ * Total number of time points.
381
+ * Returns 1 for datasets without a `"t"` dimension.
382
+ */
383
+ get timeCount(): number;
384
+ /**
385
+ * Current time index (0-based).
386
+ * Always 0 for datasets without a `"t"` dimension.
387
+ */
388
+ get timeIndex(): number;
389
+ /**
390
+ * Compute the physical time value at a given index.
391
+ *
392
+ * @param index - Time index (0-based)
393
+ * @returns Physical time value (`origin + index * step`)
394
+ */
395
+ getTimeValue(index: number): number;
396
+ /**
397
+ * Set the active time index and reload the volume.
398
+ *
399
+ * If the requested frame is in the pre-fetch cache, the buffer is
400
+ * swapped instantly without a network fetch. Otherwise, the frame is
401
+ * loaded from the zarr store at the current resolution level and
402
+ * spatial region.
403
+ *
404
+ * After the frame is loaded, adjacent frames are pre-fetched in the
405
+ * background so subsequent scrubbing can serve frames from cache.
406
+ *
407
+ * @param index - Time index (0-based)
408
+ * @throws If `index` is out of range `[0, timeCount)`
409
+ *
410
+ * @example
411
+ * ```ts
412
+ * await image.setTimeIndex(5)
413
+ * image.addEventListener('timeChange', (e) => {
414
+ * console.log(`Frame ${e.detail.index}, cached=${e.detail.cached}`)
415
+ * })
416
+ * ```
417
+ */
418
+ setTimeIndex(index: number): Promise<void>;
419
+ /**
420
+ * Clear the pre-fetched time frame cache.
421
+ *
422
+ * Called internally when the spatial region or resolution changes
423
+ * (clip planes, viewport, resolution level), since cached frames
424
+ * were fetched for the previous region and are no longer valid.
425
+ */
426
+ private _invalidateTimeFrameCache;
427
+ /**
428
+ * Pre-fetch adjacent time frames in the background.
429
+ *
430
+ * Fetches frames `[index - N, index + N]` (clamped to valid range)
431
+ * at the current resolution level and spatial region. Already-cached
432
+ * and currently-in-flight indices are skipped.
433
+ *
434
+ * @param centerIndex - The time index to pre-fetch around
435
+ */
436
+ private _prefetchAdjacentFrames;
323
437
  /**
324
438
  * Enable or disable viewport-aware resolution selection.
325
439
  *
@@ -340,7 +454,9 @@ export declare class OMEZarrNVImage extends NVImage {
340
454
  */
341
455
  getViewportBounds(): VolumeBounds | null;
342
456
  /**
343
- * Hook viewport events (onMouseUp, onZoom3DChange, wheel) on a NV instance.
457
+ * Hook viewport events (mouseUp, zoom3DChange, wheel) on a NV instance.
458
+ * All listeners share a single AbortController so they can be torn down
459
+ * together via {@link _unhookViewportEvents}.
344
460
  */
345
461
  private _hookViewportEvents;
346
462
  /**
@@ -382,7 +498,13 @@ export declare class OMEZarrNVImage extends NVImage {
382
498
  */
383
499
  getIsLoading(): boolean;
384
500
  /**
385
- * Wait for all pending fetches to complete.
501
+ * Wait for all async work to settle: debounced timers (clip plane
502
+ * refetch, viewport update, slab reload), the main `populateVolume`
503
+ * pipeline, all slab loads, and in-flight coalescer fetches.
504
+ *
505
+ * The method polls in a loop because debounced timers may fire while
506
+ * we are waiting, triggering new loads. It only resolves once every
507
+ * source of async work is idle simultaneously.
386
508
  */
387
509
  waitForIdle(): Promise<void>;
388
510
  /**
@@ -437,9 +559,10 @@ export declare class OMEZarrNVImage extends NVImage {
437
559
  /**
438
560
  * Attach a Niivue instance for slice-type-aware rendering.
439
561
  *
440
- * The image auto-detects the NV's current slice type and hooks into
441
- * `onOptsChange` to track mode changes and `onLocationChange` to track
442
- * crosshair/slice position changes.
562
+ * The image auto-detects the NV's current slice type and uses
563
+ * `addEventListener('sliceTypeChange', ...)` to track mode changes and
564
+ * `addEventListener('locationChange', ...)` to track crosshair/slice
565
+ * position changes via Niivue's browser-native EventTarget API.
443
566
  *
444
567
  * When the NV is in a 2D slice mode (Axial, Coronal, Sagittal), the image
445
568
  * loads a slab (one chunk thick in the orthogonal direction) at the current
@@ -449,7 +572,9 @@ export declare class OMEZarrNVImage extends NVImage {
449
572
  */
450
573
  attachNiivue(nv: Niivue): void;
451
574
  /**
452
- * Detach a Niivue instance, restoring its original callbacks.
575
+ * Detach a Niivue instance, removing all event listeners registered by this
576
+ * image (viewport, zoom-override, slice-type, location, and clip-plane
577
+ * listeners are all torn down via their respective `AbortController`s).
453
578
  *
454
579
  * @param nv - The Niivue instance to detach
455
580
  */
@@ -475,11 +600,19 @@ export declare class OMEZarrNVImage extends NVImage {
475
600
  */
476
601
  private _isSlabSliceType;
477
602
  /**
478
- * Get the orthogonal axis index for a slab slice type.
479
- * Returns index in [z, y, x] order:
480
- * - Axial: slicing through Z orthogonal axis = 0 (Z)
481
- * - Coronal: slicing through Y orthogonal axis = 1 (Y)
482
- * - Sagittal: slicing through X orthogonal axis = 2 (X)
603
+ * Get the NGFF array axis index that is orthogonal to a slice plane.
604
+ *
605
+ * NiiVue slice types refer to anatomical planes:
606
+ * - Axial: perpendicular to S/I (physicalRow 2)
607
+ * - Coronal: perpendicular to A/P (physicalRow 1)
608
+ * - Sagittal: perpendicular to R/L (physicalRow 0)
609
+ *
610
+ * When the dataset has permuted axes (e.g. NGFF y encodes S/I instead
611
+ * of A/P), the NGFF array axis that is orthogonal to a given anatomical
612
+ * plane differs from the default z/y/x mapping. This method uses the
613
+ * orientation metadata to find the correct NGFF axis.
614
+ *
615
+ * Returns index in [z, y, x] order (0=z, 1=y, 2=x).
483
616
  */
484
617
  private _getOrthogonalAxis;
485
618
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"OMEZarrNVImage.d.ts","sourceRoot":"","sources":["../src/OMEZarrNVImage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OMEZarrNVImage.d.ts","sourceRoot":"","sources":["../src/OMEZarrNVImage.ts"],"names":[],"mappings":"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"}