@cornerstonejs/core 2.0.0-beta.20 → 2.0.0-beta.21
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.
- package/dist/esm/RenderingEngine/BaseVolumeViewport.d.ts +23 -13
- package/dist/esm/RenderingEngine/BaseVolumeViewport.js +36 -44
- package/dist/esm/RenderingEngine/CanvasActor/CanvasMapper.d.ts +1 -1
- package/dist/esm/RenderingEngine/CanvasActor/CanvasProperties.d.ts +1 -1
- package/dist/esm/RenderingEngine/CanvasActor/index.js +2 -1
- package/dist/esm/RenderingEngine/RenderingEngine.d.ts +7 -8
- package/dist/esm/RenderingEngine/RenderingEngine.js +18 -17
- package/dist/esm/RenderingEngine/StackViewport.d.ts +29 -18
- package/dist/esm/RenderingEngine/StackViewport.js +66 -50
- package/dist/esm/RenderingEngine/VideoViewport.d.ts +19 -28
- package/dist/esm/RenderingEngine/VideoViewport.js +59 -22
- package/dist/esm/RenderingEngine/Viewport.d.ts +25 -14
- package/dist/esm/RenderingEngine/Viewport.js +20 -14
- package/dist/esm/RenderingEngine/VolumeViewport.d.ts +21 -9
- package/dist/esm/RenderingEngine/VolumeViewport.js +88 -8
- package/dist/esm/RenderingEngine/VolumeViewport3D.d.ts +3 -3
- package/dist/esm/RenderingEngine/VolumeViewport3D.js +10 -3
- package/dist/esm/RenderingEngine/WSIViewport.d.ts +58 -0
- package/dist/esm/RenderingEngine/WSIViewport.js +414 -0
- package/dist/esm/RenderingEngine/helpers/addImageSlicesToViewports.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/addImageSlicesToViewports.js +3 -3
- package/dist/esm/RenderingEngine/helpers/addVolumesToViewports.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/colormap.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/colormap.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/lookupTable.d.ts +2 -2
- package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/lookupTable.js +15 -5
- package/dist/esm/RenderingEngine/helpers/cpuFallback/drawImageSync.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/calculateTransform.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/canvasToPixel.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/correctShift.d.ts +3 -3
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/createViewport.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/doesImageNeedToBeRendered.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/fitToWindow.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateColorLUT.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateColorLUT.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateLut.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateLut.js +2 -2
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getDefaultViewport.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getImageFitScale.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getImageSize.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getLut.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getLut.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getTransform.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/initializeRenderCanvas.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/lutMatches.d.ts +2 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/lutMatches.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/pixelToCanvas.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderColorImage.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderColorImage.js +3 -4
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.js +2 -3
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.js +2 -2
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/resetCamera.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/resize.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/saveLastRendered.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/setDefaultViewport.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/setToPixelCoordinateSystem.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedColorPixelDataToCanvasImageData.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedColorPixelDataToCanvasImageData.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageData.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageData.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPET.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPET.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataRGBA.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataRGBA.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedRGBAPixelDataToCanvasImageData.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedRGBAPixelDataToCanvasImageData.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/transform.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/validator.d.ts +2 -2
- package/dist/esm/RenderingEngine/helpers/createVolumeActor.d.ts +3 -3
- package/dist/esm/RenderingEngine/helpers/createVolumeActor.js +3 -6
- package/dist/esm/RenderingEngine/helpers/createVolumeMapper.d.ts +4 -1
- package/dist/esm/RenderingEngine/helpers/getOrCreateCanvas.js +5 -4
- package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.d.ts +2 -2
- package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.js +10 -35
- package/dist/esm/RenderingEngine/helpers/setVolumesForViewports.d.ts +1 -1
- package/dist/esm/RenderingEngine/helpers/viewportTypeToViewportClass.d.ts +2 -0
- package/dist/esm/RenderingEngine/helpers/viewportTypeToViewportClass.js +2 -0
- package/dist/esm/RenderingEngine/helpers/volumeNewImageEventDispatcher.d.ts +1 -1
- package/dist/esm/RenderingEngine/renderingEngineCache.d.ts +1 -1
- package/dist/esm/RenderingEngine/vtkClasses/vtkSlabCamera.d.ts +4 -2
- package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.js +87 -78
- package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLViewNodeFactory.js +1 -1
- package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js +83 -42
- package/dist/esm/Settings.d.ts +1 -1
- package/dist/esm/cache/cache.d.ts +15 -19
- package/dist/esm/cache/cache.js +110 -56
- package/dist/esm/cache/classes/Contour.d.ts +4 -4
- package/dist/esm/cache/classes/ContourSet.d.ts +3 -3
- package/dist/esm/cache/classes/ImageVolume.d.ts +19 -19
- package/dist/esm/cache/classes/ImageVolume.js +48 -254
- package/dist/esm/cache/classes/Surface.d.ts +3 -3
- package/dist/esm/constants/cpuColormaps.d.ts +1 -1
- package/dist/esm/constants/viewportPresets.d.ts +1 -1
- package/dist/esm/enums/GenerateImageType.d.ts +5 -0
- package/dist/esm/enums/GenerateImageType.js +6 -0
- package/dist/esm/enums/MetadataModules.d.ts +2 -1
- package/dist/esm/enums/MetadataModules.js +1 -0
- package/dist/esm/enums/ViewportType.d.ts +2 -1
- package/dist/esm/enums/ViewportType.js +1 -0
- package/dist/esm/enums/index.d.ts +2 -2
- package/dist/esm/enums/index.js +2 -2
- package/dist/esm/eventTarget.js +2 -3
- package/dist/esm/getEnabledElement.d.ts +1 -1
- package/dist/esm/global.d.ts +0 -1
- package/dist/esm/index.d.ts +4 -3
- package/dist/esm/index.js +3 -2
- package/dist/esm/init.d.ts +5 -8
- package/dist/esm/init.js +21 -82
- package/dist/esm/loaders/ProgressiveRetrieveImages.d.ts +5 -5
- package/dist/esm/loaders/ProgressiveRetrieveImages.js +3 -1
- package/dist/esm/loaders/configuration/interleavedRetrieve.d.ts +1 -1
- package/dist/esm/loaders/fillNearbyFrames.d.ts +2 -2
- package/dist/esm/loaders/geometryLoader.d.ts +3 -3
- package/dist/esm/loaders/imageLoader.d.ts +12 -17
- package/dist/esm/loaders/imageLoader.js +174 -95
- package/dist/esm/loaders/utils/contourSet/createContourSet.d.ts +1 -1
- package/dist/esm/loaders/utils/contourSet/validateContourSet.d.ts +1 -1
- package/dist/esm/loaders/utils/surface/createSurface.d.ts +1 -1
- package/dist/esm/loaders/utils/surface/validateSurface.d.ts +1 -1
- package/dist/esm/loaders/volumeLoader.d.ts +14 -22
- package/dist/esm/loaders/volumeLoader.js +62 -210
- package/dist/esm/metaData.d.ts +2 -4
- package/dist/esm/requestPool/requestPoolManager.d.ts +7 -9
- package/dist/esm/types/AABB2.d.ts +2 -2
- package/dist/esm/types/AABB3.d.ts +2 -2
- package/dist/esm/types/ActorSliceRange.d.ts +5 -5
- package/dist/esm/types/BoundsIJK.d.ts +1 -1
- package/dist/esm/types/BoundsLPS.d.ts +1 -1
- package/dist/esm/types/CPUFallbackColormap.d.ts +3 -3
- package/dist/esm/types/CPUFallbackColormapData.d.ts +4 -4
- package/dist/esm/types/CPUFallbackColormapsData.d.ts +3 -5
- package/dist/esm/types/CPUFallbackEnabledElement.d.ts +14 -11
- package/dist/esm/types/CPUFallbackLUT.d.ts +4 -3
- package/dist/esm/types/CPUFallbackLookupTable.d.ts +2 -2
- package/dist/esm/types/CPUFallbackRenderingTools.d.ts +5 -5
- package/dist/esm/types/CPUFallbackTransform.d.ts +3 -3
- package/dist/esm/types/CPUFallbackViewport.d.ts +6 -6
- package/dist/esm/types/CPUFallbackViewportDisplayedArea.d.ts +3 -3
- package/dist/esm/types/CPUIImageData.d.ts +17 -9
- package/dist/esm/types/Color.d.ts +1 -1
- package/dist/esm/types/Colormap.d.ts +7 -7
- package/dist/esm/types/ContourData.d.ts +6 -6
- package/dist/esm/types/Cornerstone3DConfig.d.ts +7 -7
- package/dist/esm/types/CustomEventType.d.ts +2 -2
- package/dist/esm/types/EventTypes.d.ts +55 -55
- package/dist/esm/types/FlipDirection.d.ts +3 -3
- package/dist/esm/types/IActor.d.ts +3 -3
- package/dist/esm/types/ICache.d.ts +4 -4
- package/dist/esm/types/ICachedGeometry.d.ts +3 -3
- package/dist/esm/types/ICachedImage.d.ts +3 -2
- package/dist/esm/types/ICachedVolume.d.ts +3 -2
- package/dist/esm/types/ICamera.d.ts +3 -3
- package/dist/esm/types/IContour.d.ts +4 -3
- package/dist/esm/types/IContourSet.d.ts +5 -2
- package/dist/esm/types/IDynamicImageVolume.d.ts +3 -3
- package/dist/esm/types/IEnabledElement.d.ts +2 -2
- package/dist/esm/types/IGeometry.d.ts +4 -4
- package/dist/esm/types/IImage.d.ts +12 -10
- package/dist/esm/types/IImageCalibration.d.ts +2 -2
- package/dist/esm/types/IImageData.d.ts +11 -4
- package/dist/esm/types/IImageFrame.d.ts +42 -0
- package/dist/esm/types/IImageFrame.js +1 -0
- package/dist/esm/types/IImageVolume.d.ts +17 -14
- package/dist/esm/types/ILoadObject.d.ts +3 -3
- package/dist/esm/types/IPointsManager.d.ts +23 -0
- package/dist/esm/types/IPointsManager.js +1 -0
- package/dist/esm/types/IRLEVoxelMap.d.ts +16 -0
- package/dist/esm/types/IRLEVoxelMap.js +1 -0
- package/dist/esm/types/IRegisterImageLoader.d.ts +2 -2
- package/dist/esm/types/IRenderingEngine.d.ts +11 -12
- package/dist/esm/types/IRetrieveConfiguration.d.ts +6 -6
- package/dist/esm/types/IStackInput.d.ts +1 -1
- package/dist/esm/types/IStackViewport.d.ts +69 -2
- package/dist/esm/types/IStreamingImageVolume.d.ts +3 -4
- package/dist/esm/types/IStreamingVolumeProperties.d.ts +5 -5
- package/dist/esm/types/ISurface.d.ts +1 -1
- package/dist/esm/types/ITransferFunctionNode.d.ts +9 -0
- package/dist/esm/types/ITransferFunctionNode.js +1 -0
- package/dist/esm/types/IVideoViewport.d.ts +40 -2
- package/dist/esm/types/IViewport.d.ts +62 -41
- package/dist/esm/types/IVolume.d.ts +2 -2
- package/dist/esm/types/IVolumeInput.d.ts +2 -2
- package/dist/esm/types/IVolumeViewport.d.ts +17 -16
- package/dist/esm/types/IVoxelManager.d.ts +54 -0
- package/dist/esm/types/IVoxelManager.js +1 -0
- package/dist/esm/types/IWSIViewport.d.ts +16 -0
- package/dist/esm/types/IWSIViewport.js +1 -0
- package/dist/esm/types/ImageLoadListener.d.ts +2 -2
- package/dist/esm/types/ImageLoaderFn.d.ts +3 -3
- package/dist/esm/types/ImagePixelModule.d.ts +1 -1
- package/dist/esm/types/ImagePlaneModule.d.ts +2 -2
- package/dist/esm/types/ImageSliceData.d.ts +3 -3
- package/dist/esm/types/ImageVolumeProps.d.ts +4 -4
- package/dist/esm/types/Mat3.d.ts +1 -1
- package/dist/esm/types/Metadata.d.ts +6 -6
- package/dist/esm/types/MetadataModuleTypes.d.ts +65 -0
- package/dist/esm/types/MetadataModuleTypes.js +1 -0
- package/dist/esm/types/OrientationVectors.d.ts +4 -4
- package/dist/esm/types/Plane.d.ts +1 -1
- package/dist/esm/types/Point2.d.ts +1 -1
- package/dist/esm/types/Point3.d.ts +3 -3
- package/dist/esm/types/Point4.d.ts +1 -1
- package/dist/esm/types/RGB.d.ts +1 -1
- package/dist/esm/types/ScalingParameters.d.ts +7 -7
- package/dist/esm/types/StackViewportProperties.d.ts +3 -3
- package/dist/esm/types/SurfaceData.d.ts +5 -5
- package/dist/esm/types/TransformMatrix2D.d.ts +1 -1
- package/dist/esm/types/VideoViewportProperties.d.ts +3 -3
- package/dist/esm/types/VideoViewportTypes.d.ts +7 -7
- package/dist/esm/types/ViewportInputOptions.d.ts +7 -7
- package/dist/esm/types/ViewportPreset.d.ts +1 -1
- package/dist/esm/types/ViewportProperties.d.ts +5 -5
- package/dist/esm/types/VolumeLoaderFn.d.ts +4 -3
- package/dist/esm/types/VolumeProps.d.ts +10 -5
- package/dist/esm/types/VolumeViewportProperties.d.ts +3 -3
- package/dist/esm/types/WSIViewportProperties.d.ts +3 -0
- package/dist/esm/types/WSIViewportProperties.js +1 -0
- package/dist/esm/types/WSIViewportTypes.d.ts +13 -0
- package/dist/esm/types/WSIViewportTypes.js +1 -0
- package/dist/esm/types/displayArea.d.ts +4 -4
- package/dist/esm/types/index.d.ts +16 -8
- package/dist/esm/types/voi.d.ts +4 -4
- package/dist/esm/utilities/PointsManager.d.ts +8 -10
- package/dist/esm/utilities/ProgressiveIterator.d.ts +1 -1
- package/dist/esm/utilities/ProgressiveIterator.js +3 -1
- package/dist/esm/utilities/RLEVoxelMap.d.ts +3 -8
- package/dist/esm/utilities/RLEVoxelMap.js +19 -19
- package/dist/esm/utilities/VoxelManager.d.ts +82 -20
- package/dist/esm/utilities/VoxelManager.js +466 -60
- package/dist/esm/utilities/actorCheck.d.ts +1 -1
- package/dist/esm/utilities/applyPreset.d.ts +2 -2
- package/dist/esm/utilities/calculateViewportsSpatialRegistration.d.ts +1 -1
- package/dist/esm/utilities/calculateViewportsSpatialRegistration.js +4 -4
- package/dist/esm/utilities/calibratedPixelSpacingMetadataProvider.d.ts +1 -1
- package/dist/esm/utilities/colormap.d.ts +1 -1
- package/dist/esm/utilities/convertStackToVolumeViewport.d.ts +2 -2
- package/dist/esm/utilities/convertStackToVolumeViewport.js +4 -4
- package/dist/esm/utilities/convertVolumeToStackViewport.d.ts +1 -1
- package/dist/esm/utilities/convertVolumeToStackViewport.js +1 -1
- package/dist/esm/utilities/createLinearRGBTransferFunction.d.ts +1 -1
- package/dist/esm/utilities/createLinearRGBTransferFunction.js +1 -3
- package/dist/esm/utilities/createSigmoidRGBTransferFunction.d.ts +2 -3
- package/dist/esm/utilities/createSigmoidRGBTransferFunction.js +8 -7
- package/dist/esm/utilities/decimate.d.ts +1 -1
- package/dist/esm/utilities/eventListener/TargetEventListeners.js +5 -3
- package/dist/esm/utilities/generateVolumePropsFromImageIds.d.ts +1 -1
- package/dist/esm/utilities/generateVolumePropsFromImageIds.js +33 -80
- package/dist/esm/utilities/genericMetadataProvider.d.ts +9 -2
- package/dist/esm/utilities/genericMetadataProvider.js +7 -1
- package/dist/esm/utilities/getBufferConfiguration.d.ts +2 -3
- package/dist/esm/utilities/getBufferConfiguration.js +5 -15
- package/dist/esm/utilities/getClosestImageId.js +1 -1
- package/dist/esm/utilities/getClosestStackImageIndexForPoint.d.ts +1 -1
- package/dist/esm/utilities/getCurrentVolumeViewportSlice.d.ts +4 -5
- package/dist/esm/utilities/getCurrentVolumeViewportSlice.js +8 -58
- package/dist/esm/utilities/getImageLegacy.d.ts +1 -1
- package/dist/esm/utilities/getImageSliceDataForVolumeViewport.d.ts +1 -1
- package/dist/esm/utilities/getMinMax.d.ts +2 -1
- package/dist/esm/utilities/getScalingParameters.d.ts +1 -1
- package/dist/esm/utilities/getSpacingInNormalDirection.d.ts +2 -2
- package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.d.ts +1 -1
- package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.js +2 -2
- package/dist/esm/utilities/getViewportImageCornersInWorld.d.ts +1 -1
- package/dist/esm/utilities/getViewportImageIds.d.ts +1 -1
- package/dist/esm/utilities/getViewportModality.d.ts +7 -3
- package/dist/esm/utilities/getViewportModality.js +9 -6
- package/dist/esm/utilities/getViewportsWithImageURI.d.ts +2 -2
- package/dist/esm/utilities/getViewportsWithVolumeId.d.ts +2 -2
- package/dist/esm/utilities/getViewportsWithVolumeId.js +3 -7
- package/dist/esm/utilities/getVoiFromSigmoidRGBTransferFunction.d.ts +1 -1
- package/dist/esm/utilities/getVolumeActorCorners.d.ts +2 -2
- package/dist/esm/utilities/getVolumeId.js +2 -2
- package/dist/esm/utilities/getVolumeSliceRangeInfo.d.ts +1 -1
- package/dist/esm/utilities/getVolumeViewportScrollInfo.d.ts +1 -1
- package/dist/esm/utilities/getVolumeViewportsContainingSameVolumes.d.ts +2 -2
- package/dist/esm/utilities/hasFloatScalingParameters.d.ts +1 -1
- package/dist/esm/utilities/imageRetrieveMetadataProvider.d.ts +1 -1
- package/dist/esm/utilities/imageToWorldCoords.d.ts +1 -1
- package/dist/esm/utilities/index.d.ts +3 -8
- package/dist/esm/utilities/index.js +4 -8
- package/dist/esm/utilities/indexWithinDimensions.d.ts +1 -1
- package/dist/esm/utilities/invertRgbTransferFunction.d.ts +2 -1
- package/dist/esm/utilities/isEqual.js +6 -1
- package/dist/esm/utilities/isPTPrescaledWithSUV.d.ts +1 -1
- package/dist/esm/utilities/isPTPrescaledWithSUV.js +1 -1
- package/dist/esm/utilities/isTypedArray.d.ts +1 -1
- package/dist/esm/utilities/loadImageToCanvas.d.ts +6 -6
- package/dist/esm/utilities/makeVolumeMetadata.d.ts +2 -2
- package/dist/esm/utilities/planar.d.ts +2 -2
- package/dist/esm/utilities/renderToCanvasCPU.d.ts +1 -1
- package/dist/esm/utilities/renderToCanvasGPU.d.ts +2 -2
- package/dist/esm/utilities/renderToCanvasGPU.js +1 -1
- package/dist/esm/utilities/scaleRgbTransferFunction.d.ts +2 -1
- package/dist/esm/utilities/snapFocalPointToSlice.d.ts +1 -1
- package/dist/esm/utilities/sortImageIdsAndGetSpacing.d.ts +5 -5
- package/dist/esm/utilities/transformCanvasToIJK.d.ts +2 -2
- package/dist/esm/utilities/transformIJKToCanvas.d.ts +1 -1
- package/dist/esm/utilities/triggerEvent.js +1 -1
- package/dist/esm/utilities/updateVTKImageDataWithCornerstoneImage.d.ts +2 -2
- package/dist/esm/utilities/updateVTKImageDataWithCornerstoneImage.js +1 -1
- package/dist/esm/utilities/uuidv4.js +3 -1
- package/dist/esm/utilities/worldToImageCoords.d.ts +1 -1
- package/dist/umd/index.js +1 -1
- package/dist/umd/index.js.map +1 -1
- package/package.json +5 -6
- package/dist/esm/cache/utils/restoreImagesFromBuffer.d.ts +0 -2
- package/dist/esm/cache/utils/restoreImagesFromBuffer.js +0 -28
- package/dist/esm/enums/SharedArrayBufferModes.d.ts +0 -6
- package/dist/esm/enums/SharedArrayBufferModes.js +0 -7
- package/dist/esm/utilities/cacheUtils.d.ts +0 -2
- package/dist/esm/utilities/cacheUtils.js +0 -86
- package/dist/esm/utilities/createFloat32SharedArray.d.ts +0 -2
- package/dist/esm/utilities/createFloat32SharedArray.js +0 -27
- package/dist/esm/utilities/createInt16SharedArray.d.ts +0 -2
- package/dist/esm/utilities/createInt16SharedArray.js +0 -11
- package/dist/esm/utilities/createUInt16SharedArray.d.ts +0 -2
- package/dist/esm/utilities/createUInt16SharedArray.js +0 -11
- package/dist/esm/utilities/createUint8SharedArray.d.ts +0 -2
- package/dist/esm/utilities/createUint8SharedArray.js +0 -12
- package/dist/esm/utilities/getScalarDataType.d.ts +0 -2
- package/dist/esm/utilities/getScalarDataType.js +0 -19
package/dist/esm/cache/cache.js
CHANGED
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import { triggerEvent, imageIdToURI } from '../utilities';
|
|
2
2
|
import eventTarget from '../eventTarget';
|
|
3
3
|
import Events from '../enums/Events';
|
|
4
|
-
import { restoreImagesFromBuffer } from './utils/restoreImagesFromBuffer';
|
|
5
4
|
const ONE_GB = 1073741824;
|
|
6
5
|
class Cache {
|
|
7
6
|
constructor() {
|
|
8
7
|
this._imageCache = new Map();
|
|
9
8
|
this._volumeCache = new Map();
|
|
9
|
+
this._geometryCache = new Map();
|
|
10
10
|
this._imageCacheSize = 0;
|
|
11
|
-
this._volumeCacheSize = 0;
|
|
12
11
|
this._maxCacheSize = 3 * ONE_GB;
|
|
13
|
-
this._maxInstanceSize = 4 * ONE_GB - 8;
|
|
14
12
|
this.setMaxCacheSize = (newMaxCacheSize) => {
|
|
15
13
|
if (!newMaxCacheSize || typeof newMaxCacheSize !== 'number') {
|
|
16
14
|
const errorMessage = `New max cacheSize ${this._maxCacheSize} should be defined and should be a number.`;
|
|
@@ -19,19 +17,27 @@ class Cache {
|
|
|
19
17
|
this._maxCacheSize = newMaxCacheSize;
|
|
20
18
|
};
|
|
21
19
|
this.isCacheable = (byteLength) => {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
20
|
+
const bytesAvailable = this.getBytesAvailable();
|
|
21
|
+
const purgableImageBytes = Array.from(this._imageCache.values()).reduce((total, image) => {
|
|
22
|
+
if (!image.sharedCacheKey) {
|
|
23
|
+
return total + image.sizeInBytes;
|
|
24
|
+
}
|
|
25
|
+
return total;
|
|
26
|
+
}, 0);
|
|
27
|
+
const availableSpaceWithoutSharedCacheKey = bytesAvailable + purgableImageBytes;
|
|
28
|
+
return availableSpaceWithoutSharedCacheKey >= byteLength;
|
|
29
29
|
};
|
|
30
30
|
this.getMaxCacheSize = () => this._maxCacheSize;
|
|
31
|
-
this.
|
|
32
|
-
this.getCacheSize = () => this._imageCacheSize + this._volumeCacheSize;
|
|
31
|
+
this.getCacheSize = () => this._imageCacheSize;
|
|
33
32
|
this._decacheImage = (imageId) => {
|
|
34
|
-
const
|
|
33
|
+
const cachedImage = this._imageCache.get(imageId);
|
|
34
|
+
if (!cachedImage) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
if (cachedImage.sharedCacheKey) {
|
|
38
|
+
throw new Error('Cannot decache an image with a shared cache key. You need to manually decache the volume first.');
|
|
39
|
+
}
|
|
40
|
+
const { imageLoadObject } = cachedImage;
|
|
35
41
|
if (imageLoadObject.cancelFn) {
|
|
36
42
|
imageLoadObject.cancelFn();
|
|
37
43
|
}
|
|
@@ -42,24 +48,35 @@ class Cache {
|
|
|
42
48
|
};
|
|
43
49
|
this._decacheVolume = (volumeId) => {
|
|
44
50
|
const cachedVolume = this._volumeCache.get(volumeId);
|
|
51
|
+
if (!cachedVolume) {
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
45
54
|
const { volumeLoadObject, volume } = cachedVolume;
|
|
55
|
+
if (!volume) {
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
46
58
|
if (volume.cancelLoading) {
|
|
47
59
|
volume.cancelLoading();
|
|
48
60
|
}
|
|
49
61
|
if (volume.imageData) {
|
|
50
62
|
volume.imageData.delete();
|
|
51
63
|
}
|
|
52
|
-
restoreImagesFromBuffer(volume);
|
|
53
64
|
if (volumeLoadObject.cancelFn) {
|
|
54
65
|
volumeLoadObject.cancelFn();
|
|
55
66
|
}
|
|
56
|
-
if (
|
|
57
|
-
|
|
67
|
+
if (volume.imageIds) {
|
|
68
|
+
volume.imageIds.forEach((imageId) => {
|
|
69
|
+
const cachedImage = this._imageCache.get(imageId);
|
|
70
|
+
if (cachedImage && cachedImage.sharedCacheKey === volumeId) {
|
|
71
|
+
cachedImage.sharedCacheKey = undefined;
|
|
72
|
+
}
|
|
73
|
+
});
|
|
58
74
|
}
|
|
59
75
|
this._volumeCache.delete(volumeId);
|
|
60
76
|
};
|
|
61
77
|
this.purgeCache = () => {
|
|
62
78
|
const imageIterator = this._imageCache.keys();
|
|
79
|
+
this.purgeVolumeCache();
|
|
63
80
|
while (true) {
|
|
64
81
|
const { value: imageId, done } = imageIterator.next();
|
|
65
82
|
if (done) {
|
|
@@ -68,7 +85,6 @@ class Cache {
|
|
|
68
85
|
this.removeImageLoadObject(imageId);
|
|
69
86
|
triggerEvent(eventTarget, Events.IMAGE_CACHE_IMAGE_REMOVED, { imageId });
|
|
70
87
|
}
|
|
71
|
-
this.purgeVolumeCache();
|
|
72
88
|
};
|
|
73
89
|
this.purgeVolumeCache = () => {
|
|
74
90
|
const volumeIterator = this._volumeCache.keys();
|
|
@@ -88,7 +104,7 @@ class Cache {
|
|
|
88
104
|
throw new Error('getVolumeLoadObject: volumeId must not be undefined');
|
|
89
105
|
}
|
|
90
106
|
const cachedVolume = this._volumeCache.get(volumeId);
|
|
91
|
-
if (cachedVolume
|
|
107
|
+
if (!cachedVolume) {
|
|
92
108
|
return;
|
|
93
109
|
}
|
|
94
110
|
cachedVolume.timeStamp = Date.now();
|
|
@@ -99,7 +115,7 @@ class Cache {
|
|
|
99
115
|
throw new Error('getGeometry: geometryId must not be undefined');
|
|
100
116
|
}
|
|
101
117
|
const cachedGeometry = this._geometryCache.get(geometryId);
|
|
102
|
-
if (cachedGeometry
|
|
118
|
+
if (!cachedGeometry) {
|
|
103
119
|
return;
|
|
104
120
|
}
|
|
105
121
|
cachedGeometry.timeStamp = Date.now();
|
|
@@ -110,7 +126,7 @@ class Cache {
|
|
|
110
126
|
throw new Error('getImage: imageId must not be undefined');
|
|
111
127
|
}
|
|
112
128
|
const cachedImage = this._imageCache.get(imageId);
|
|
113
|
-
if (cachedImage
|
|
129
|
+
if (!cachedImage) {
|
|
114
130
|
return;
|
|
115
131
|
}
|
|
116
132
|
cachedImage.timeStamp = Date.now();
|
|
@@ -121,7 +137,7 @@ class Cache {
|
|
|
121
137
|
throw new Error('getVolume: volumeId must not be undefined');
|
|
122
138
|
}
|
|
123
139
|
const cachedVolume = this._volumeCache.get(volumeId);
|
|
124
|
-
if (cachedVolume
|
|
140
|
+
if (!cachedVolume) {
|
|
125
141
|
return;
|
|
126
142
|
}
|
|
127
143
|
cachedVolume.timeStamp = Date.now();
|
|
@@ -142,7 +158,7 @@ class Cache {
|
|
|
142
158
|
throw new Error('removeImageLoadObject: imageId must not be undefined');
|
|
143
159
|
}
|
|
144
160
|
const cachedImage = this._imageCache.get(imageId);
|
|
145
|
-
if (cachedImage
|
|
161
|
+
if (!cachedImage) {
|
|
146
162
|
throw new Error('removeImageLoadObject: imageId was not present in imageCache');
|
|
147
163
|
}
|
|
148
164
|
this.incrementImageCacheSize(-cachedImage.sizeInBytes);
|
|
@@ -158,10 +174,9 @@ class Cache {
|
|
|
158
174
|
throw new Error('removeVolumeLoadObject: volumeId must not be undefined');
|
|
159
175
|
}
|
|
160
176
|
const cachedVolume = this._volumeCache.get(volumeId);
|
|
161
|
-
if (cachedVolume
|
|
177
|
+
if (!cachedVolume) {
|
|
162
178
|
throw new Error('removeVolumeLoadObject: volumeId was not present in volumeCache');
|
|
163
179
|
}
|
|
164
|
-
this.incrementVolumeCacheSize(-cachedVolume.sizeInBytes);
|
|
165
180
|
const eventDetails = {
|
|
166
181
|
volume: cachedVolume,
|
|
167
182
|
volumeId,
|
|
@@ -211,16 +226,9 @@ class Cache {
|
|
|
211
226
|
this.incrementImageCacheSize = (increment) => {
|
|
212
227
|
this._imageCacheSize += increment;
|
|
213
228
|
};
|
|
214
|
-
this.incrementVolumeCacheSize = (increment) => {
|
|
215
|
-
this._volumeCacheSize += increment;
|
|
216
|
-
};
|
|
217
229
|
this.decrementImageCacheSize = (decrement) => {
|
|
218
230
|
this._imageCacheSize -= decrement;
|
|
219
231
|
};
|
|
220
|
-
this.decrementVolumeCacheSize = (decrement) => {
|
|
221
|
-
this._volumeCacheSize -= decrement;
|
|
222
|
-
};
|
|
223
|
-
this._geometryCache = new Map();
|
|
224
232
|
}
|
|
225
233
|
getBytesAvailable() {
|
|
226
234
|
return this.getMaxCacheSize() - this.getCacheSize();
|
|
@@ -230,7 +238,7 @@ class Cache {
|
|
|
230
238
|
if (bytesAvailable >= numBytes) {
|
|
231
239
|
return bytesAvailable;
|
|
232
240
|
}
|
|
233
|
-
|
|
241
|
+
const cachedImages = Array.from(this._imageCache.values()).filter((cachedImage) => !cachedImage.sharedCacheKey);
|
|
234
242
|
function compare(a, b) {
|
|
235
243
|
if (a.timeStamp > b.timeStamp) {
|
|
236
244
|
return 1;
|
|
@@ -241,7 +249,7 @@ class Cache {
|
|
|
241
249
|
return 0;
|
|
242
250
|
}
|
|
243
251
|
cachedImages.sort(compare);
|
|
244
|
-
|
|
252
|
+
const cachedImageIds = cachedImages.map((im) => im.imageId);
|
|
245
253
|
let imageIdsToPurge = cachedImageIds;
|
|
246
254
|
if (volumeImageIds) {
|
|
247
255
|
imageIdsToPurge = cachedImageIds.filter((id) => !volumeImageIds.includes(id));
|
|
@@ -254,8 +262,6 @@ class Cache {
|
|
|
254
262
|
return bytesAvailable;
|
|
255
263
|
}
|
|
256
264
|
}
|
|
257
|
-
cachedImages = Array.from(this._imageCache.values());
|
|
258
|
-
cachedImageIds = cachedImages.map((im) => im.imageId);
|
|
259
265
|
for (const imageId of cachedImageIds) {
|
|
260
266
|
this.removeImageLoadObject(imageId);
|
|
261
267
|
triggerEvent(eventTarget, Events.IMAGE_CACHE_IMAGE_REMOVED, { imageId });
|
|
@@ -290,18 +296,22 @@ class Cache {
|
|
|
290
296
|
triggerEvent(eventTarget, Events.IMAGE_CACHE_IMAGE_ADDED, eventDetails);
|
|
291
297
|
cachedImage.sharedCacheKey = image.sharedCacheKey;
|
|
292
298
|
}
|
|
293
|
-
putImageLoadObject(imageId, imageLoadObject) {
|
|
299
|
+
async putImageLoadObject(imageId, imageLoadObject) {
|
|
294
300
|
if (imageId === undefined) {
|
|
301
|
+
console.error('putImageLoadObject: imageId must not be undefined');
|
|
295
302
|
throw new Error('putImageLoadObject: imageId must not be undefined');
|
|
296
303
|
}
|
|
297
304
|
if (imageLoadObject.promise === undefined) {
|
|
305
|
+
console.error('putImageLoadObject: imageLoadObject.promise must not be undefined');
|
|
298
306
|
throw new Error('putImageLoadObject: imageLoadObject.promise must not be undefined');
|
|
299
307
|
}
|
|
300
308
|
if (this._imageCache.has(imageId)) {
|
|
309
|
+
console.warn(`putImageLoadObject: imageId ${imageId} already in cache`);
|
|
301
310
|
throw new Error('putImageLoadObject: imageId already in cache');
|
|
302
311
|
}
|
|
303
312
|
if (imageLoadObject.cancelFn &&
|
|
304
313
|
typeof imageLoadObject.cancelFn !== 'function') {
|
|
314
|
+
console.error('putImageLoadObject: imageLoadObject.cancel must be a function');
|
|
305
315
|
throw new Error('putImageLoadObject: imageLoadObject.cancel must be a function');
|
|
306
316
|
}
|
|
307
317
|
const cachedImage = {
|
|
@@ -313,11 +323,19 @@ class Cache {
|
|
|
313
323
|
sizeInBytes: 0,
|
|
314
324
|
};
|
|
315
325
|
this._imageCache.set(imageId, cachedImage);
|
|
326
|
+
this._imageCache.set(imageId, cachedImage);
|
|
316
327
|
return imageLoadObject.promise
|
|
317
328
|
.then((image) => {
|
|
318
|
-
|
|
329
|
+
try {
|
|
330
|
+
this._putImageCommon(imageId, image, cachedImage);
|
|
331
|
+
}
|
|
332
|
+
catch (error) {
|
|
333
|
+
console.debug(`Error in _putImageCommon for image ${imageId}:`, error);
|
|
334
|
+
throw error;
|
|
335
|
+
}
|
|
319
336
|
})
|
|
320
337
|
.catch((error) => {
|
|
338
|
+
console.debug(`Error caching image ${imageId}:`, error);
|
|
321
339
|
this._imageCache.delete(imageId);
|
|
322
340
|
throw error;
|
|
323
341
|
});
|
|
@@ -353,7 +371,7 @@ class Cache {
|
|
|
353
371
|
throw new Error('getImageLoadObject: imageId must not be undefined');
|
|
354
372
|
}
|
|
355
373
|
const cachedImage = this._imageCache.get(imageId);
|
|
356
|
-
if (cachedImage
|
|
374
|
+
if (!cachedImage) {
|
|
357
375
|
return;
|
|
358
376
|
}
|
|
359
377
|
cachedImage.timeStamp = Date.now();
|
|
@@ -371,8 +389,11 @@ class Cache {
|
|
|
371
389
|
const imageIdToUse = imageIdToURI(imageId);
|
|
372
390
|
for (const volumeId of volumeIds) {
|
|
373
391
|
const cachedVolume = this._volumeCache.get(volumeId);
|
|
392
|
+
if (!cachedVolume) {
|
|
393
|
+
return;
|
|
394
|
+
}
|
|
374
395
|
const { volume } = cachedVolume;
|
|
375
|
-
if (!volume
|
|
396
|
+
if (!volume.imageIds.length) {
|
|
376
397
|
return;
|
|
377
398
|
}
|
|
378
399
|
const imageIdIndex = volume.getImageURIIndex(imageIdToUse);
|
|
@@ -392,7 +413,50 @@ class Cache {
|
|
|
392
413
|
}
|
|
393
414
|
return this._imageCache.get(foundImageId);
|
|
394
415
|
}
|
|
395
|
-
|
|
416
|
+
_putVolumeCommon(volumeId, volume, cachedVolume) {
|
|
417
|
+
if (!this._volumeCache.get(volumeId)) {
|
|
418
|
+
console.warn('The volume was purged from the cache before it completed loading.');
|
|
419
|
+
return;
|
|
420
|
+
}
|
|
421
|
+
cachedVolume.loaded = true;
|
|
422
|
+
cachedVolume.volume = volume;
|
|
423
|
+
volume.imageIds?.forEach((imageId) => {
|
|
424
|
+
const image = this._imageCache.get(imageId);
|
|
425
|
+
if (image) {
|
|
426
|
+
image.sharedCacheKey = volumeId;
|
|
427
|
+
}
|
|
428
|
+
});
|
|
429
|
+
const eventDetails = {
|
|
430
|
+
volume: cachedVolume,
|
|
431
|
+
};
|
|
432
|
+
triggerEvent(eventTarget, Events.VOLUME_CACHE_VOLUME_ADDED, eventDetails);
|
|
433
|
+
}
|
|
434
|
+
putVolumeSync(volumeId, volume) {
|
|
435
|
+
if (volumeId === undefined) {
|
|
436
|
+
throw new Error('putVolumeSync: volumeId must not be undefined');
|
|
437
|
+
}
|
|
438
|
+
if (this._volumeCache.has(volumeId)) {
|
|
439
|
+
throw new Error('putVolumeSync: volumeId already in cache');
|
|
440
|
+
}
|
|
441
|
+
const cachedVolume = {
|
|
442
|
+
loaded: false,
|
|
443
|
+
volumeId,
|
|
444
|
+
volumeLoadObject: {
|
|
445
|
+
promise: Promise.resolve(volume),
|
|
446
|
+
},
|
|
447
|
+
timeStamp: Date.now(),
|
|
448
|
+
sizeInBytes: 0,
|
|
449
|
+
};
|
|
450
|
+
this._volumeCache.set(volumeId, cachedVolume);
|
|
451
|
+
try {
|
|
452
|
+
this._putVolumeCommon(volumeId, volume, cachedVolume);
|
|
453
|
+
}
|
|
454
|
+
catch (error) {
|
|
455
|
+
this._volumeCache.delete(volumeId);
|
|
456
|
+
throw error;
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
async putVolumeLoadObject(volumeId, volumeLoadObject) {
|
|
396
460
|
if (volumeId === undefined) {
|
|
397
461
|
throw new Error('putVolumeLoadObject: volumeId must not be undefined');
|
|
398
462
|
}
|
|
@@ -416,24 +480,14 @@ class Cache {
|
|
|
416
480
|
this._volumeCache.set(volumeId, cachedVolume);
|
|
417
481
|
return volumeLoadObject.promise
|
|
418
482
|
.then((volume) => {
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
return;
|
|
483
|
+
try {
|
|
484
|
+
this._putVolumeCommon(volumeId, volume, cachedVolume);
|
|
422
485
|
}
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
throw new Error('putVolumeLoadObject: volume.sizeInBytes is not a number');
|
|
486
|
+
catch (error) {
|
|
487
|
+
console.error(`Error in _putVolumeCommon for volume ${volumeId}:`, error);
|
|
488
|
+
this._volumeCache.delete(volumeId);
|
|
489
|
+
throw error;
|
|
428
490
|
}
|
|
429
|
-
this.decacheIfNecessaryUntilBytesAvailable(volume.sizeInBytes, volume.imageIds);
|
|
430
|
-
cachedVolume.volume = volume;
|
|
431
|
-
cachedVolume.sizeInBytes = volume.sizeInBytes;
|
|
432
|
-
this.incrementVolumeCacheSize(cachedVolume.sizeInBytes);
|
|
433
|
-
const eventDetails = {
|
|
434
|
-
volume: cachedVolume,
|
|
435
|
-
};
|
|
436
|
-
triggerEvent(eventTarget, Events.VOLUME_CACHE_VOLUME_ADDED, eventDetails);
|
|
437
491
|
})
|
|
438
492
|
.catch((error) => {
|
|
439
493
|
this._volumeCache.delete(volumeId);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { Point3, ContourData, IContour } from '../../types';
|
|
2
|
-
import { ContourType } from '../../enums';
|
|
3
|
-
|
|
1
|
+
import type { Point3, ContourData, IContour } from '../../types';
|
|
2
|
+
import type { ContourType } from '../../enums';
|
|
3
|
+
interface ContourProps {
|
|
4
4
|
id: string;
|
|
5
5
|
data: ContourData;
|
|
6
6
|
color: Point3;
|
|
7
7
|
segmentIndex: number;
|
|
8
|
-
}
|
|
8
|
+
}
|
|
9
9
|
export declare class Contour implements IContour {
|
|
10
10
|
readonly id: string;
|
|
11
11
|
readonly sizeInBytes: number;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { Point3, IContourSet, IContour, ContourData } from '../../types';
|
|
1
|
+
import type { Point3, IContourSet, IContour, ContourData } from '../../types';
|
|
2
2
|
import Contour from './Contour';
|
|
3
|
-
|
|
3
|
+
interface ContourSetProps {
|
|
4
4
|
id: string;
|
|
5
5
|
data: ContourData[];
|
|
6
6
|
frameOfReferenceUID: string;
|
|
7
7
|
segmentIndex: number;
|
|
8
8
|
color?: Point3;
|
|
9
|
-
}
|
|
9
|
+
}
|
|
10
10
|
export declare class ContourSet implements IContourSet {
|
|
11
11
|
readonly id: string;
|
|
12
12
|
readonly sizeInBytes: number;
|
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
import vtkImageData from '@kitware/vtk.js/Common/DataModel/ImageData';
|
|
2
|
-
import { Metadata, Point3, IImageVolume, Mat3,
|
|
2
|
+
import type { Metadata, Point3, IImageVolume, Mat3, ImageVolumeProps, IImage, PixelDataTypedArrayString, RGB, IVoxelManager } from '../../types';
|
|
3
|
+
import type vtkOpenGLTexture from '@kitware/vtk.js/Rendering/OpenGL/Texture';
|
|
4
|
+
export interface vtkStreamingOpenGLTexture extends vtkOpenGLTexture {
|
|
5
|
+
setUpdatedFrame: (frame: number) => void;
|
|
6
|
+
setVolumeId: (volumeId: string) => void;
|
|
7
|
+
releaseGraphicsResources: () => void;
|
|
8
|
+
}
|
|
3
9
|
export declare class ImageVolume implements IImageVolume {
|
|
4
10
|
private _imageIds;
|
|
5
11
|
private _imageIdsIndexMap;
|
|
6
12
|
private _imageURIsIndexMap;
|
|
7
|
-
protected scalarData: PixelDataTypedArray | Array<PixelDataTypedArray>;
|
|
8
13
|
protected numFrames: number;
|
|
9
14
|
protected totalNumFrames: number;
|
|
10
15
|
protected cornerstoneImageMetaData: any;
|
|
11
16
|
readonly volumeId: string;
|
|
12
|
-
imageCacheOffsetMap: Map<any, any>;
|
|
13
17
|
isPreScaled: boolean;
|
|
14
18
|
dimensions: Point3;
|
|
15
19
|
direction: Mat3;
|
|
@@ -23,39 +27,35 @@ export declare class ImageVolume implements IImageVolume {
|
|
|
23
27
|
suvbwToSuvbsa?: number;
|
|
24
28
|
};
|
|
25
29
|
};
|
|
26
|
-
sizeInBytes?: number;
|
|
27
30
|
spacing: Point3;
|
|
28
31
|
numVoxels: number;
|
|
29
32
|
imageData?: vtkImageData;
|
|
30
|
-
vtkOpenGLTexture:
|
|
31
|
-
loadStatus?: Record<string,
|
|
33
|
+
vtkOpenGLTexture: vtkStreamingOpenGLTexture;
|
|
34
|
+
loadStatus?: Record<string, unknown>;
|
|
32
35
|
referencedVolumeId?: string;
|
|
33
|
-
referencedImageIds?:
|
|
36
|
+
referencedImageIds?: string[];
|
|
34
37
|
hasPixelSpacing: boolean;
|
|
35
|
-
additionalDetails?: Record<string,
|
|
38
|
+
additionalDetails?: Record<string, unknown>;
|
|
39
|
+
voxelManager?: IVoxelManager<number> | IVoxelManager<RGB>;
|
|
40
|
+
dataType?: PixelDataTypedArrayString;
|
|
41
|
+
numTimePoints?: number;
|
|
36
42
|
constructor(props: ImageVolumeProps);
|
|
37
|
-
get
|
|
38
|
-
|
|
43
|
+
get sizeInBytes(): number;
|
|
44
|
+
get imageIds(): string[];
|
|
45
|
+
set imageIds(newImageIds: string[]);
|
|
39
46
|
private _reprocessImageIds;
|
|
40
47
|
cancelLoading: () => void;
|
|
41
48
|
isDynamicVolume(): boolean;
|
|
42
|
-
getScalarData(): PixelDataTypedArray;
|
|
43
49
|
getImageIdIndex(imageId: string): number;
|
|
50
|
+
getImageIdByIndex(imageIdIndex: number): string;
|
|
44
51
|
getImageURIIndex(imageURI: string): number;
|
|
45
52
|
destroy(): void;
|
|
46
|
-
|
|
53
|
+
invalidate(): void;
|
|
47
54
|
modified(): void;
|
|
48
|
-
decache(completelyRemove?: boolean): void | Array<string>;
|
|
49
55
|
removeFromCache(): void;
|
|
50
56
|
getScalarDataLength(): number;
|
|
51
57
|
private _getNumFrames;
|
|
52
|
-
private _getScalarDataLength;
|
|
53
|
-
private _createCornerstoneImageMetaData;
|
|
54
|
-
protected getScalarDataByImageIdIndex(imageIdIndex: number): PixelDataTypedArray;
|
|
55
|
-
getCornerstoneImage(imageId: string, imageIdIndex: number): IImage;
|
|
56
58
|
protected imageIdIndexToFrameIndex(imageIdIndex: number): number;
|
|
57
|
-
getCornerstoneImageLoadObject(imageId: string, imageIdIndex: number): IImageLoadObject;
|
|
58
59
|
getCornerstoneImages(): IImage[];
|
|
59
|
-
convertToImageSlicesAndCache(): string[];
|
|
60
60
|
}
|
|
61
61
|
export default ImageVolume;
|