@cornerstonejs/core 2.0.0-beta.20 → 2.0.0-beta.22

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.
Files changed (341) hide show
  1. package/dist/esm/RenderingEngine/BaseVolumeViewport.d.ts +23 -13
  2. package/dist/esm/RenderingEngine/BaseVolumeViewport.js +52 -50
  3. package/dist/esm/RenderingEngine/CanvasActor/CanvasMapper.d.ts +1 -1
  4. package/dist/esm/RenderingEngine/CanvasActor/CanvasProperties.d.ts +1 -1
  5. package/dist/esm/RenderingEngine/CanvasActor/index.js +2 -1
  6. package/dist/esm/RenderingEngine/RenderingEngine.d.ts +8 -10
  7. package/dist/esm/RenderingEngine/RenderingEngine.js +20 -18
  8. package/dist/esm/RenderingEngine/StackViewport.d.ts +28 -19
  9. package/dist/esm/RenderingEngine/StackViewport.js +81 -58
  10. package/dist/esm/RenderingEngine/VideoViewport.d.ts +19 -28
  11. package/dist/esm/RenderingEngine/VideoViewport.js +61 -24
  12. package/dist/esm/RenderingEngine/Viewport.d.ts +25 -14
  13. package/dist/esm/RenderingEngine/Viewport.js +24 -15
  14. package/dist/esm/RenderingEngine/VolumeViewport.d.ts +21 -9
  15. package/dist/esm/RenderingEngine/VolumeViewport.js +95 -10
  16. package/dist/esm/RenderingEngine/VolumeViewport3D.d.ts +3 -3
  17. package/dist/esm/RenderingEngine/VolumeViewport3D.js +10 -3
  18. package/dist/esm/RenderingEngine/WSIViewport.d.ts +58 -0
  19. package/dist/esm/RenderingEngine/WSIViewport.js +414 -0
  20. package/dist/esm/RenderingEngine/helpers/addImageSlicesToViewports.d.ts +1 -1
  21. package/dist/esm/RenderingEngine/helpers/addImageSlicesToViewports.js +3 -3
  22. package/dist/esm/RenderingEngine/helpers/addVolumesToViewports.d.ts +1 -1
  23. package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/colormap.d.ts +1 -1
  24. package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/colormap.js +1 -1
  25. package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/lookupTable.d.ts +2 -2
  26. package/dist/esm/RenderingEngine/helpers/cpuFallback/colors/lookupTable.js +15 -5
  27. package/dist/esm/RenderingEngine/helpers/cpuFallback/drawImageSync.d.ts +1 -1
  28. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/calculateTransform.d.ts +1 -1
  29. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/canvasToPixel.d.ts +1 -1
  30. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/correctShift.d.ts +3 -3
  31. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/createViewport.d.ts +1 -1
  32. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/doesImageNeedToBeRendered.d.ts +1 -1
  33. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/fitToWindow.d.ts +1 -1
  34. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateColorLUT.d.ts +1 -1
  35. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateColorLUT.js +1 -1
  36. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateLut.d.ts +1 -1
  37. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/generateLut.js +2 -2
  38. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getDefaultViewport.d.ts +1 -1
  39. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getImageFitScale.d.ts +1 -1
  40. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getImageSize.d.ts +1 -1
  41. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getLut.d.ts +1 -1
  42. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getLut.js +1 -1
  43. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/getTransform.d.ts +1 -1
  44. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/initializeRenderCanvas.d.ts +1 -1
  45. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/lutMatches.d.ts +2 -1
  46. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/lutMatches.js +1 -1
  47. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/pixelToCanvas.d.ts +1 -1
  48. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderColorImage.d.ts +1 -1
  49. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderColorImage.js +3 -4
  50. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.d.ts +1 -1
  51. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.js +2 -3
  52. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderPseudoColorImage.js +3 -3
  53. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/resetCamera.d.ts +1 -1
  54. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/resize.d.ts +1 -1
  55. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/saveLastRendered.d.ts +1 -1
  56. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/setDefaultViewport.d.ts +1 -1
  57. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/setToPixelCoordinateSystem.d.ts +1 -1
  58. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedColorPixelDataToCanvasImageData.d.ts +1 -1
  59. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedColorPixelDataToCanvasImageData.js +1 -1
  60. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageData.d.ts +1 -1
  61. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageData.js +1 -1
  62. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataColorLUT.js +1 -1
  63. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPET.d.ts +1 -1
  64. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPET.js +1 -1
  65. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUT.js +1 -1
  66. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataPseudocolorLUTPET.js +1 -1
  67. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataRGBA.d.ts +1 -1
  68. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedPixelDataToCanvasImageDataRGBA.js +1 -1
  69. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedRGBAPixelDataToCanvasImageData.d.ts +1 -1
  70. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/storedRGBAPixelDataToCanvasImageData.js +1 -1
  71. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/transform.d.ts +1 -1
  72. package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/validator.d.ts +2 -2
  73. package/dist/esm/RenderingEngine/helpers/createVolumeActor.d.ts +3 -3
  74. package/dist/esm/RenderingEngine/helpers/createVolumeActor.js +4 -7
  75. package/dist/esm/RenderingEngine/helpers/createVolumeMapper.d.ts +4 -1
  76. package/dist/esm/RenderingEngine/helpers/getOrCreateCanvas.js +5 -4
  77. package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.d.ts +2 -2
  78. package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.js +13 -37
  79. package/dist/esm/RenderingEngine/helpers/setVolumesForViewports.d.ts +1 -1
  80. package/dist/esm/RenderingEngine/helpers/viewportTypeToViewportClass.d.ts +2 -0
  81. package/dist/esm/RenderingEngine/helpers/viewportTypeToViewportClass.js +2 -0
  82. package/dist/esm/RenderingEngine/helpers/volumeNewImageEventDispatcher.d.ts +1 -1
  83. package/dist/esm/RenderingEngine/helpers/volumeNewImageEventDispatcher.js +4 -4
  84. package/dist/esm/RenderingEngine/renderingEngineCache.d.ts +1 -1
  85. package/dist/esm/RenderingEngine/vtkClasses/vtkSlabCamera.d.ts +4 -2
  86. package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLTexture.js +87 -78
  87. package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLViewNodeFactory.js +1 -1
  88. package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js +83 -42
  89. package/dist/esm/Settings.d.ts +1 -1
  90. package/dist/esm/cache/cache.d.ts +15 -19
  91. package/dist/esm/cache/cache.js +112 -57
  92. package/dist/esm/cache/classes/Contour.d.ts +4 -4
  93. package/dist/esm/cache/classes/ContourSet.d.ts +3 -3
  94. package/dist/esm/cache/classes/ImageVolume.d.ts +19 -19
  95. package/dist/esm/cache/classes/ImageVolume.js +49 -254
  96. package/dist/esm/cache/classes/Surface.d.ts +3 -3
  97. package/dist/esm/cache/index.d.ts +1 -2
  98. package/dist/esm/cache/index.js +1 -2
  99. package/dist/esm/constants/cpuColormaps.d.ts +1 -1
  100. package/dist/esm/constants/viewportPresets.d.ts +1 -1
  101. package/dist/esm/enums/GenerateImageType.d.ts +5 -0
  102. package/dist/esm/enums/GenerateImageType.js +6 -0
  103. package/dist/esm/enums/MetadataModules.d.ts +2 -1
  104. package/dist/esm/enums/MetadataModules.js +1 -0
  105. package/dist/esm/enums/ViewportType.d.ts +2 -1
  106. package/dist/esm/enums/ViewportType.js +1 -0
  107. package/dist/esm/enums/index.d.ts +2 -2
  108. package/dist/esm/enums/index.js +2 -2
  109. package/dist/esm/eventTarget.js +2 -3
  110. package/dist/esm/getEnabledElement.d.ts +1 -1
  111. package/dist/esm/global.d.ts +0 -1
  112. package/dist/esm/index.d.ts +9 -5
  113. package/dist/esm/index.js +8 -4
  114. package/dist/esm/init.d.ts +5 -8
  115. package/dist/esm/init.js +22 -83
  116. package/dist/esm/loaders/ProgressiveRetrieveImages.d.ts +5 -5
  117. package/dist/esm/loaders/ProgressiveRetrieveImages.js +7 -3
  118. package/dist/esm/loaders/configuration/interleavedRetrieve.d.ts +1 -1
  119. package/dist/esm/loaders/fillNearbyFrames.d.ts +2 -2
  120. package/dist/esm/loaders/geometryLoader.d.ts +3 -3
  121. package/dist/esm/loaders/geometryLoader.js +1 -1
  122. package/dist/esm/loaders/imageLoader.d.ts +12 -17
  123. package/dist/esm/loaders/imageLoader.js +179 -96
  124. package/dist/esm/loaders/utils/contourSet/createContourSet.d.ts +1 -1
  125. package/dist/esm/loaders/utils/contourSet/validateContourSet.d.ts +1 -1
  126. package/dist/esm/loaders/utils/surface/createSurface.d.ts +1 -1
  127. package/dist/esm/loaders/utils/surface/validateSurface.d.ts +1 -1
  128. package/dist/esm/loaders/volumeLoader.d.ts +15 -22
  129. package/dist/esm/loaders/volumeLoader.js +88 -207
  130. package/dist/esm/metaData.d.ts +2 -4
  131. package/dist/esm/requestPool/requestPoolManager.d.ts +7 -9
  132. package/dist/esm/requestPool/requestPoolManager.js +1 -1
  133. package/dist/esm/types/AABB2.d.ts +2 -2
  134. package/dist/esm/types/AABB3.d.ts +2 -2
  135. package/dist/esm/types/ActorSliceRange.d.ts +5 -5
  136. package/dist/esm/types/BoundsIJK.d.ts +1 -1
  137. package/dist/esm/types/BoundsLPS.d.ts +1 -1
  138. package/dist/esm/types/CPUFallbackColormap.d.ts +3 -3
  139. package/dist/esm/types/CPUFallbackColormapData.d.ts +4 -4
  140. package/dist/esm/types/CPUFallbackColormapsData.d.ts +3 -5
  141. package/dist/esm/types/CPUFallbackEnabledElement.d.ts +2 -37
  142. package/dist/esm/types/CPUFallbackLUT.d.ts +4 -3
  143. package/dist/esm/types/CPUFallbackLookupTable.d.ts +2 -2
  144. package/dist/esm/types/CPUFallbackRenderingTools.d.ts +5 -5
  145. package/dist/esm/types/CPUFallbackTransform.d.ts +3 -3
  146. package/dist/esm/types/CPUFallbackViewport.d.ts +6 -6
  147. package/dist/esm/types/CPUFallbackViewportDisplayedArea.d.ts +3 -3
  148. package/dist/esm/types/CPUIImageData.d.ts +17 -9
  149. package/dist/esm/types/Color.d.ts +1 -1
  150. package/dist/esm/types/Colormap.d.ts +7 -7
  151. package/dist/esm/types/ContourData.d.ts +6 -6
  152. package/dist/esm/types/Cornerstone3DConfig.d.ts +7 -7
  153. package/dist/esm/types/CustomEventType.d.ts +2 -2
  154. package/dist/esm/types/EventTypes.d.ts +55 -55
  155. package/dist/esm/types/FlipDirection.d.ts +3 -3
  156. package/dist/esm/types/IActor.d.ts +3 -3
  157. package/dist/esm/types/ICache.d.ts +4 -4
  158. package/dist/esm/types/ICachedGeometry.d.ts +3 -3
  159. package/dist/esm/types/ICachedImage.d.ts +3 -2
  160. package/dist/esm/types/ICachedVolume.d.ts +3 -2
  161. package/dist/esm/types/ICamera.d.ts +3 -3
  162. package/dist/esm/types/IContour.d.ts +4 -3
  163. package/dist/esm/types/IContourSet.d.ts +5 -2
  164. package/dist/esm/types/IDynamicImageVolume.d.ts +3 -3
  165. package/dist/esm/types/IEnabledElement.d.ts +2 -2
  166. package/dist/esm/types/IGeometry.d.ts +4 -4
  167. package/dist/esm/types/IImage.d.ts +48 -11
  168. package/dist/esm/types/IImageCalibration.d.ts +2 -2
  169. package/dist/esm/types/IImageData.d.ts +11 -4
  170. package/dist/esm/types/IImageFrame.d.ts +42 -0
  171. package/dist/esm/types/IImageFrame.js +1 -0
  172. package/dist/esm/types/IImageVolume.d.ts +17 -14
  173. package/dist/esm/types/ILoadObject.d.ts +3 -3
  174. package/dist/esm/types/IPointsManager.d.ts +23 -0
  175. package/dist/esm/types/IPointsManager.js +1 -0
  176. package/dist/esm/types/IRLEVoxelMap.d.ts +16 -0
  177. package/dist/esm/types/IRLEVoxelMap.js +1 -0
  178. package/dist/esm/types/IRegisterImageLoader.d.ts +2 -2
  179. package/dist/esm/types/IRenderingEngine.d.ts +11 -12
  180. package/dist/esm/types/IRetrieveConfiguration.d.ts +6 -6
  181. package/dist/esm/types/IStackInput.d.ts +1 -1
  182. package/dist/esm/types/IStackViewport.d.ts +69 -2
  183. package/dist/esm/types/IStreamingImageVolume.d.ts +3 -4
  184. package/dist/esm/types/IStreamingVolumeProperties.d.ts +5 -5
  185. package/dist/esm/types/ISurface.d.ts +1 -1
  186. package/dist/esm/types/ITransferFunctionNode.d.ts +9 -0
  187. package/dist/esm/types/ITransferFunctionNode.js +1 -0
  188. package/dist/esm/types/IVideoViewport.d.ts +40 -2
  189. package/dist/esm/types/IViewport.d.ts +62 -41
  190. package/dist/esm/types/IVolume.d.ts +2 -2
  191. package/dist/esm/types/IVolumeInput.d.ts +2 -2
  192. package/dist/esm/types/IVolumeViewport.d.ts +17 -16
  193. package/dist/esm/types/IVoxelManager.d.ts +54 -0
  194. package/dist/esm/types/IVoxelManager.js +1 -0
  195. package/dist/esm/types/IWSIViewport.d.ts +16 -0
  196. package/dist/esm/types/IWSIViewport.js +1 -0
  197. package/dist/esm/types/ImageLoadListener.d.ts +2 -2
  198. package/dist/esm/types/ImageLoaderFn.d.ts +3 -3
  199. package/dist/esm/types/ImagePixelModule.d.ts +1 -1
  200. package/dist/esm/types/ImagePlaneModule.d.ts +2 -2
  201. package/dist/esm/types/ImageSliceData.d.ts +3 -3
  202. package/dist/esm/types/ImageVolumeProps.d.ts +4 -4
  203. package/dist/esm/types/Mat3.d.ts +1 -1
  204. package/dist/esm/types/Metadata.d.ts +6 -6
  205. package/dist/esm/types/MetadataModuleTypes.d.ts +65 -0
  206. package/dist/esm/types/MetadataModuleTypes.js +1 -0
  207. package/dist/esm/types/OrientationVectors.d.ts +4 -4
  208. package/dist/esm/types/Plane.d.ts +1 -1
  209. package/dist/esm/types/Point2.d.ts +1 -1
  210. package/dist/esm/types/Point3.d.ts +3 -3
  211. package/dist/esm/types/Point4.d.ts +1 -1
  212. package/dist/esm/types/RGB.d.ts +1 -1
  213. package/dist/esm/types/ScalingParameters.d.ts +7 -7
  214. package/dist/esm/types/StackViewportProperties.d.ts +3 -3
  215. package/dist/esm/types/SurfaceData.d.ts +5 -5
  216. package/dist/esm/types/TransformMatrix2D.d.ts +1 -1
  217. package/dist/esm/types/VideoViewportProperties.d.ts +3 -3
  218. package/dist/esm/types/VideoViewportTypes.d.ts +7 -7
  219. package/dist/esm/types/ViewportInputOptions.d.ts +7 -7
  220. package/dist/esm/types/ViewportPreset.d.ts +1 -1
  221. package/dist/esm/types/ViewportProperties.d.ts +5 -5
  222. package/dist/esm/types/VolumeLoaderFn.d.ts +4 -3
  223. package/dist/esm/types/VolumeProps.d.ts +10 -5
  224. package/dist/esm/types/VolumeViewportProperties.d.ts +3 -3
  225. package/dist/esm/types/WSIViewportProperties.d.ts +3 -0
  226. package/dist/esm/types/WSIViewportProperties.js +1 -0
  227. package/dist/esm/types/WSIViewportTypes.d.ts +13 -0
  228. package/dist/esm/types/WSIViewportTypes.js +1 -0
  229. package/dist/esm/types/displayArea.d.ts +4 -4
  230. package/dist/esm/types/index.d.ts +16 -8
  231. package/dist/esm/types/voi.d.ts +4 -4
  232. package/dist/esm/utilities/PointsManager.d.ts +8 -10
  233. package/dist/esm/utilities/ProgressiveIterator.d.ts +1 -1
  234. package/dist/esm/utilities/ProgressiveIterator.js +3 -1
  235. package/dist/esm/utilities/RLEVoxelMap.d.ts +3 -8
  236. package/dist/esm/utilities/RLEVoxelMap.js +19 -19
  237. package/dist/esm/utilities/VoxelManager.d.ts +82 -20
  238. package/dist/esm/utilities/VoxelManager.js +466 -60
  239. package/dist/esm/utilities/actorCheck.d.ts +1 -1
  240. package/dist/esm/utilities/applyPreset.d.ts +2 -2
  241. package/dist/esm/utilities/calculateViewportsSpatialRegistration.d.ts +1 -1
  242. package/dist/esm/utilities/calculateViewportsSpatialRegistration.js +5 -5
  243. package/dist/esm/utilities/calibratedPixelSpacingMetadataProvider.d.ts +1 -1
  244. package/dist/esm/utilities/colormap.d.ts +1 -1
  245. package/dist/esm/utilities/convertStackToVolumeViewport.d.ts +2 -2
  246. package/dist/esm/utilities/convertStackToVolumeViewport.js +4 -4
  247. package/dist/esm/utilities/convertVolumeToStackViewport.d.ts +1 -1
  248. package/dist/esm/utilities/convertVolumeToStackViewport.js +3 -2
  249. package/dist/esm/utilities/createLinearRGBTransferFunction.d.ts +1 -1
  250. package/dist/esm/utilities/createLinearRGBTransferFunction.js +1 -3
  251. package/dist/esm/utilities/createSigmoidRGBTransferFunction.d.ts +2 -3
  252. package/dist/esm/utilities/createSigmoidRGBTransferFunction.js +8 -7
  253. package/dist/esm/utilities/decimate.d.ts +1 -1
  254. package/dist/esm/utilities/eventListener/TargetEventListeners.js +5 -3
  255. package/dist/esm/utilities/generateVolumePropsFromImageIds.d.ts +1 -1
  256. package/dist/esm/utilities/generateVolumePropsFromImageIds.js +33 -80
  257. package/dist/esm/utilities/genericMetadataProvider.d.ts +9 -2
  258. package/dist/esm/utilities/genericMetadataProvider.js +7 -1
  259. package/dist/esm/utilities/getBufferConfiguration.d.ts +2 -3
  260. package/dist/esm/utilities/getBufferConfiguration.js +5 -15
  261. package/dist/esm/utilities/getClosestImageId.js +1 -1
  262. package/dist/esm/utilities/getClosestStackImageIndexForPoint.d.ts +1 -1
  263. package/dist/esm/utilities/getClosestStackImageIndexForPoint.js +2 -2
  264. package/dist/esm/utilities/getCurrentVolumeViewportSlice.d.ts +4 -5
  265. package/dist/esm/utilities/getCurrentVolumeViewportSlice.js +8 -58
  266. package/dist/esm/utilities/getImageLegacy.d.ts +1 -1
  267. package/dist/esm/utilities/getImageLegacy.js +1 -1
  268. package/dist/esm/utilities/getImageSliceDataForVolumeViewport.d.ts +1 -1
  269. package/dist/esm/utilities/getMinMax.d.ts +2 -1
  270. package/dist/esm/utilities/getScalingParameters.d.ts +1 -1
  271. package/dist/esm/utilities/getScalingParameters.js +4 -4
  272. package/dist/esm/utilities/getSpacingInNormalDirection.d.ts +2 -2
  273. package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.d.ts +1 -1
  274. package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.js +2 -2
  275. package/dist/esm/utilities/getViewportImageCornersInWorld.d.ts +1 -1
  276. package/dist/esm/utilities/getViewportImageIds.d.ts +1 -1
  277. package/dist/esm/utilities/getViewportImageIds.js +1 -1
  278. package/dist/esm/utilities/getViewportModality.d.ts +7 -3
  279. package/dist/esm/utilities/getViewportModality.js +9 -6
  280. package/dist/esm/utilities/getViewportsWithImageURI.d.ts +2 -2
  281. package/dist/esm/utilities/getViewportsWithVolumeId.d.ts +2 -2
  282. package/dist/esm/utilities/getViewportsWithVolumeId.js +3 -7
  283. package/dist/esm/utilities/getVoiFromSigmoidRGBTransferFunction.d.ts +1 -1
  284. package/dist/esm/utilities/getVolumeActorCorners.d.ts +2 -2
  285. package/dist/esm/utilities/getVolumeId.js +2 -2
  286. package/dist/esm/utilities/getVolumeSliceRangeInfo.d.ts +1 -1
  287. package/dist/esm/utilities/getVolumeViewportScrollInfo.d.ts +1 -1
  288. package/dist/esm/utilities/getVolumeViewportsContainingSameVolumes.d.ts +2 -2
  289. package/dist/esm/utilities/hasFloatScalingParameters.d.ts +1 -1
  290. package/dist/esm/utilities/imageRetrieveMetadataProvider.d.ts +1 -1
  291. package/dist/esm/utilities/imageToWorldCoords.d.ts +1 -1
  292. package/dist/esm/utilities/imageToWorldCoords.js +2 -2
  293. package/dist/esm/utilities/index.d.ts +3 -8
  294. package/dist/esm/utilities/index.js +4 -8
  295. package/dist/esm/utilities/indexWithinDimensions.d.ts +1 -1
  296. package/dist/esm/utilities/invertRgbTransferFunction.d.ts +2 -1
  297. package/dist/esm/utilities/isEqual.js +6 -1
  298. package/dist/esm/utilities/isPTPrescaledWithSUV.d.ts +1 -1
  299. package/dist/esm/utilities/isPTPrescaledWithSUV.js +1 -1
  300. package/dist/esm/utilities/isValidVolume.js +1 -1
  301. package/dist/esm/utilities/loadImageToCanvas.d.ts +6 -6
  302. package/dist/esm/utilities/loadImageToCanvas.js +1 -1
  303. package/dist/esm/utilities/makeVolumeMetadata.d.ts +2 -2
  304. package/dist/esm/utilities/makeVolumeMetadata.js +5 -5
  305. package/dist/esm/utilities/planar.d.ts +2 -2
  306. package/dist/esm/utilities/renderToCanvasCPU.d.ts +1 -1
  307. package/dist/esm/utilities/renderToCanvasGPU.d.ts +2 -2
  308. package/dist/esm/utilities/renderToCanvasGPU.js +1 -1
  309. package/dist/esm/utilities/scaleRgbTransferFunction.d.ts +2 -1
  310. package/dist/esm/utilities/snapFocalPointToSlice.d.ts +1 -1
  311. package/dist/esm/utilities/sortImageIdsAndGetSpacing.d.ts +5 -5
  312. package/dist/esm/utilities/sortImageIdsAndGetSpacing.js +2 -1
  313. package/dist/esm/utilities/transformCanvasToIJK.d.ts +2 -2
  314. package/dist/esm/utilities/transformIJKToCanvas.d.ts +1 -1
  315. package/dist/esm/utilities/triggerEvent.js +1 -1
  316. package/dist/esm/utilities/updateVTKImageDataWithCornerstoneImage.d.ts +2 -2
  317. package/dist/esm/utilities/updateVTKImageDataWithCornerstoneImage.js +1 -1
  318. package/dist/esm/utilities/uuidv4.js +3 -1
  319. package/dist/esm/utilities/worldToImageCoords.d.ts +1 -1
  320. package/dist/esm/utilities/worldToImageCoords.js +2 -2
  321. package/dist/umd/index.js +1 -1
  322. package/dist/umd/index.js.map +1 -1
  323. package/package.json +6 -6
  324. package/dist/esm/cache/utils/restoreImagesFromBuffer.d.ts +0 -2
  325. package/dist/esm/cache/utils/restoreImagesFromBuffer.js +0 -28
  326. package/dist/esm/enums/SharedArrayBufferModes.d.ts +0 -6
  327. package/dist/esm/enums/SharedArrayBufferModes.js +0 -7
  328. package/dist/esm/utilities/cacheUtils.d.ts +0 -2
  329. package/dist/esm/utilities/cacheUtils.js +0 -86
  330. package/dist/esm/utilities/createFloat32SharedArray.d.ts +0 -2
  331. package/dist/esm/utilities/createFloat32SharedArray.js +0 -27
  332. package/dist/esm/utilities/createInt16SharedArray.d.ts +0 -2
  333. package/dist/esm/utilities/createInt16SharedArray.js +0 -11
  334. package/dist/esm/utilities/createUInt16SharedArray.d.ts +0 -2
  335. package/dist/esm/utilities/createUInt16SharedArray.js +0 -11
  336. package/dist/esm/utilities/createUint8SharedArray.d.ts +0 -2
  337. package/dist/esm/utilities/createUint8SharedArray.js +0 -12
  338. package/dist/esm/utilities/getScalarDataType.d.ts +0 -2
  339. package/dist/esm/utilities/getScalarDataType.js +0 -19
  340. package/dist/esm/utilities/isTypedArray.d.ts +0 -1
  341. package/dist/esm/utilities/isTypedArray.js +0 -11
@@ -1,56 +1,12 @@
1
1
  import '@kitware/vtk.js/Rendering/Profiles/Volume';
2
- import vtkImageData from '@kitware/vtk.js/Common/DataModel/ImageData';
3
- import vtkDataArray from '@kitware/vtk.js/Common/Core/DataArray';
4
2
  import { ImageVolume } from '../cache/classes/ImageVolume';
5
3
  import cache from '../cache/cache';
6
4
  import Events from '../enums/Events';
7
5
  import eventTarget from '../eventTarget';
8
6
  import triggerEvent from '../utilities/triggerEvent';
9
- import { createUint16SharedArray, createUint8SharedArray, createFloat32SharedArray, generateVolumePropsFromImageIds, getBufferConfiguration, uuidv4, } from '../utilities';
10
- import { getConfiguration, getShouldUseSharedArrayBuffer } from '../init';
11
- import { performCacheOptimizationForVolume, setupCacheOptimizationEventListener, } from '../utilities/cacheUtils';
12
- function addScalarDataToImageData(imageData, scalarData, dataArrayAttrs) {
13
- const scalarArray = vtkDataArray.newInstance({
14
- name: `Pixels`,
15
- values: scalarData,
16
- ...dataArrayAttrs,
17
- });
18
- imageData.getPointData().setScalars(scalarArray);
19
- }
20
- function addScalarDataArraysToImageData(imageData, scalarDataArrays, dataArrayAttrs) {
21
- scalarDataArrays.forEach((scalarData, i) => {
22
- const vtkScalarArray = vtkDataArray.newInstance({
23
- name: `timePoint-${i}`,
24
- values: scalarData,
25
- ...dataArrayAttrs,
26
- });
27
- imageData.getPointData().addArray(vtkScalarArray);
28
- });
29
- imageData.getPointData().setActiveScalars('timePoint-0');
30
- }
31
- function createInternalVTKRepresentation(volume) {
32
- const { dimensions, metadata, spacing, direction, origin } = volume;
33
- const { PhotometricInterpretation } = metadata;
34
- let numComponents = 1;
35
- if (PhotometricInterpretation === 'RGB') {
36
- numComponents = 3;
37
- }
38
- const imageData = vtkImageData.newInstance();
39
- const dataArrayAttrs = { numberOfComponents: numComponents };
40
- imageData.setDimensions(dimensions);
41
- imageData.setSpacing(spacing);
42
- imageData.setDirection(direction);
43
- imageData.setOrigin(origin);
44
- if (volume.isDynamicVolume()) {
45
- const scalarDataArrays = (volume).getScalarDataArrays();
46
- addScalarDataArraysToImageData(imageData, scalarDataArrays, dataArrayAttrs);
47
- }
48
- else {
49
- const scalarData = volume.getScalarData();
50
- addScalarDataToImageData(imageData, scalarData, dataArrayAttrs);
51
- }
52
- return imageData;
53
- }
7
+ import uuidv4 from '../utilities/uuidv4';
8
+ import VoxelManager from '../utilities/VoxelManager';
9
+ import { createAndCacheLocalImage, createAndCacheDerivedImages, } from './imageLoader';
54
10
  const volumeLoaders = {};
55
11
  let unknownVolumeLoader;
56
12
  function loadVolumeFromVolumeLoader(volumeId, options) {
@@ -65,7 +21,6 @@ function loadVolumeFromVolumeLoader(volumeId, options) {
65
21
  loader = unknownVolumeLoader;
66
22
  }
67
23
  const volumeLoadObject = loader(volumeId, options);
68
- setupCacheOptimizationEventListener(volumeId);
69
24
  volumeLoadObject.promise.then(function (volume) {
70
25
  triggerEvent(eventTarget, Events.VOLUME_LOADED, { volume });
71
26
  }, function (error) {
@@ -87,179 +42,141 @@ export function loadVolume(volumeId, options = { imageIds: [] }) {
87
42
  }
88
43
  volumeLoadObject = loadVolumeFromVolumeLoader(volumeId, options);
89
44
  return volumeLoadObject.promise.then((volume) => {
90
- volume.imageData = createInternalVTKRepresentation(volume);
91
45
  return volume;
92
46
  });
93
47
  }
94
- export async function createAndCacheEmptyVolume(volumeId, options) {
48
+ export async function createAndCacheVolume(volumeId, options) {
95
49
  if (volumeId === undefined) {
96
- throw new Error('createAndCacheEmptyVolume: parameter volumeId must not be undefined');
50
+ throw new Error('createAndCacheVolume: parameter volumeId must not be undefined');
97
51
  }
98
52
  let volumeLoadObject = cache.getVolumeLoadObject(volumeId);
99
53
  if (volumeLoadObject !== undefined) {
100
54
  return volumeLoadObject.promise;
101
55
  }
102
56
  volumeLoadObject = loadVolumeFromVolumeLoader(volumeId, options);
103
- volumeLoadObject.promise.then((volume) => {
104
- volume.imageData = createInternalVTKRepresentation(volume);
105
- });
106
- cache.putVolumeLoadObject(volumeId, volumeLoadObject).catch((err) => {
107
- throw err;
108
- });
57
+ cache.putVolumeLoadObject(volumeId, volumeLoadObject);
109
58
  return volumeLoadObject.promise;
110
59
  }
111
- export async function createAndCacheDerivedVolume(referencedVolumeId, options) {
60
+ export function createAndCacheDerivedVolume(referencedVolumeId, options) {
112
61
  const referencedVolume = cache.getVolume(referencedVolumeId);
113
62
  if (!referencedVolume) {
114
63
  throw new Error(`Cannot created derived volume: Referenced volume with id ${referencedVolumeId} does not exist.`);
115
64
  }
116
65
  let { volumeId } = options;
117
- const { targetBuffer } = options;
118
66
  if (volumeId === undefined) {
119
67
  volumeId = uuidv4();
120
68
  }
121
69
  const { metadata, dimensions, spacing, origin, direction } = referencedVolume;
122
- const scalarData = referencedVolume.getScalarData();
123
- const scalarLength = scalarData.length;
124
- const { volumeScalarData, numBytes } = generateVolumeScalarData(targetBuffer, scalarLength);
125
- const scalarArray = vtkDataArray.newInstance({
126
- name: 'Pixels',
127
- numberOfComponents: 1,
128
- values: volumeScalarData,
129
- });
130
- const derivedImageData = vtkImageData.newInstance();
131
- derivedImageData.setDimensions(dimensions);
132
- derivedImageData.setSpacing(spacing);
133
- derivedImageData.setDirection(direction);
134
- derivedImageData.setOrigin(origin);
135
- derivedImageData.getPointData().setScalars(scalarArray);
136
70
  const referencedImageIds = referencedVolume.imageIds ?? [];
137
- let derivedVolumeImageIds = [];
138
- if (referencedImageIds.length) {
139
- derivedVolumeImageIds = referencedImageIds.map((imageId) => {
140
- return `derived:${imageId}`;
141
- });
71
+ const byteLength = referencedImageIds.reduce((total, imageId) => {
72
+ const image = cache.getImage(imageId);
73
+ return total + image.sizeInBytes;
74
+ }, 0);
75
+ const isCacheable = cache.isCacheable(byteLength);
76
+ if (!isCacheable) {
77
+ throw new Error(`Cannot created derived volume: Referenced volume with id ${referencedVolumeId} does not exist.`);
142
78
  }
79
+ const derivedImages = createAndCacheDerivedImages(referencedImageIds, {
80
+ targetBufferType: options.targetBufferType,
81
+ });
82
+ const dataType = derivedImages[0].dataType;
83
+ const derivedVolumeImageIds = derivedImages.map((image) => image.imageId);
143
84
  const derivedVolume = new ImageVolume({
144
85
  volumeId,
86
+ dataType,
145
87
  metadata: structuredClone(metadata),
146
88
  dimensions: [dimensions[0], dimensions[1], dimensions[2]],
147
89
  spacing,
148
90
  origin,
149
91
  direction,
150
- imageData: derivedImageData,
151
- scalarData: volumeScalarData,
152
- sizeInBytes: numBytes,
153
92
  referencedVolumeId,
154
93
  imageIds: derivedVolumeImageIds,
155
94
  referencedImageIds: referencedVolume.imageIds ?? [],
156
95
  });
157
- const volumeLoadObject = {
158
- promise: Promise.resolve(derivedVolume),
159
- };
160
- await cache.putVolumeLoadObject(volumeId, volumeLoadObject);
161
- performCacheOptimizationForVolume(derivedVolume);
96
+ cache.putVolumeSync(volumeId, derivedVolume);
162
97
  return derivedVolume;
163
98
  }
164
- export function createLocalVolume(options, volumeId, preventCache = false) {
165
- const { metadata, dimensions, spacing, origin, direction, targetBuffer } = options;
166
- let { scalarData } = options;
167
- const validDataTypes = [
168
- 'Uint8Array',
169
- 'Float32Array',
170
- 'Uint16Array',
171
- 'Int16Array',
172
- ];
173
- const scalarLength = dimensions[0] * dimensions[1] * dimensions[2];
174
- if (!scalarData || !validDataTypes.includes(scalarData.constructor.name)) {
175
- if (!targetBuffer?.type || !validDataTypes.includes(targetBuffer.type)) {
176
- throw new Error('createLocalVolume: parameter scalarData must be provided and must be either Uint8Array, Float32Array, Uint16Array or Int16Array');
177
- }
178
- ({ volumeScalarData: scalarData } = generateVolumeScalarData(targetBuffer, scalarLength));
99
+ export async function createAndCacheVolumeFromImages(volumeId, imageIds) {
100
+ if (imageIds === undefined) {
101
+ throw new Error('createAndCacheVolumeFromImages: parameter imageIds must not be undefined');
179
102
  }
180
103
  if (volumeId === undefined) {
181
- volumeId = uuidv4();
104
+ throw new Error('createAndCacheVolumeFromImages: parameter volumeId must not be undefined');
182
105
  }
183
106
  const cachedVolume = cache.getVolume(volumeId);
184
107
  if (cachedVolume) {
185
108
  return cachedVolume;
186
109
  }
187
- const numBytes = scalarData ? scalarData.buffer.byteLength : scalarLength * 4;
188
- const isCacheable = cache.isCacheable(numBytes);
110
+ const volume = (await createAndCacheVolume(volumeId, {
111
+ imageIds,
112
+ }));
113
+ return volume;
114
+ }
115
+ export function createLocalVolume(volumeId, options = {}) {
116
+ const { metadata, dimensions, spacing, origin, direction, scalarData, targetBufferType, preventCache = false, } = options;
117
+ const cachedVolume = cache.getVolume(volumeId);
118
+ if (cachedVolume) {
119
+ return cachedVolume;
120
+ }
121
+ const sliceLength = dimensions[0] * dimensions[1];
122
+ const dataType = scalarData
123
+ ? scalarData.constructor.name
124
+ : targetBufferType;
125
+ const totalNumberOfVoxels = sliceLength * dimensions[2];
126
+ let byteLength;
127
+ switch (dataType) {
128
+ case 'Uint8Array':
129
+ case 'Int8Array':
130
+ byteLength = totalNumberOfVoxels;
131
+ break;
132
+ case 'Uint16Array':
133
+ case 'Int16Array':
134
+ byteLength = totalNumberOfVoxels * 2;
135
+ break;
136
+ case 'Float32Array':
137
+ byteLength = totalNumberOfVoxels * 4;
138
+ break;
139
+ }
140
+ const isCacheable = cache.isCacheable(byteLength);
189
141
  if (!isCacheable) {
190
- throw new Error(Events.CACHE_SIZE_EXCEEDED);
142
+ throw new Error(`Cannot created derived volume: Volume with id ${volumeId} is not cacheable.`);
143
+ }
144
+ const imageIds = [];
145
+ const derivedImages = [];
146
+ for (let i = 0; i < dimensions[2]; i++) {
147
+ const imageId = `${volumeId}_slice_${i}`;
148
+ imageIds.push(imageId);
149
+ const sliceData = scalarData.subarray(i * sliceLength, (i + 1) * sliceLength);
150
+ const derivedImage = createAndCacheLocalImage(imageId, {
151
+ scalarData: sliceData,
152
+ dimensions: [dimensions[0], dimensions[1]],
153
+ spacing: [spacing[0], spacing[1]],
154
+ origin,
155
+ direction,
156
+ targetBufferType: dataType,
157
+ });
158
+ derivedImages.push(derivedImage);
191
159
  }
192
- const scalarArray = vtkDataArray.newInstance({
193
- name: 'Pixels',
194
- numberOfComponents: 1,
195
- values: scalarData,
196
- });
197
- const imageData = vtkImageData.newInstance();
198
- imageData.setDimensions(dimensions);
199
- imageData.setSpacing(spacing);
200
- imageData.setDirection(direction);
201
- imageData.setOrigin(origin);
202
- imageData.getPointData().setScalars(scalarArray);
203
- const derivedVolume = new ImageVolume({
160
+ const imageVolume = new ImageVolume({
204
161
  volumeId,
205
162
  metadata: structuredClone(metadata),
206
163
  dimensions: [dimensions[0], dimensions[1], dimensions[2]],
207
164
  spacing,
208
165
  origin,
209
166
  direction,
210
- imageData: imageData,
211
- scalarData,
212
- sizeInBytes: numBytes,
213
- referencedImageIds: options.referencedImageIds || [],
214
- referencedVolumeId: options.referencedVolumeId,
215
- imageIds: options.imageIds || [],
167
+ imageIds,
168
+ dataType,
216
169
  });
217
- if (preventCache) {
218
- return derivedVolume;
219
- }
220
- const volumeLoadObject = {
221
- promise: Promise.resolve(derivedVolume),
222
- };
223
- cache.putVolumeLoadObject(volumeId, volumeLoadObject);
224
- performCacheOptimizationForVolume(derivedVolume);
225
- return derivedVolume;
226
- }
227
- export async function createAndCacheVolumeFromImages(volumeId, imageIds, options = {}) {
228
- const { preventCache = false } = options;
229
- if (imageIds === undefined) {
230
- throw new Error('createAndCacheVolumeFromImages: parameter imageIds must not be undefined');
231
- }
232
- if (volumeId === undefined) {
233
- throw new Error('createAndCacheVolumeFromImages: parameter volumeId must not be undefined');
234
- }
235
- const cachedVolume = cache.getVolume(volumeId);
236
- if (cachedVolume) {
237
- return Promise.resolve(cachedVolume);
238
- }
239
- const volumeProps = generateVolumePropsFromImageIds(imageIds, volumeId);
240
- const imagePromises = volumeProps.imageIds.map((imageId, imageIdIndex) => {
241
- const imageLoadObject = cache.getImageLoadObject(imageId);
242
- return imageLoadObject.promise.then((image) => {
243
- const pixelData = image.getPixelData();
244
- const offset = imageIdIndex * image.rows * image.columns;
245
- volumeProps.scalarData.set(pixelData, offset);
246
- });
247
- });
248
- await Promise.all(imagePromises);
249
- const volume = new ImageVolume({
250
- ...volumeProps,
251
- referencedImageIds: imageIds,
252
- ...options,
170
+ const voxelManager = VoxelManager.createImageVolumeVoxelManager({
171
+ imageIds,
172
+ dimensions,
173
+ numberOfComponents: 1,
253
174
  });
254
- performCacheOptimizationForVolume(volume);
255
- const volumeLoadObject = {
256
- promise: Promise.resolve(volume),
257
- };
258
- if (preventCache) {
259
- return volumeLoadObject.promise;
175
+ imageVolume.voxelManager = voxelManager;
176
+ if (!preventCache) {
177
+ cache.putVolumeSync(volumeId, imageVolume);
260
178
  }
261
- cache.putVolumeLoadObject(volumeId, volumeLoadObject);
262
- return volumeLoadObject.promise;
179
+ return imageVolume;
263
180
  }
264
181
  export function registerVolumeLoader(scheme, volumeLoader) {
265
182
  volumeLoaders[scheme] = volumeLoader;
@@ -275,51 +192,15 @@ export function registerUnknownVolumeLoader(volumeLoader) {
275
192
  export function getUnknownVolumeLoaderSchema() {
276
193
  return unknownVolumeLoader.name;
277
194
  }
278
- export async function createAndCacheDerivedSegmentationVolume(referencedVolumeId, options = {}) {
195
+ export function createAndCacheDerivedSegmentationVolume(referencedVolumeId, options = {}) {
279
196
  return createAndCacheDerivedVolume(referencedVolumeId, {
280
197
  ...options,
281
- targetBuffer: {
282
- type: 'Uint8Array',
283
- },
198
+ targetBufferType: 'Uint8Array',
284
199
  });
285
200
  }
286
- export async function createLocalSegmentationVolume(options, volumeId, preventCache = false) {
201
+ export function createLocalSegmentationVolume(options, volumeId, preventCache = false) {
287
202
  if (!options.scalarData) {
288
203
  options.scalarData = new Uint8Array(options.dimensions[0] * options.dimensions[1] * options.dimensions[2]);
289
204
  }
290
- return createLocalVolume(options, volumeId, preventCache);
291
- }
292
- function generateVolumeScalarData(targetBuffer, scalarLength) {
293
- const { useNorm16Texture } = getConfiguration().rendering;
294
- const { TypedArrayConstructor, numBytes } = getBufferConfiguration(targetBuffer?.type, scalarLength, {
295
- use16BitTexture: useNorm16Texture,
296
- isVolumeBuffer: true,
297
- });
298
- const isCacheable = cache.isCacheable(numBytes);
299
- if (!isCacheable) {
300
- throw new Error(Events.CACHE_SIZE_EXCEEDED);
301
- }
302
- let volumeScalarData;
303
- if (targetBuffer?.sharedArrayBuffer ?? getShouldUseSharedArrayBuffer()) {
304
- switch (targetBuffer.type) {
305
- case 'Float32Array':
306
- volumeScalarData = createFloat32SharedArray(scalarLength);
307
- break;
308
- case 'Uint8Array':
309
- volumeScalarData = createUint8SharedArray(scalarLength);
310
- break;
311
- case 'Uint16Array':
312
- volumeScalarData = createUint16SharedArray(scalarLength);
313
- break;
314
- case 'Int16Array':
315
- volumeScalarData = createUint16SharedArray(scalarLength);
316
- break;
317
- default:
318
- throw new Error('generateVolumeScalarData: SharedArrayBuffer is not supported for the specified target buffer type');
319
- }
320
- }
321
- else {
322
- volumeScalarData = new TypedArrayConstructor(scalarLength);
323
- }
324
- return { volumeScalarData, numBytes };
205
+ return createLocalVolume(volumeId, { ...options, preventCache });
325
206
  }
@@ -1,7 +1,5 @@
1
- export declare function addProvider(provider: (type: string, ...query: string[]) => any, priority?: number): void;
2
- export declare function removeProvider(provider: (type: string, query: any) => {
3
- any: any;
4
- }): void;
1
+ export declare function addProvider(provider: (type: string, ...query: string[]) => unknown, priority?: number): void;
2
+ export declare function removeProvider(provider: (type: string, query: unknown) => unknown): void;
5
3
  export declare function removeAllProviders(): void;
6
4
  declare function getMetaData(type: string, ...queries: any[]): any;
7
5
  export { getMetaData as get };
@@ -1,18 +1,16 @@
1
1
  import RequestType from '../enums/RequestType';
2
- import { IImage } from '../types';
3
- type AdditionalDetails = {
2
+ import type { IImage } from '../types';
3
+ interface AdditionalDetails {
4
4
  imageId?: string;
5
5
  volumeId?: string;
6
- };
7
- type RequestDetailsInterface = {
6
+ }
7
+ interface RequestDetailsInterface {
8
8
  requestFn: () => Promise<IImage | void>;
9
9
  type: RequestType;
10
10
  additionalDetails: AdditionalDetails;
11
- };
11
+ }
12
12
  type RequestPool = {
13
- [name in RequestType]: {
14
- [key: number]: RequestDetailsInterface[];
15
- };
13
+ [name in RequestType]: Record<number, RequestDetailsInterface[]>;
16
14
  };
17
15
  declare class RequestPoolManager {
18
16
  private id;
@@ -38,7 +36,7 @@ declare class RequestPoolManager {
38
36
  private getNextRequest;
39
37
  protected startGrabbing(): void;
40
38
  protected startAgain(): void;
41
- protected getSortedPriorityGroups(type: string): Array<number>;
39
+ protected getSortedPriorityGroups(type: string): number[];
42
40
  getRequestPool(): RequestPool;
43
41
  }
44
42
  export { RequestPoolManager };
@@ -1,5 +1,5 @@
1
1
  import RequestType from '../enums/RequestType';
2
- import { uuidv4 } from '../utilities';
2
+ import uuidv4 from '../utilities/uuidv4';
3
3
  class RequestPoolManager {
4
4
  constructor(id) {
5
5
  this.numRequests = {
@@ -1,7 +1,7 @@
1
- type AABB2 = {
1
+ interface AABB2 {
2
2
  minX: number;
3
3
  maxX: number;
4
4
  minY: number;
5
5
  maxY: number;
6
- };
6
+ }
7
7
  export type { AABB2 as default };
@@ -1,9 +1,9 @@
1
- type AABB3 = {
1
+ interface AABB3 {
2
2
  minX: number;
3
3
  maxX: number;
4
4
  minY: number;
5
5
  maxY: number;
6
6
  minZ: number;
7
7
  maxZ: number;
8
- };
8
+ }
9
9
  export type { AABB3 as default };
@@ -1,11 +1,11 @@
1
- import { VolumeActor } from './IActor';
2
- import Point3 from './Point3';
3
- type ActorSliceRange = {
1
+ import type { VolumeActor } from './IActor';
2
+ import type Point3 from './Point3';
3
+ interface ActorSliceRange {
4
4
  actor: VolumeActor;
5
5
  viewPlaneNormal: Point3;
6
6
  focalPoint: Point3;
7
7
  min: number;
8
8
  max: number;
9
9
  current: number;
10
- };
11
- export default ActorSliceRange;
10
+ }
11
+ export type { ActorSliceRange as default };
@@ -1,3 +1,3 @@
1
1
  import type Point2 from './Point2';
2
2
  type BoundsIJK = [Point2, Point2, Point2];
3
- export default BoundsIJK;
3
+ export type { BoundsIJK as default };
@@ -1,3 +1,3 @@
1
1
  import type Point2 from './Point3';
2
2
  type BoundsLPS = [Point2, Point2, Point2];
3
- export default BoundsLPS;
3
+ export type { BoundsLPS };
@@ -1,5 +1,5 @@
1
- import Point4 from './Point4';
2
- import CPUFallbackLookupTable from './CPUFallbackLookupTable';
1
+ import type Point4 from './Point4';
2
+ import type CPUFallbackLookupTable from './CPUFallbackLookupTable';
3
3
  interface CPUFallbackColormap {
4
4
  getId: () => string;
5
5
  getColorSchemeName: () => string;
@@ -17,4 +17,4 @@ interface CPUFallbackColormap {
17
17
  createLookupTable: () => CPUFallbackLookupTable;
18
18
  isValidIndex: (index: number) => boolean;
19
19
  }
20
- export default CPUFallbackColormap;
20
+ export type { CPUFallbackColormap as default };
@@ -1,10 +1,10 @@
1
- import Point4 from './Point4';
2
- type CPUFallbackColormapData = {
1
+ import type Point4 from './Point4';
2
+ interface CPUFallbackColormapData {
3
3
  name: string;
4
4
  numOfColors?: number;
5
5
  colors?: Point4[];
6
6
  segmentedData?: unknown;
7
7
  numColors?: number;
8
8
  gamma?: number;
9
- };
10
- export default CPUFallbackColormapData;
9
+ }
10
+ export type { CPUFallbackColormapData as default };
@@ -1,5 +1,3 @@
1
- import CPUFallbackColormapData from './CPUFallbackColormapData';
2
- type CPUFallbackColormapsData = {
3
- [key: string]: CPUFallbackColormapData;
4
- };
5
- export default CPUFallbackColormapsData;
1
+ import type CPUFallbackColormapData from './CPUFallbackColormapData';
2
+ type CPUFallbackColormapsData = Record<string, CPUFallbackColormapData>;
3
+ export type { CPUFallbackColormapsData };
@@ -1,37 +1,2 @@
1
- import Point2 from './Point2';
2
- import Point3 from './Point3';
3
- import Mat3 from './Mat3';
4
- import IImage from './IImage';
5
- import CPUFallbackViewport from './CPUFallbackViewport';
6
- import CPUFallbackTransform from './CPUFallbackTransform';
7
- import CPUFallbackColormap from './CPUFallbackColormap';
8
- import CPUFallbackRenderingTools from './CPUFallbackRenderingTools';
9
- import { ImagePlaneModule } from './ImagePlaneModule';
10
- import { ImagePixelModule } from './ImagePixelModule';
11
- interface CPUFallbackEnabledElement {
12
- scale?: number;
13
- pan?: Point2;
14
- zoom?: number;
15
- rotation?: number;
16
- image?: IImage;
17
- canvas?: HTMLCanvasElement;
18
- viewport?: CPUFallbackViewport;
19
- colormap?: CPUFallbackColormap;
20
- options?: {
21
- [key: string]: unknown;
22
- colormap?: CPUFallbackColormap;
23
- };
24
- renderingTools?: CPUFallbackRenderingTools;
25
- transform?: CPUFallbackTransform;
26
- invalid?: boolean;
27
- needsRedraw?: boolean;
28
- metadata?: {
29
- direction?: Mat3;
30
- dimensions?: Point3;
31
- spacing?: Point3;
32
- origin?: Point3;
33
- imagePlaneModule?: ImagePlaneModule;
34
- imagePixelModule?: ImagePixelModule;
35
- };
36
- }
37
- export default CPUFallbackEnabledElement;
1
+ import type { CPUFallbackEnabledElement } from './IImage';
2
+ export type { CPUFallbackEnabledElement as default };
@@ -1,4 +1,5 @@
1
- type CPUFallbackLUT = {
1
+ interface CPUFallbackLUT {
2
2
  lut: number[];
3
- };
4
- export default CPUFallbackLUT;
3
+ id?: string;
4
+ }
5
+ export type { CPUFallbackLUT as default };
@@ -1,4 +1,4 @@
1
- import Point4 from './Point4';
1
+ import type Point4 from './Point4';
2
2
  interface CPUFallbackLookupTable {
3
3
  setNumberOfTableValues: (number: number) => void;
4
4
  setRamp: (ramp: string) => void;
@@ -12,4 +12,4 @@ interface CPUFallbackLookupTable {
12
12
  build: (force: boolean) => void;
13
13
  setTableValue(index: number, rgba: Point4): any;
14
14
  }
15
- export default CPUFallbackLookupTable;
15
+ export type { CPUFallbackLookupTable as default };
@@ -1,6 +1,6 @@
1
- import CPUFallbackLookupTable from './CPUFallbackLookupTable';
2
- import CPUFallbackLUT from './CPUFallbackLUT';
3
- type CPUFallbackRenderingTools = {
1
+ import type CPUFallbackLookupTable from './CPUFallbackLookupTable';
2
+ import type CPUFallbackLUT from './CPUFallbackLUT';
3
+ interface CPUFallbackRenderingTools {
4
4
  renderCanvas?: HTMLCanvasElement;
5
5
  lastRenderedIsColor?: boolean;
6
6
  lastRenderedImageId?: string;
@@ -19,5 +19,5 @@ type CPUFallbackRenderingTools = {
19
19
  colormapId?: string;
20
20
  colorLUT?: CPUFallbackLookupTable;
21
21
  renderCanvasData?: ImageData;
22
- };
23
- export default CPUFallbackRenderingTools;
22
+ }
23
+ export type { CPUFallbackRenderingTools as default };
@@ -1,5 +1,5 @@
1
- import Point2 from './Point2';
2
- import TransformMatrix2D from './TransformMatrix2D';
1
+ import type Point2 from './Point2';
2
+ import type TransformMatrix2D from './TransformMatrix2D';
3
3
  interface CPUFallbackTransform {
4
4
  reset: () => void;
5
5
  clone: () => CPUFallbackTransform;
@@ -11,4 +11,4 @@ interface CPUFallbackTransform {
11
11
  scale: (sx: number, sy: number) => void;
12
12
  transformPoint: (point: Point2) => Point2;
13
13
  }
14
- export default CPUFallbackTransform;
14
+ export type { CPUFallbackTransform as default };
@@ -1,7 +1,7 @@
1
- import CPUFallbackViewportDisplayedArea from './CPUFallbackViewportDisplayedArea';
2
- import CPUFallbackColormap from './CPUFallbackColormap';
3
- import CPUFallbackLUT from './CPUFallbackLUT';
4
- type CPUFallbackViewport = {
1
+ import type CPUFallbackViewportDisplayedArea from './CPUFallbackViewportDisplayedArea';
2
+ import type CPUFallbackColormap from './CPUFallbackColormap';
3
+ import type CPUFallbackLUT from './CPUFallbackLUT';
4
+ interface CPUFallbackViewport {
5
5
  scale?: number;
6
6
  parallelScale?: number;
7
7
  focalPoint?: number[];
@@ -23,5 +23,5 @@ type CPUFallbackViewport = {
23
23
  colormap?: CPUFallbackColormap;
24
24
  displayedArea?: CPUFallbackViewportDisplayedArea;
25
25
  modality?: string;
26
- };
27
- export default CPUFallbackViewport;
26
+ }
27
+ export type { CPUFallbackViewport as default };
@@ -1,4 +1,4 @@
1
- type CPUFallbackViewportDisplayedArea = {
1
+ interface CPUFallbackViewportDisplayedArea {
2
2
  tlhc: {
3
3
  x: number;
4
4
  y: number;
@@ -10,5 +10,5 @@ type CPUFallbackViewportDisplayedArea = {
10
10
  rowPixelSpacing: number;
11
11
  columnPixelSpacing: number;
12
12
  presentationSizeMode: string;
13
- };
14
- export default CPUFallbackViewportDisplayedArea;
13
+ }
14
+ export type { CPUFallbackViewportDisplayedArea as default };