@cornerstonejs/dicom-image-loader 2.0.0-beta.1 → 2.0.0-beta.10
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/744.bundle.min.js +3 -0
- package/dist/744.bundle.min.js.LICENSE.txt +5 -0
- package/dist/744.bundle.min.js.map +1 -0
- package/dist/cornerstoneDICOMImageLoader.bundle.min.js +1 -1
- package/dist/cornerstoneDICOMImageLoader.bundle.min.js.map +1 -1
- package/dist/dynamic-import/{65916ef3def695744bda.wasm → 031089e563a18ada8441.wasm} +0 -0
- package/dist/dynamic-import/20fc4c659b85ccd2a9c0.wasm +0 -0
- package/dist/dynamic-import/584.min.js +2 -0
- package/dist/dynamic-import/584.min.js.map +1 -0
- package/dist/dynamic-import/595.min.js +2 -0
- package/dist/dynamic-import/595.min.js.map +1 -0
- package/dist/dynamic-import/610.min.js +2 -0
- package/dist/dynamic-import/610.min.js.map +1 -0
- package/dist/dynamic-import/958.min.js +3 -0
- package/dist/dynamic-import/958.min.js.LICENSE.txt +5 -0
- package/dist/dynamic-import/958.min.js.map +1 -0
- package/dist/dynamic-import/cornerstoneDICOMImageLoader.min.js +1 -1
- package/dist/dynamic-import/cornerstoneDICOMImageLoader.min.js.map +1 -1
- package/dist/esm/codecs/jpeg.js +891 -0
- package/dist/esm/codecs/jpeg.js.map +1 -0
- package/dist/esm/codecs/jpegLossless.js +1220 -0
- package/dist/esm/codecs/jpegLossless.js.map +1 -0
- package/dist/esm/src/constants/transferSyntaxes.js +47 -0
- package/dist/esm/src/constants/transferSyntaxes.js.map +1 -0
- package/dist/esm/src/externalModules.js +45 -0
- package/dist/esm/src/externalModules.js.map +1 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertPALETTECOLOR.js +78 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertPALETTECOLOR.js.map +1 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertRGBColorByPixel.js +22 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertRGBColorByPixel.js.map +1 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertRGBColorByPlane.js +29 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertRGBColorByPlane.js.map +1 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFull422ByPixel.js +45 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFull422ByPixel.js.map +1 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFullByPixel.js +34 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFullByPixel.js.map +1 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFullByPlane.js +36 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFullByPlane.js.map +1 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/index.js +8 -0
- package/dist/esm/src/imageLoader/colorSpaceConverters/index.js.map +1 -0
- package/dist/esm/src/imageLoader/configure.js +12 -0
- package/dist/esm/src/imageLoader/configure.js.map +1 -0
- package/dist/esm/src/imageLoader/convertColorSpace.js +41 -0
- package/dist/esm/src/imageLoader/convertColorSpace.js.map +1 -0
- package/dist/esm/src/imageLoader/createImage.js +249 -0
- package/dist/esm/src/imageLoader/createImage.js.map +1 -0
- package/dist/esm/src/imageLoader/decodeImageFrame.js +66 -0
- package/dist/esm/src/imageLoader/decodeImageFrame.js.map +1 -0
- package/dist/esm/src/imageLoader/decodeJPEGBaseline8BitColor.js +65 -0
- package/dist/esm/src/imageLoader/decodeJPEGBaseline8BitColor.js.map +1 -0
- package/dist/esm/src/imageLoader/getImageFrame.js +27 -0
- package/dist/esm/src/imageLoader/getImageFrame.js.map +1 -0
- package/dist/esm/src/imageLoader/getInstanceModule.js +41 -0
- package/dist/esm/src/imageLoader/getInstanceModule.js.map +1 -0
- package/dist/esm/src/imageLoader/getMinMax.js +16 -0
- package/dist/esm/src/imageLoader/getMinMax.js.map +1 -0
- package/dist/esm/src/imageLoader/getScalingParameters.js +16 -0
- package/dist/esm/src/imageLoader/getScalingParameters.js.map +1 -0
- package/dist/esm/src/imageLoader/imageIdToURI.js +5 -0
- package/dist/esm/src/imageLoader/imageIdToURI.js.map +1 -0
- package/dist/esm/src/imageLoader/index.js +37 -0
- package/dist/esm/src/imageLoader/index.js.map +1 -0
- package/dist/esm/src/imageLoader/internal/index.js +9 -0
- package/dist/esm/src/imageLoader/internal/index.js.map +1 -0
- package/dist/esm/src/imageLoader/internal/options.js +24 -0
- package/dist/esm/src/imageLoader/internal/options.js.map +1 -0
- package/dist/esm/src/imageLoader/internal/rangeRequest.js +122 -0
- package/dist/esm/src/imageLoader/internal/rangeRequest.js.map +1 -0
- package/dist/esm/src/imageLoader/internal/streamRequest.js +93 -0
- package/dist/esm/src/imageLoader/internal/streamRequest.js.map +1 -0
- package/dist/esm/src/imageLoader/internal/xhrRequest.js +103 -0
- package/dist/esm/src/imageLoader/internal/xhrRequest.js.map +1 -0
- package/dist/esm/src/imageLoader/isColorConversionRequired.js +23 -0
- package/dist/esm/src/imageLoader/isColorConversionRequired.js.map +1 -0
- package/dist/esm/src/imageLoader/isJPEGBaseline8BitColor.js +10 -0
- package/dist/esm/src/imageLoader/isJPEGBaseline8BitColor.js.map +1 -0
- package/dist/esm/src/imageLoader/isNMReconstructable.js +4 -0
- package/dist/esm/src/imageLoader/isNMReconstructable.js.map +1 -0
- package/dist/esm/src/imageLoader/registerLoaders.js +8 -0
- package/dist/esm/src/imageLoader/registerLoaders.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/combineFrameInstance.js +45 -0
- package/dist/esm/src/imageLoader/wadors/combineFrameInstance.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/extractMultipart.js +74 -0
- package/dist/esm/src/imageLoader/wadors/extractMultipart.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/findIndexOfString.js +33 -0
- package/dist/esm/src/imageLoader/wadors/findIndexOfString.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/getImageQualityStatus.js +9 -0
- package/dist/esm/src/imageLoader/wadors/getImageQualityStatus.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/getPixelData.js +36 -0
- package/dist/esm/src/imageLoader/wadors/getPixelData.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/getTagValue.js +10 -0
- package/dist/esm/src/imageLoader/wadors/getTagValue.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/index.js +22 -0
- package/dist/esm/src/imageLoader/wadors/index.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/loadImage.js +126 -0
- package/dist/esm/src/imageLoader/wadors/loadImage.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/loadImage_test.js +42 -0
- package/dist/esm/src/imageLoader/wadors/loadImage_test.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/metaData/NMHelpers.js +39 -0
- package/dist/esm/src/imageLoader/wadors/metaData/NMHelpers.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/metaData/USHelpers.js +47 -0
- package/dist/esm/src/imageLoader/wadors/metaData/USHelpers.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/metaData/extractPositioningFromMetadata.js +19 -0
- package/dist/esm/src/imageLoader/wadors/metaData/extractPositioningFromMetadata.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getFirstNumberValue.js +7 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getFirstNumberValue.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getNumberString.js +10 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getNumberString.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getNumberValue.js +10 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getNumberValue.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getNumberValues.js +21 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getNumberValues.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getOverlayPlaneModule.js +39 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getOverlayPlaneModule.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getSequenceItems.js +15 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getSequenceItems.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getValue.js +15 -0
- package/dist/esm/src/imageLoader/wadors/metaData/getValue.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/metaData/index.js +8 -0
- package/dist/esm/src/imageLoader/wadors/metaData/index.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/metaData/metaDataProvider.js +262 -0
- package/dist/esm/src/imageLoader/wadors/metaData/metaDataProvider.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/metaDataManager.js +48 -0
- package/dist/esm/src/imageLoader/wadors/metaDataManager.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/register.js +7 -0
- package/dist/esm/src/imageLoader/wadors/register.js.map +1 -0
- package/dist/esm/src/imageLoader/wadors/retrieveMultiframeMetadata.js +27 -0
- package/dist/esm/src/imageLoader/wadors/retrieveMultiframeMetadata.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/combineFrameInstanceDataset.js +68 -0
- package/dist/esm/src/imageLoader/wadouri/combineFrameInstanceDataset.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/dataSetCacheManager.js +143 -0
- package/dist/esm/src/imageLoader/wadouri/dataSetCacheManager.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/dataSetCacheManager_test.js +11 -0
- package/dist/esm/src/imageLoader/wadouri/dataSetCacheManager_test.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/dataset-from-partial-content.js +57 -0
- package/dist/esm/src/imageLoader/wadouri/dataset-from-partial-content.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/fileManager.js +21 -0
- package/dist/esm/src/imageLoader/wadouri/fileManager.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/getEncapsulatedImageFrame.js +34 -0
- package/dist/esm/src/imageLoader/wadouri/getEncapsulatedImageFrame.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/getPixelData.js +14 -0
- package/dist/esm/src/imageLoader/wadouri/getPixelData.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/getUncompressedImageFrame.js +48 -0
- package/dist/esm/src/imageLoader/wadouri/getUncompressedImageFrame.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/index.js +32 -0
- package/dist/esm/src/imageLoader/wadouri/index.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/loadFileRequest.js +18 -0
- package/dist/esm/src/imageLoader/wadouri/loadFileRequest.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/loadImage.js +105 -0
- package/dist/esm/src/imageLoader/wadouri/loadImage.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/extractPositioningFromDataset.js +81 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/extractPositioningFromDataset.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/getImagePixelModule.js +80 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/getImagePixelModule.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/getLUTs.js +45 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/getLUTs.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/getModalityLUTOutputPixelRepresentation.js +31 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/getModalityLUTOutputPixelRepresentation.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/getNumberValues.js +17 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/getNumberValues.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/getOverlayPlaneModule.js +37 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/getOverlayPlaneModule.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/index.js +6 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/index.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/metaDataProvider.js +211 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/metaDataProvider.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/parseImageId.js +21 -0
- package/dist/esm/src/imageLoader/wadouri/parseImageId.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/register.js +9 -0
- package/dist/esm/src/imageLoader/wadouri/register.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/retrieveMultiframeDataset.js +58 -0
- package/dist/esm/src/imageLoader/wadouri/retrieveMultiframeDataset.js.map +1 -0
- package/dist/esm/src/imageLoader/wadouri/unpackBinaryFrame.js +15 -0
- package/dist/esm/src/imageLoader/wadouri/unpackBinaryFrame.js.map +1 -0
- package/dist/esm/src/shared/calculateMinMax.js +25 -0
- package/dist/esm/src/shared/calculateMinMax.js.map +1 -0
- package/dist/esm/src/shared/calculateMinMax_test.js +39 -0
- package/dist/esm/src/shared/calculateMinMax_test.js.map +1 -0
- package/dist/esm/src/shared/decodeImageFrame.js +269 -0
- package/dist/esm/src/shared/decodeImageFrame.js.map +1 -0
- package/dist/esm/src/shared/decoders/decodeBigEndian.js +29 -0
- package/dist/esm/src/shared/decoders/decodeBigEndian.js.map +1 -0
- package/dist/esm/src/shared/decoders/decodeHTJ2K.js +110 -0
- package/dist/esm/src/shared/decoders/decodeHTJ2K.js.map +1 -0
- package/dist/esm/src/shared/decoders/decodeJPEG2000.js +94 -0
- package/dist/esm/src/shared/decoders/decodeJPEG2000.js.map +1 -0
- package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-js.js +35 -0
- package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-js.js.map +1 -0
- package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-wasm-not-yet-working.js +2 -0
- package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-wasm-not-yet-working.js.map +1 -0
- package/dist/esm/src/shared/decoders/decodeJPEGBaseline8Bit.js +63 -0
- package/dist/esm/src/shared/decoders/decodeJPEGBaseline8Bit.js.map +1 -0
- package/dist/esm/src/shared/decoders/decodeJPEGLS.js +85 -0
- package/dist/esm/src/shared/decoders/decodeJPEGLS.js.map +1 -0
- package/dist/esm/src/shared/decoders/decodeJPEGLossless.js +40 -0
- package/dist/esm/src/shared/decoders/decodeJPEGLossless.js.map +1 -0
- package/dist/esm/src/shared/decoders/decodeLittleEndian.js +30 -0
- package/dist/esm/src/shared/decoders/decodeLittleEndian.js.map +1 -0
- package/dist/esm/src/shared/decoders/decodeRLE.js +129 -0
- package/dist/esm/src/shared/decoders/decodeRLE.js.map +1 -0
- package/dist/esm/src/shared/getMinMax.js +17 -0
- package/dist/esm/src/shared/getMinMax.js.map +1 -0
- package/dist/esm/src/shared/getMinMax_test.js +10 -0
- package/dist/esm/src/shared/getMinMax_test.js.map +1 -0
- package/dist/esm/src/shared/getPixelDataTypeFromMinMax.js +23 -0
- package/dist/esm/src/shared/getPixelDataTypeFromMinMax.js.map +1 -0
- package/dist/esm/src/shared/isColorImage.js +11 -0
- package/dist/esm/src/shared/isColorImage.js.map +1 -0
- package/dist/esm/src/shared/scaling/bilinear.js +33 -0
- package/dist/esm/src/shared/scaling/bilinear.js.map +1 -0
- package/dist/esm/src/shared/scaling/replicate.js +21 -0
- package/dist/esm/src/shared/scaling/replicate.js.map +1 -0
- package/dist/esm/src/shared/scaling/scaleArray.js +16 -0
- package/dist/esm/src/shared/scaling/scaleArray.js.map +1 -0
- package/dist/esm/src/types/DICOMLoaderDataSetWithFetchMore.js +2 -0
- package/dist/esm/src/types/DICOMLoaderDataSetWithFetchMore.js.map +1 -0
- package/dist/esm/src/types/DICOMLoaderIImage.js +2 -0
- package/dist/esm/src/types/DICOMLoaderIImage.js.map +1 -0
- package/dist/esm/src/types/DICOMLoaderImageOptions.js +2 -0
- package/dist/esm/src/types/DICOMLoaderImageOptions.js.map +1 -0
- package/dist/esm/src/types/ImageFrame.js +2 -0
- package/dist/esm/src/types/ImageFrame.js.map +1 -0
- package/dist/esm/src/types/LoadRequestFunction.js +2 -0
- package/dist/esm/src/types/LoadRequestFunction.js.map +1 -0
- package/dist/esm/src/types/LoaderDecodeOptions.js +2 -0
- package/dist/esm/src/types/LoaderDecodeOptions.js.map +1 -0
- package/dist/esm/src/types/LoaderOptions.js +2 -0
- package/dist/esm/src/types/LoaderOptions.js.map +1 -0
- package/dist/esm/src/types/LutType.js +2 -0
- package/dist/esm/src/types/LutType.js.map +1 -0
- package/dist/esm/src/types/MetadataModules.js +2 -0
- package/dist/esm/src/types/MetadataModules.js.map +1 -0
- package/dist/esm/src/types/PixelDataTypedArray.js +2 -0
- package/dist/esm/src/types/PixelDataTypedArray.js.map +1 -0
- package/dist/esm/src/types/WADORSMetaData.js +2 -0
- package/dist/esm/src/types/WADORSMetaData.js.map +1 -0
- package/dist/esm/src/types/WebWorkerTypes.js +2 -0
- package/dist/esm/src/types/WebWorkerTypes.js.map +1 -0
- package/dist/esm/src/types/XHRRequest.js +2 -0
- package/dist/esm/src/types/XHRRequest.js.map +1 -0
- package/dist/esm/src/types/index.js +2 -0
- package/dist/esm/src/types/index.js.map +1 -0
- package/dist/esm/src/version.js +2 -0
- package/dist/esm/src/version.js.map +1 -0
- package/dist/types/codecs/jpeg.d.ts +11 -0
- package/dist/types/codecs/jpeg.d.ts.map +1 -0
- package/dist/types/codecs/jpegLossless.d.ts +8 -0
- package/dist/types/codecs/jpegLossless.d.ts.map +1 -0
- package/dist/types/src/constants/transferSyntaxes.d.ts +47 -0
- package/dist/types/src/constants/transferSyntaxes.d.ts.map +1 -0
- package/dist/types/src/externalModules.d.ts +6 -0
- package/dist/types/src/externalModules.d.ts.map +1 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/convertPALETTECOLOR.d.ts +4 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/convertPALETTECOLOR.d.ts.map +1 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/convertRGBColorByPixel.d.ts +3 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/convertRGBColorByPixel.d.ts.map +1 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/convertRGBColorByPlane.d.ts +3 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/convertRGBColorByPlane.d.ts.map +1 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/convertYBRFull422ByPixel.d.ts +3 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/convertYBRFull422ByPixel.d.ts.map +1 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/convertYBRFullByPixel.d.ts +3 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/convertYBRFullByPixel.d.ts.map +1 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/convertYBRFullByPlane.d.ts +3 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/convertYBRFullByPlane.d.ts.map +1 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/index.d.ts +8 -0
- package/dist/types/src/imageLoader/colorSpaceConverters/index.d.ts.map +1 -0
- package/dist/types/src/imageLoader/configure.d.ts +4 -0
- package/dist/types/src/imageLoader/configure.d.ts.map +1 -0
- package/dist/types/src/imageLoader/convertColorSpace.d.ts +2 -0
- package/dist/types/src/imageLoader/convertColorSpace.d.ts.map +1 -0
- package/dist/types/src/imageLoader/createImage.d.ts +5 -0
- package/dist/types/src/imageLoader/createImage.d.ts.map +1 -0
- package/dist/types/src/imageLoader/decodeImageFrame.d.ts +4 -0
- package/dist/types/src/imageLoader/decodeImageFrame.d.ts.map +1 -0
- package/dist/types/src/imageLoader/decodeJPEGBaseline8BitColor.d.ts +5 -0
- package/dist/types/src/imageLoader/decodeJPEGBaseline8BitColor.d.ts.map +1 -0
- package/dist/types/src/imageLoader/getImageFrame.d.ts +4 -0
- package/dist/types/src/imageLoader/getImageFrame.d.ts.map +1 -0
- package/dist/types/src/imageLoader/getInstanceModule.d.ts +4 -0
- package/dist/types/src/imageLoader/getInstanceModule.d.ts.map +1 -0
- package/dist/types/src/imageLoader/getMinMax.d.ts +5 -0
- package/dist/types/src/imageLoader/getMinMax.d.ts.map +1 -0
- package/dist/types/src/imageLoader/getScalingParameters.d.ts +7 -0
- package/dist/types/src/imageLoader/getScalingParameters.d.ts.map +1 -0
- package/dist/types/src/imageLoader/imageIdToURI.d.ts +2 -0
- package/dist/types/src/imageLoader/imageIdToURI.d.ts.map +1 -0
- package/dist/types/src/imageLoader/index.d.ts +95 -0
- package/dist/types/src/imageLoader/index.d.ts.map +1 -0
- package/dist/types/src/imageLoader/internal/index.d.ts +9 -0
- package/dist/types/src/imageLoader/internal/index.d.ts.map +1 -0
- package/dist/types/src/imageLoader/internal/options.d.ts +4 -0
- package/dist/types/src/imageLoader/internal/options.d.ts.map +1 -0
- package/dist/types/src/imageLoader/internal/rangeRequest.d.ts +10 -0
- package/dist/types/src/imageLoader/internal/rangeRequest.d.ts.map +1 -0
- package/dist/types/src/imageLoader/internal/streamRequest.d.ts +3 -0
- package/dist/types/src/imageLoader/internal/streamRequest.d.ts.map +1 -0
- package/dist/types/src/imageLoader/internal/xhrRequest.d.ts +4 -0
- package/dist/types/src/imageLoader/internal/xhrRequest.d.ts.map +1 -0
- package/dist/types/src/imageLoader/isColorConversionRequired.d.ts +2 -0
- package/dist/types/src/imageLoader/isColorConversionRequired.d.ts.map +1 -0
- package/dist/types/src/imageLoader/isJPEGBaseline8BitColor.d.ts +4 -0
- package/dist/types/src/imageLoader/isJPEGBaseline8BitColor.d.ts.map +1 -0
- package/dist/types/src/imageLoader/isNMReconstructable.d.ts +2 -0
- package/dist/types/src/imageLoader/isNMReconstructable.d.ts.map +1 -0
- package/dist/types/src/imageLoader/registerLoaders.d.ts +3 -0
- package/dist/types/src/imageLoader/registerLoaders.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/combineFrameInstance.d.ts +13 -0
- package/dist/types/src/imageLoader/wadors/combineFrameInstance.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/extractMultipart.d.ts +24 -0
- package/dist/types/src/imageLoader/wadors/extractMultipart.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/findIndexOfString.d.ts +3 -0
- package/dist/types/src/imageLoader/wadors/findIndexOfString.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/getImageQualityStatus.d.ts +3 -0
- package/dist/types/src/imageLoader/wadors/getImageQualityStatus.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/getPixelData.d.ts +27 -0
- package/dist/types/src/imageLoader/wadors/getPixelData.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/getTagValue.d.ts +2 -0
- package/dist/types/src/imageLoader/wadors/getTagValue.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/index.d.ts +26 -0
- package/dist/types/src/imageLoader/wadors/index.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/loadImage.d.ts +26 -0
- package/dist/types/src/imageLoader/wadors/loadImage.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/loadImage_test.d.ts +2 -0
- package/dist/types/src/imageLoader/wadors/loadImage_test.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/metaData/NMHelpers.d.ts +6 -0
- package/dist/types/src/imageLoader/wadors/metaData/NMHelpers.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/metaData/USHelpers.d.ts +20 -0
- package/dist/types/src/imageLoader/wadors/metaData/USHelpers.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/metaData/extractPositioningFromMetadata.d.ts +4 -0
- package/dist/types/src/imageLoader/wadors/metaData/extractPositioningFromMetadata.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/metaData/getFirstNumberValue.d.ts +3 -0
- package/dist/types/src/imageLoader/wadors/metaData/getFirstNumberValue.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/metaData/getNumberString.d.ts +4 -0
- package/dist/types/src/imageLoader/wadors/metaData/getNumberString.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/metaData/getNumberValue.d.ts +4 -0
- package/dist/types/src/imageLoader/wadors/metaData/getNumberValue.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/metaData/getNumberValues.d.ts +4 -0
- package/dist/types/src/imageLoader/wadors/metaData/getNumberValues.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/metaData/getOverlayPlaneModule.d.ts +5 -0
- package/dist/types/src/imageLoader/wadors/metaData/getOverlayPlaneModule.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/metaData/getSequenceItems.d.ts +4 -0
- package/dist/types/src/imageLoader/wadors/metaData/getSequenceItems.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/metaData/getValue.d.ts +4 -0
- package/dist/types/src/imageLoader/wadors/metaData/getValue.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/metaData/index.d.ts +8 -0
- package/dist/types/src/imageLoader/wadors/metaData/index.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/metaData/metaDataProvider.d.ts +15 -0
- package/dist/types/src/imageLoader/wadors/metaData/metaDataProvider.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/metaDataManager.d.ts +15 -0
- package/dist/types/src/imageLoader/wadors/metaDataManager.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/register.d.ts +2 -0
- package/dist/types/src/imageLoader/wadors/register.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadors/retrieveMultiframeMetadata.d.ts +16 -0
- package/dist/types/src/imageLoader/wadors/retrieveMultiframeMetadata.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/combineFrameInstanceDataset.d.ts +23 -0
- package/dist/types/src/imageLoader/wadouri/combineFrameInstanceDataset.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/dataSetCacheManager.d.ts +32 -0
- package/dist/types/src/imageLoader/wadouri/dataSetCacheManager.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/dataSetCacheManager_test.d.ts +2 -0
- package/dist/types/src/imageLoader/wadouri/dataSetCacheManager_test.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/dataset-from-partial-content.d.ts +7 -0
- package/dist/types/src/imageLoader/wadouri/dataset-from-partial-content.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/fileManager.d.ts +12 -0
- package/dist/types/src/imageLoader/wadouri/fileManager.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/getEncapsulatedImageFrame.d.ts +3 -0
- package/dist/types/src/imageLoader/wadouri/getEncapsulatedImageFrame.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/getPixelData.d.ts +4 -0
- package/dist/types/src/imageLoader/wadouri/getPixelData.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/getUncompressedImageFrame.d.ts +4 -0
- package/dist/types/src/imageLoader/wadouri/getUncompressedImageFrame.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/index.d.ts +44 -0
- package/dist/types/src/imageLoader/wadouri/index.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/loadFileRequest.d.ts +3 -0
- package/dist/types/src/imageLoader/wadouri/loadFileRequest.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/loadImage.d.ts +10 -0
- package/dist/types/src/imageLoader/wadouri/loadImage.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/metaData/extractPositioningFromDataset.d.ts +7 -0
- package/dist/types/src/imageLoader/wadouri/metaData/extractPositioningFromDataset.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/metaData/getImagePixelModule.d.ts +5 -0
- package/dist/types/src/imageLoader/wadouri/metaData/getImagePixelModule.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/metaData/getLUTs.d.ts +5 -0
- package/dist/types/src/imageLoader/wadouri/metaData/getLUTs.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/metaData/getModalityLUTOutputPixelRepresentation.d.ts +4 -0
- package/dist/types/src/imageLoader/wadouri/metaData/getModalityLUTOutputPixelRepresentation.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/metaData/getNumberValues.d.ts +4 -0
- package/dist/types/src/imageLoader/wadouri/metaData/getNumberValues.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/metaData/getOverlayPlaneModule.d.ts +5 -0
- package/dist/types/src/imageLoader/wadouri/metaData/getOverlayPlaneModule.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/metaData/index.d.ts +6 -0
- package/dist/types/src/imageLoader/wadouri/metaData/index.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/metaData/metaDataProvider.d.ts +3 -0
- package/dist/types/src/imageLoader/wadouri/metaData/metaDataProvider.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/parseImageId.d.ts +9 -0
- package/dist/types/src/imageLoader/wadouri/parseImageId.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/register.d.ts +3 -0
- package/dist/types/src/imageLoader/wadouri/register.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/retrieveMultiframeDataset.d.ts +19 -0
- package/dist/types/src/imageLoader/wadouri/retrieveMultiframeDataset.d.ts.map +1 -0
- package/dist/types/src/imageLoader/wadouri/unpackBinaryFrame.d.ts +4 -0
- package/dist/types/src/imageLoader/wadouri/unpackBinaryFrame.d.ts.map +1 -0
- package/dist/types/src/shared/calculateMinMax.d.ts +3 -0
- package/dist/types/src/shared/calculateMinMax.d.ts.map +1 -0
- package/dist/types/src/shared/calculateMinMax_test.d.ts +2 -0
- package/dist/types/src/shared/calculateMinMax_test.d.ts.map +1 -0
- package/dist/types/src/shared/decodeImageFrame.d.ts +2 -0
- package/dist/types/src/shared/decodeImageFrame.d.ts.map +1 -0
- package/dist/types/src/shared/decoders/decodeBigEndian.d.ts +5 -0
- package/dist/types/src/shared/decoders/decodeBigEndian.d.ts.map +1 -0
- package/dist/types/src/shared/decoders/decodeHTJ2K.d.ts +6 -0
- package/dist/types/src/shared/decoders/decodeHTJ2K.d.ts.map +1 -0
- package/dist/types/src/shared/decoders/decodeJPEG2000.d.ts +5 -0
- package/dist/types/src/shared/decoders/decodeJPEG2000.d.ts.map +1 -0
- package/dist/types/src/shared/decoders/decodeJPEGBaseline12Bit-js.d.ts +6 -0
- package/dist/types/src/shared/decoders/decodeJPEGBaseline12Bit-js.d.ts.map +1 -0
- package/dist/types/src/shared/decoders/decodeJPEGBaseline12Bit-wasm-not-yet-working.d.ts +1 -0
- package/dist/types/src/shared/decoders/decodeJPEGBaseline12Bit-wasm-not-yet-working.d.ts.map +1 -0
- package/dist/types/src/shared/decoders/decodeJPEGBaseline8Bit.d.ts +4 -0
- package/dist/types/src/shared/decoders/decodeJPEGBaseline8Bit.d.ts.map +1 -0
- package/dist/types/src/shared/decoders/decodeJPEGLS.d.ts +5 -0
- package/dist/types/src/shared/decoders/decodeJPEGLS.d.ts.map +1 -0
- package/dist/types/src/shared/decoders/decodeJPEGLossless.d.ts +6 -0
- package/dist/types/src/shared/decoders/decodeJPEGLossless.d.ts.map +1 -0
- package/dist/types/src/shared/decoders/decodeLittleEndian.d.ts +5 -0
- package/dist/types/src/shared/decoders/decodeLittleEndian.d.ts.map +1 -0
- package/dist/types/src/shared/decoders/decodeRLE.d.ts +5 -0
- package/dist/types/src/shared/decoders/decodeRLE.d.ts.map +1 -0
- package/dist/types/src/shared/getMinMax.d.ts +7 -0
- package/dist/types/src/shared/getMinMax.d.ts.map +1 -0
- package/dist/types/src/shared/getMinMax_test.d.ts +2 -0
- package/dist/types/src/shared/getMinMax_test.d.ts.map +1 -0
- package/dist/types/src/shared/getPixelDataTypeFromMinMax.d.ts +3 -0
- package/dist/types/src/shared/getPixelDataTypeFromMinMax.d.ts.map +1 -0
- package/dist/types/src/shared/isColorImage.d.ts +2 -0
- package/dist/types/src/shared/isColorImage.d.ts.map +1 -0
- package/dist/types/src/shared/scaling/bilinear.d.ts +2 -0
- package/dist/types/src/shared/scaling/bilinear.d.ts.map +1 -0
- package/dist/types/src/shared/scaling/replicate.d.ts +2 -0
- package/dist/types/src/shared/scaling/replicate.d.ts.map +1 -0
- package/dist/types/src/shared/scaling/scaleArray.d.ts +3 -0
- package/dist/types/src/shared/scaling/scaleArray.d.ts.map +1 -0
- package/dist/types/src/types/DICOMLoaderDataSetWithFetchMore.d.ts +10 -0
- package/dist/types/src/types/DICOMLoaderDataSetWithFetchMore.d.ts.map +1 -0
- package/dist/types/src/types/DICOMLoaderIImage.d.ts +14 -0
- package/dist/types/src/types/DICOMLoaderIImage.d.ts.map +1 -0
- package/dist/types/src/types/DICOMLoaderImageOptions.d.ts +27 -0
- package/dist/types/src/types/DICOMLoaderImageOptions.d.ts.map +1 -0
- package/dist/types/src/types/ImageFrame.d.ts +44 -0
- package/dist/types/src/types/ImageFrame.d.ts.map +1 -0
- package/dist/types/src/types/LoadRequestFunction.d.ts +2 -0
- package/dist/types/src/types/LoadRequestFunction.d.ts.map +1 -0
- package/dist/types/src/types/LoaderDecodeOptions.d.ts +5 -0
- package/dist/types/src/types/LoaderDecodeOptions.d.ts.map +1 -0
- package/dist/types/src/types/LoaderOptions.d.ts +19 -0
- package/dist/types/src/types/LoaderOptions.d.ts.map +1 -0
- package/dist/types/src/types/LutType.d.ts +7 -0
- package/dist/types/src/types/LutType.d.ts.map +1 -0
- package/dist/types/src/types/MetadataModules.d.ts +67 -0
- package/dist/types/src/types/MetadataModules.d.ts.map +1 -0
- package/dist/types/src/types/PixelDataTypedArray.d.ts +3 -0
- package/dist/types/src/types/PixelDataTypedArray.d.ts.map +1 -0
- package/dist/types/src/types/WADORSMetaData.d.ts +5 -0
- package/dist/types/src/types/WADORSMetaData.d.ts.map +1 -0
- package/dist/types/src/types/WebWorkerTypes.d.ts +65 -0
- package/dist/types/src/types/WebWorkerTypes.d.ts.map +1 -0
- package/dist/types/src/types/XHRRequest.d.ts +17 -0
- package/dist/types/src/types/XHRRequest.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +15 -0
- package/dist/types/src/types/index.d.ts.map +1 -0
- package/dist/types/src/version.d.ts +3 -0
- package/dist/types/src/version.d.ts.map +1 -0
- package/package.json +20 -10
- package/dist/cornerstoneDICOMImageLoaderNoWebWorkers.bundle.min.js +0 -2
- package/dist/cornerstoneDICOMImageLoaderNoWebWorkers.bundle.min.js.map +0 -1
- package/dist/dynamic-import/610.min.worker.js +0 -2
- package/dist/dynamic-import/610.min.worker.js.map +0 -1
- package/dist/dynamic-import/75788f12450d4c5ed494.wasm +0 -0
- package/dist/dynamic-import/945.min.worker.js +0 -2
- package/dist/dynamic-import/945.min.worker.js.map +0 -1
- package/dist/dynamic-import/index.worker.e62ecca63f1a2e124230.worker.js +0 -2
- package/dist/dynamic-import/index.worker.e62ecca63f1a2e124230.worker.js.map +0 -1
- package/dist/index.worker.bundle.min.worker.js +0 -2
- package/dist/index.worker.bundle.min.worker.js.map +0 -1
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
import external from '../../../externalModules';
|
|
2
|
+
import getNumberValues from './getNumberValues';
|
|
3
|
+
import getNumberValue from './getNumberValue';
|
|
4
|
+
import getOverlayPlaneModule from './getOverlayPlaneModule';
|
|
5
|
+
import metaDataManager from '../metaDataManager';
|
|
6
|
+
import getValue from './getValue';
|
|
7
|
+
import { getMultiframeInformation, getFrameInformation, } from '../combineFrameInstance';
|
|
8
|
+
import multiframeMetadata from '../retrieveMultiframeMetadata';
|
|
9
|
+
import { extractOrientationFromMetadata, extractPositionFromMetadata, } from './extractPositioningFromMetadata';
|
|
10
|
+
import { getImageTypeSubItemFromMetadata } from './NMHelpers';
|
|
11
|
+
import isNMReconstructable from '../../isNMReconstructable';
|
|
12
|
+
import { getInstanceModule, instanceModuleNames, } from '../../getInstanceModule';
|
|
13
|
+
import { getUSEnhancedRegions } from './USHelpers';
|
|
14
|
+
function metaDataProvider(type, imageId) {
|
|
15
|
+
const { MetadataModules } = external.cornerstone.Enums;
|
|
16
|
+
const { dicomParser } = external;
|
|
17
|
+
if (type === MetadataModules.MULTIFRAME) {
|
|
18
|
+
const { metadata, frame } = multiframeMetadata.retrieveMultiframeMetadata(imageId);
|
|
19
|
+
if (!metadata) {
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
const { PerFrameFunctionalGroupsSequence, SharedFunctionalGroupsSequence, NumberOfFrames, } = getMultiframeInformation(metadata);
|
|
23
|
+
if (PerFrameFunctionalGroupsSequence || NumberOfFrames > 1) {
|
|
24
|
+
const { shared, perFrame } = getFrameInformation(PerFrameFunctionalGroupsSequence, SharedFunctionalGroupsSequence, frame);
|
|
25
|
+
return {
|
|
26
|
+
NumberOfFrames,
|
|
27
|
+
PerFrameFunctionalInformation: perFrame,
|
|
28
|
+
SharedFunctionalInformation: shared,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
return {
|
|
32
|
+
NumberOfFrames,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
const metaData = metaDataManager.get(imageId);
|
|
36
|
+
if (!metaData) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
if (type === MetadataModules.GENERAL_STUDY) {
|
|
40
|
+
return {
|
|
41
|
+
studyDescription: getValue(metaData['00081030']),
|
|
42
|
+
studyDate: dicomParser.parseDA(getValue(metaData['00080020'])),
|
|
43
|
+
studyTime: dicomParser.parseTM(getValue(metaData['00080030'], 0, '')),
|
|
44
|
+
accessionNumber: getValue(metaData['00080050']),
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
if (type === MetadataModules.GENERAL_SERIES) {
|
|
48
|
+
return {
|
|
49
|
+
modality: getValue(metaData['00080060']),
|
|
50
|
+
seriesInstanceUID: getValue(metaData['0020000E']),
|
|
51
|
+
seriesNumber: getNumberValue(metaData['00200011']),
|
|
52
|
+
studyInstanceUID: getValue(metaData['0020000D']),
|
|
53
|
+
seriesDate: dicomParser.parseDA(getValue(metaData['00080021'])),
|
|
54
|
+
seriesTime: dicomParser.parseTM(getValue(metaData['00080031'], 0, '')),
|
|
55
|
+
acquisitionDate: dicomParser.parseDA(getValue(metaData['00080022'])),
|
|
56
|
+
acquisitionTime: dicomParser.parseTM(getValue(metaData['00080032'], 0, '')),
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
if (type === MetadataModules.GENERAL_IMAGE) {
|
|
60
|
+
return {
|
|
61
|
+
sopInstanceUID: getValue(metaData['00080018']),
|
|
62
|
+
instanceNumber: getNumberValue(metaData['00200013']),
|
|
63
|
+
lossyImageCompression: getValue(metaData['00282110']),
|
|
64
|
+
lossyImageCompressionRatio: getNumberValue(metaData['00282112']),
|
|
65
|
+
lossyImageCompressionMethod: getValue(metaData['00282114']),
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
if (type === MetadataModules.PATIENT) {
|
|
69
|
+
return {
|
|
70
|
+
patientID: getValue(metaData['00100020']),
|
|
71
|
+
patientName: getValue(metaData['00100010']),
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
if (type === MetadataModules.PATIENT_STUDY) {
|
|
75
|
+
return {
|
|
76
|
+
patientAge: getNumberValue(metaData['00101010']),
|
|
77
|
+
patientSize: getNumberValue(metaData['00101020']),
|
|
78
|
+
patientSex: getValue(metaData['00100040']),
|
|
79
|
+
patientWeight: getNumberValue(metaData['00101030']),
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
if (type === MetadataModules.NM_MULTIFRAME_GEOMETRY) {
|
|
83
|
+
const modality = getValue(metaData['00080060']);
|
|
84
|
+
const imageSubType = getImageTypeSubItemFromMetadata(metaData, 2);
|
|
85
|
+
return {
|
|
86
|
+
modality,
|
|
87
|
+
imageType: getValue(metaData['00080008']),
|
|
88
|
+
imageSubType,
|
|
89
|
+
imageOrientationPatient: extractOrientationFromMetadata(metaData),
|
|
90
|
+
imagePositionPatient: extractPositionFromMetadata(metaData),
|
|
91
|
+
sliceThickness: getNumberValue(metaData['00180050']),
|
|
92
|
+
spacingBetweenSlices: getNumberValue(metaData['00180088']),
|
|
93
|
+
pixelSpacing: getNumberValues(metaData['00280030'], 2),
|
|
94
|
+
numberOfFrames: getNumberValue(metaData['00280008']),
|
|
95
|
+
isNMReconstructable: isNMReconstructable(imageSubType) && modality.includes('NM'),
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
if (type === MetadataModules.IMAGE_PLANE) {
|
|
99
|
+
const imageOrientationPatient = extractOrientationFromMetadata(metaData);
|
|
100
|
+
const imagePositionPatient = extractPositionFromMetadata(metaData);
|
|
101
|
+
const pixelSpacing = getNumberValues(metaData['00280030'], 2);
|
|
102
|
+
let columnPixelSpacing = null;
|
|
103
|
+
let rowPixelSpacing = null;
|
|
104
|
+
if (pixelSpacing) {
|
|
105
|
+
rowPixelSpacing = pixelSpacing[0];
|
|
106
|
+
columnPixelSpacing = pixelSpacing[1];
|
|
107
|
+
}
|
|
108
|
+
let rowCosines = null;
|
|
109
|
+
let columnCosines = null;
|
|
110
|
+
if (imageOrientationPatient) {
|
|
111
|
+
rowCosines = [
|
|
112
|
+
parseFloat(imageOrientationPatient[0]),
|
|
113
|
+
parseFloat(imageOrientationPatient[1]),
|
|
114
|
+
parseFloat(imageOrientationPatient[2]),
|
|
115
|
+
];
|
|
116
|
+
columnCosines = [
|
|
117
|
+
parseFloat(imageOrientationPatient[3]),
|
|
118
|
+
parseFloat(imageOrientationPatient[4]),
|
|
119
|
+
parseFloat(imageOrientationPatient[5]),
|
|
120
|
+
];
|
|
121
|
+
}
|
|
122
|
+
return {
|
|
123
|
+
frameOfReferenceUID: getValue(metaData['00200052']),
|
|
124
|
+
rows: getNumberValue(metaData['00280010']),
|
|
125
|
+
columns: getNumberValue(metaData['00280011']),
|
|
126
|
+
imageOrientationPatient,
|
|
127
|
+
rowCosines,
|
|
128
|
+
columnCosines,
|
|
129
|
+
imagePositionPatient,
|
|
130
|
+
sliceThickness: getNumberValue(metaData['00180050']),
|
|
131
|
+
sliceLocation: getNumberValue(metaData['00201041']),
|
|
132
|
+
pixelSpacing,
|
|
133
|
+
rowPixelSpacing,
|
|
134
|
+
columnPixelSpacing,
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
if (type === MetadataModules.ULTRASOUND_ENHANCED_REGION) {
|
|
138
|
+
return getUSEnhancedRegions(metaData);
|
|
139
|
+
}
|
|
140
|
+
if (type === MetadataModules.CALIBRATION) {
|
|
141
|
+
const modality = getValue(metaData['00080060']);
|
|
142
|
+
if (modality === 'US') {
|
|
143
|
+
const enhancedRegion = getUSEnhancedRegions(metaData);
|
|
144
|
+
return {
|
|
145
|
+
sequenceOfUltrasoundRegions: enhancedRegion,
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
if (type === MetadataModules.IMAGE_URL) {
|
|
150
|
+
return getImageUrlModule(imageId, metaData);
|
|
151
|
+
}
|
|
152
|
+
if (type === MetadataModules.CINE) {
|
|
153
|
+
return getCineModule(imageId, metaData);
|
|
154
|
+
}
|
|
155
|
+
if (type === MetadataModules.IMAGE_PIXEL) {
|
|
156
|
+
return {
|
|
157
|
+
samplesPerPixel: getNumberValue(metaData['00280002']),
|
|
158
|
+
photometricInterpretation: getValue(metaData['00280004']),
|
|
159
|
+
rows: getNumberValue(metaData['00280010']),
|
|
160
|
+
columns: getNumberValue(metaData['00280011']),
|
|
161
|
+
bitsAllocated: getNumberValue(metaData['00280100']),
|
|
162
|
+
bitsStored: getNumberValue(metaData['00280101']),
|
|
163
|
+
highBit: getValue(metaData['00280102']),
|
|
164
|
+
pixelRepresentation: getNumberValue(metaData['00280103']),
|
|
165
|
+
planarConfiguration: getNumberValue(metaData['00280006']),
|
|
166
|
+
pixelAspectRatio: getValue(metaData['00280034']),
|
|
167
|
+
smallestPixelValue: getNumberValue(metaData['00280106']),
|
|
168
|
+
largestPixelValue: getNumberValue(metaData['00280107']),
|
|
169
|
+
redPaletteColorLookupTableDescriptor: getNumberValues(metaData['00281101']),
|
|
170
|
+
greenPaletteColorLookupTableDescriptor: getNumberValues(metaData['00281102']),
|
|
171
|
+
bluePaletteColorLookupTableDescriptor: getNumberValues(metaData['00281103']),
|
|
172
|
+
redPaletteColorLookupTableData: getNumberValues(metaData['00281201']),
|
|
173
|
+
greenPaletteColorLookupTableData: getNumberValues(metaData['00281202']),
|
|
174
|
+
bluePaletteColorLookupTableData: getNumberValues(metaData['00281203']),
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
if (type === MetadataModules.VOI_LUT) {
|
|
178
|
+
return {
|
|
179
|
+
windowCenter: getNumberValues(metaData['00281050'], 1),
|
|
180
|
+
windowWidth: getNumberValues(metaData['00281051'], 1),
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
if (type === MetadataModules.MODALITY_LUT) {
|
|
184
|
+
return {
|
|
185
|
+
rescaleIntercept: getNumberValue(metaData['00281052']),
|
|
186
|
+
rescaleSlope: getNumberValue(metaData['00281053']),
|
|
187
|
+
rescaleType: getValue(metaData['00281054']),
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
if (type === MetadataModules.SOP_COMMON) {
|
|
191
|
+
return {
|
|
192
|
+
sopClassUID: getValue(metaData['00080016']),
|
|
193
|
+
sopInstanceUID: getValue(metaData['00080018']),
|
|
194
|
+
};
|
|
195
|
+
}
|
|
196
|
+
if (type === MetadataModules.PET_ISOTOPE) {
|
|
197
|
+
const radiopharmaceuticalInfo = getValue(metaData['00540016']);
|
|
198
|
+
if (radiopharmaceuticalInfo === undefined) {
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
return {
|
|
202
|
+
radiopharmaceuticalInfo: {
|
|
203
|
+
radiopharmaceuticalStartTime: dicomParser.parseTM(getValue(radiopharmaceuticalInfo['00181072'], 0, '')),
|
|
204
|
+
radiopharmaceuticalStartDateTime: getValue(radiopharmaceuticalInfo['00181078'], 0, ''),
|
|
205
|
+
radionuclideTotalDose: getNumberValue(radiopharmaceuticalInfo['00181074']),
|
|
206
|
+
radionuclideHalfLife: getNumberValue(radiopharmaceuticalInfo['00181075']),
|
|
207
|
+
},
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
if (type === MetadataModules.OVERLAY_PLANE) {
|
|
211
|
+
return getOverlayPlaneModule(metaData);
|
|
212
|
+
}
|
|
213
|
+
if (type === 'transferSyntax') {
|
|
214
|
+
return getTransferSyntax(imageId, metaData);
|
|
215
|
+
}
|
|
216
|
+
if (type === MetadataModules.PET_SERIES) {
|
|
217
|
+
return {
|
|
218
|
+
correctedImage: getValue(metaData['00280051']),
|
|
219
|
+
units: getValue(metaData['00541001']),
|
|
220
|
+
decayCorrection: getValue(metaData['00541102']),
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
if (type === MetadataModules.PET_IMAGE) {
|
|
224
|
+
return {
|
|
225
|
+
frameReferenceTime: getNumberValue(metaData['00541300']),
|
|
226
|
+
actualFrameDuration: getNumberValue(metaData['00181242']),
|
|
227
|
+
};
|
|
228
|
+
}
|
|
229
|
+
if (type === 'instance') {
|
|
230
|
+
return getInstanceModule(imageId, metaDataProvider, instanceModuleNames);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
export function getImageUrlModule(imageId, metaData) {
|
|
234
|
+
const { transferSyntaxUID } = getTransferSyntax(imageId, metaData);
|
|
235
|
+
const isVideo = external.cornerstone.utilities.isVideoTransferSyntax(transferSyntaxUID);
|
|
236
|
+
const imageUrl = imageId.substring(7);
|
|
237
|
+
const thumbnail = imageUrl.replace('/frames/', '/thumbnail/');
|
|
238
|
+
let rendered = imageUrl.replace('/frames/', '/rendered/');
|
|
239
|
+
if (isVideo) {
|
|
240
|
+
rendered = rendered.replace('/rendered/1', '/rendered');
|
|
241
|
+
}
|
|
242
|
+
return {
|
|
243
|
+
isVideo,
|
|
244
|
+
rendered,
|
|
245
|
+
thumbnail,
|
|
246
|
+
};
|
|
247
|
+
}
|
|
248
|
+
export function getCineModule(imageId, metaData) {
|
|
249
|
+
const cineRate = getValue(metaData['00180040']);
|
|
250
|
+
return {
|
|
251
|
+
cineRate,
|
|
252
|
+
numberOfFrames: getNumberValue(metaData['00280008']),
|
|
253
|
+
};
|
|
254
|
+
}
|
|
255
|
+
export function getTransferSyntax(imageId, metaData) {
|
|
256
|
+
return {
|
|
257
|
+
transferSyntaxUID: getValue(metaData['00020010']) ||
|
|
258
|
+
getValue(metaData['00083002']),
|
|
259
|
+
};
|
|
260
|
+
}
|
|
261
|
+
export default metaDataProvider;
|
|
262
|
+
//# sourceMappingURL=metaDataProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metaDataProvider.js","sourceRoot":"","sources":["../../../../../../src/imageLoader/wadors/metaData/metaDataProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import imageIdToURI from '../imageIdToURI';
|
|
2
|
+
import { combineFrameInstance } from './combineFrameInstance';
|
|
3
|
+
import multiframeMetadata from './retrieveMultiframeMetadata';
|
|
4
|
+
let metadataByImageURI = [];
|
|
5
|
+
let multiframeMetadataByImageURI = {};
|
|
6
|
+
function add(imageId, metadata) {
|
|
7
|
+
const imageURI = imageIdToURI(imageId);
|
|
8
|
+
metadata.isMultiframe = multiframeMetadata.isMultiframe(metadata);
|
|
9
|
+
metadataByImageURI[imageURI] = metadata;
|
|
10
|
+
}
|
|
11
|
+
function get(imageId) {
|
|
12
|
+
const imageURI = imageIdToURI(imageId);
|
|
13
|
+
const metadata = metadataByImageURI[imageURI];
|
|
14
|
+
if (metadata && !metadata?.isMultiframe) {
|
|
15
|
+
return metadata;
|
|
16
|
+
}
|
|
17
|
+
const cachedMetadata = multiframeMetadataByImageURI[imageURI];
|
|
18
|
+
if (cachedMetadata) {
|
|
19
|
+
return cachedMetadata;
|
|
20
|
+
}
|
|
21
|
+
const retrievedMetadata = multiframeMetadata._retrieveMultiframeMetadata(imageURI);
|
|
22
|
+
if (!retrievedMetadata || !retrievedMetadata.metadata) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
const { metadata: firstFrameMetadata, frame } = retrievedMetadata;
|
|
26
|
+
if (firstFrameMetadata) {
|
|
27
|
+
const combined = combineFrameInstance(frame, firstFrameMetadata);
|
|
28
|
+
multiframeMetadataByImageURI[imageURI] = combined;
|
|
29
|
+
return combined;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
function remove(imageId) {
|
|
33
|
+
const imageURI = imageIdToURI(imageId);
|
|
34
|
+
metadataByImageURI[imageURI] = undefined;
|
|
35
|
+
multiframeMetadataByImageURI[imageURI] = undefined;
|
|
36
|
+
}
|
|
37
|
+
function purge() {
|
|
38
|
+
metadataByImageURI = [];
|
|
39
|
+
multiframeMetadataByImageURI = {};
|
|
40
|
+
}
|
|
41
|
+
export { metadataByImageURI };
|
|
42
|
+
export default {
|
|
43
|
+
add,
|
|
44
|
+
get,
|
|
45
|
+
remove,
|
|
46
|
+
purge,
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=metaDataManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metaDataManager.js","sourceRoot":"","sources":["../../../../../src/imageLoader/wadors/metaDataManager.ts"],"names":[],"mappings":"AACA,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,kBAAkB,MAAM,8BAA8B,CAAC;AAE9D,IAAI,kBAAkB,GAAG,EAAE,CAAC;AAC5B,IAAI,4BAA4B,GAAG,EAAE,CAAC;AAEtC,SAAS,GAAG,CAAC,OAAe,EAAE,QAAwB;IACpD,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAGvC,QAAQ,CAAC,YAAY,GAAG,kBAAkB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAElE,kBAAkB,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;AAC1C,CAAC;AAMD,SAAS,GAAG,CAAC,OAAe;IAC1B,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAGvC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAE9C,IAAI,QAAQ,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC;QAExC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,cAAc,GAAG,4BAA4B,CAAC,QAAQ,CAAC,CAAC;IAE9D,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC;IACxB,CAAC;IAGD,MAAM,iBAAiB,GACrB,kBAAkB,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IAE3D,IAAI,CAAC,iBAAiB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;QACtD,OAAO;IACT,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,kBAAkB,EAAE,KAAK,EAAE,GAAG,iBAAiB,CAAC;IAElE,IAAI,kBAAkB,EAAE,CAAC;QAEvB,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;QAEjE,4BAA4B,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;QAElD,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,OAAO;IACrB,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAEvC,kBAAkB,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;IAEzC,4BAA4B,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;AACrD,CAAC;AAED,SAAS,KAAK;IACZ,kBAAkB,GAAG,EAAE,CAAC;IACxB,4BAA4B,GAAG,EAAE,CAAC;AACpC,CAAC;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B,eAAe;IACb,GAAG;IACH,GAAG;IACH,MAAM;IACN,KAAK;CACN,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import loadImage from './loadImage';
|
|
2
|
+
import { metaDataProvider } from './metaData/index';
|
|
3
|
+
export default function (cornerstone) {
|
|
4
|
+
cornerstone.registerImageLoader('wadors', loadImage);
|
|
5
|
+
cornerstone.metaData.addProvider(metaDataProvider);
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=register.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../../../../src/imageLoader/wadors/register.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,MAAM,CAAC,OAAO,WAAW,WAAW;IAElC,WAAW,CAAC,mBAAmB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACrD,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;AACrD,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import getValue from './metaData/getValue';
|
|
2
|
+
import imageIdToURI from '../imageIdToURI';
|
|
3
|
+
import { metadataByImageURI } from './metaDataManager';
|
|
4
|
+
function _retrieveMultiframeMetadata(imageURI) {
|
|
5
|
+
const lastSlashIdx = imageURI.indexOf('/frames/') + 8;
|
|
6
|
+
const imageIdFrameless = imageURI.slice(0, lastSlashIdx);
|
|
7
|
+
const frame = parseInt(imageURI.slice(lastSlashIdx), 10);
|
|
8
|
+
const metadata = metadataByImageURI[`${imageIdFrameless}1`];
|
|
9
|
+
return {
|
|
10
|
+
metadata,
|
|
11
|
+
frame,
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
function retrieveMultiframeMetadata(imageId) {
|
|
15
|
+
const imageURI = imageIdToURI(imageId);
|
|
16
|
+
return _retrieveMultiframeMetadata(imageURI);
|
|
17
|
+
}
|
|
18
|
+
function isMultiframe(metadata) {
|
|
19
|
+
const numberOfFrames = getValue(metadata['00280008']);
|
|
20
|
+
return numberOfFrames && numberOfFrames > 1;
|
|
21
|
+
}
|
|
22
|
+
export default {
|
|
23
|
+
_retrieveMultiframeMetadata,
|
|
24
|
+
retrieveMultiframeMetadata,
|
|
25
|
+
isMultiframe,
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=retrieveMultiframeMetadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retrieveMultiframeMetadata.js","sourceRoot":"","sources":["../../../../../src/imageLoader/wadors/retrieveMultiframeMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAC3C,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAGvD,SAAS,2BAA2B,CAAC,QAAQ;IAC3C,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAEtD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IAEzD,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;IAGzD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,gBAAgB,GAAG,CAAC,CAAC;IAE5D,OAAO;QACL,QAAQ;QACR,KAAK;KACN,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,OAAO;IACzC,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAEvC,OAAO,2BAA2B,CAAC,QAAQ,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,YAAY,CAAC,QAAQ;IAE5B,MAAM,cAAc,GAAG,QAAQ,CAAS,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IAE9D,OAAO,cAAc,IAAI,cAAc,GAAG,CAAC,CAAC;AAC9C,CAAC;AAED,eAAe;IACb,2BAA2B;IAC3B,0BAA0B;IAC1B,YAAY;CACb,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
function getDirectFrameInformation(dataSet, frame) {
|
|
2
|
+
if (!dataSet) {
|
|
3
|
+
return;
|
|
4
|
+
}
|
|
5
|
+
const { NumberOfFrames, PerFrameFunctionalGroupsSequence, SharedFunctionalGroupsSequence, } = getMultiframeInformation(dataSet);
|
|
6
|
+
if (PerFrameFunctionalGroupsSequence || NumberOfFrames > 1) {
|
|
7
|
+
const { shared, perFrame } = getFrameInformation(PerFrameFunctionalGroupsSequence, SharedFunctionalGroupsSequence, frame);
|
|
8
|
+
return {
|
|
9
|
+
NumberOfFrames,
|
|
10
|
+
PerFrameFunctionalInformation: perFrame,
|
|
11
|
+
SharedFunctionalInformation: shared,
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
return {
|
|
15
|
+
NumberOfFrames,
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
function getFrameInformation(PerFrameFunctionalGroupsSequence, SharedFunctionalGroupsSequence, frameNumber) {
|
|
19
|
+
const shared = {};
|
|
20
|
+
(SharedFunctionalGroupsSequence
|
|
21
|
+
? Object.values(SharedFunctionalGroupsSequence.items[0].dataSet.elements)
|
|
22
|
+
: []).map((it) => (shared[it.tag] = it));
|
|
23
|
+
const perFrame = {};
|
|
24
|
+
(PerFrameFunctionalGroupsSequence
|
|
25
|
+
? Object.values(PerFrameFunctionalGroupsSequence.items[frameNumber - 1].dataSet.elements)
|
|
26
|
+
: []).map((it) => (perFrame[it.tag] = it));
|
|
27
|
+
return {
|
|
28
|
+
shared,
|
|
29
|
+
perFrame,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
function getMultiframeInformation(dataSet) {
|
|
33
|
+
if (!dataSet) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
const { elements, ...otherAttributtes } = dataSet;
|
|
37
|
+
const { x52009230: PerFrameFunctionalGroupsSequence, x52009229: SharedFunctionalGroupsSequence, ...otherElements } = elements;
|
|
38
|
+
const NumberOfFrames = dataSet.intString('x00280008');
|
|
39
|
+
return {
|
|
40
|
+
NumberOfFrames,
|
|
41
|
+
PerFrameFunctionalGroupsSequence,
|
|
42
|
+
SharedFunctionalGroupsSequence,
|
|
43
|
+
otherElements,
|
|
44
|
+
otherAttributtes,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
function combineFrameInstanceDataset(frameNumber, dataSet) {
|
|
48
|
+
if (!dataSet) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
const { NumberOfFrames, PerFrameFunctionalGroupsSequence, SharedFunctionalGroupsSequence, otherElements, } = getMultiframeInformation(dataSet);
|
|
52
|
+
if (PerFrameFunctionalGroupsSequence || NumberOfFrames > 1) {
|
|
53
|
+
const { shared, perFrame } = getFrameInformation(PerFrameFunctionalGroupsSequence, SharedFunctionalGroupsSequence, frameNumber);
|
|
54
|
+
const newElements = {
|
|
55
|
+
elements: {
|
|
56
|
+
...otherElements,
|
|
57
|
+
...shared,
|
|
58
|
+
...perFrame,
|
|
59
|
+
},
|
|
60
|
+
};
|
|
61
|
+
const clonedDataset = Object.create(dataSet);
|
|
62
|
+
const newDataset = Object.assign(clonedDataset, newElements);
|
|
63
|
+
return newDataset;
|
|
64
|
+
}
|
|
65
|
+
return dataSet;
|
|
66
|
+
}
|
|
67
|
+
export { combineFrameInstanceDataset, getMultiframeInformation, getFrameInformation, getDirectFrameInformation, };
|
|
68
|
+
//# sourceMappingURL=combineFrameInstanceDataset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"combineFrameInstanceDataset.js","sourceRoot":"","sources":["../../../../../src/imageLoader/wadouri/combineFrameInstanceDataset.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import external from '../../externalModules';
|
|
2
|
+
import { xhrRequest } from '../internal/index';
|
|
3
|
+
import dataSetFromPartialContent from './dataset-from-partial-content';
|
|
4
|
+
import { combineFrameInstanceDataset } from './combineFrameInstanceDataset';
|
|
5
|
+
import multiframeDataset from './retrieveMultiframeDataset';
|
|
6
|
+
let cacheSizeInBytes = 0;
|
|
7
|
+
let loadedDataSets = {};
|
|
8
|
+
let promises = {};
|
|
9
|
+
function isLoaded(uri) {
|
|
10
|
+
return loadedDataSets[uri] !== undefined;
|
|
11
|
+
}
|
|
12
|
+
function get(uri) {
|
|
13
|
+
let dataSet;
|
|
14
|
+
if (uri.includes('&frame=')) {
|
|
15
|
+
const { frame, dataSet: multiframeDataSet } = multiframeDataset.retrieveMultiframeDataset(uri);
|
|
16
|
+
dataSet = combineFrameInstanceDataset(frame, multiframeDataSet);
|
|
17
|
+
}
|
|
18
|
+
else if (loadedDataSets[uri]) {
|
|
19
|
+
dataSet = loadedDataSets[uri].dataSet;
|
|
20
|
+
}
|
|
21
|
+
return dataSet;
|
|
22
|
+
}
|
|
23
|
+
function update(uri, dataSet) {
|
|
24
|
+
const loadedDataSet = loadedDataSets[uri];
|
|
25
|
+
if (!loadedDataSet) {
|
|
26
|
+
console.error(`No loaded dataSet for uri ${uri}`);
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
cacheSizeInBytes -= loadedDataSet.dataSet.byteArray.length;
|
|
30
|
+
loadedDataSet.dataSet = dataSet;
|
|
31
|
+
cacheSizeInBytes += dataSet.byteArray.length;
|
|
32
|
+
external.cornerstone.triggerEvent(external.cornerstone.events, 'datasetscachechanged', {
|
|
33
|
+
uri,
|
|
34
|
+
action: 'updated',
|
|
35
|
+
cacheInfo: getInfo(),
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
function load(uri, loadRequest = xhrRequest, imageId) {
|
|
39
|
+
const { cornerstone, dicomParser } = external;
|
|
40
|
+
if (loadedDataSets[uri]) {
|
|
41
|
+
return new Promise((resolve) => {
|
|
42
|
+
loadedDataSets[uri].cacheCount++;
|
|
43
|
+
resolve(loadedDataSets[uri].dataSet);
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
if (promises[uri]) {
|
|
47
|
+
promises[uri].cacheCount++;
|
|
48
|
+
return promises[uri];
|
|
49
|
+
}
|
|
50
|
+
const loadDICOMPromise = loadRequest(uri, imageId);
|
|
51
|
+
const promise = new Promise((resolve, reject) => {
|
|
52
|
+
loadDICOMPromise
|
|
53
|
+
.then(async function (dicomPart10AsArrayBuffer) {
|
|
54
|
+
const partialContent = {
|
|
55
|
+
isPartialContent: false,
|
|
56
|
+
fileTotalLength: null,
|
|
57
|
+
};
|
|
58
|
+
if (!(dicomPart10AsArrayBuffer instanceof ArrayBuffer)) {
|
|
59
|
+
if (!dicomPart10AsArrayBuffer.arrayBuffer) {
|
|
60
|
+
return reject(new Error('If not returning ArrayBuffer, must return object with `arrayBuffer` parameter'));
|
|
61
|
+
}
|
|
62
|
+
partialContent.isPartialContent =
|
|
63
|
+
dicomPart10AsArrayBuffer.flags.isPartialContent;
|
|
64
|
+
partialContent.fileTotalLength =
|
|
65
|
+
dicomPart10AsArrayBuffer.flags.fileTotalLength;
|
|
66
|
+
dicomPart10AsArrayBuffer = dicomPart10AsArrayBuffer.arrayBuffer;
|
|
67
|
+
}
|
|
68
|
+
const byteArray = new Uint8Array(dicomPart10AsArrayBuffer);
|
|
69
|
+
let dataSet;
|
|
70
|
+
try {
|
|
71
|
+
if (partialContent.isPartialContent) {
|
|
72
|
+
dataSet = await dataSetFromPartialContent(byteArray, loadRequest, {
|
|
73
|
+
uri,
|
|
74
|
+
imageId,
|
|
75
|
+
fileTotalLength: partialContent.fileTotalLength,
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
dataSet = dicomParser.parseDicom(byteArray);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
return reject(error);
|
|
84
|
+
}
|
|
85
|
+
loadedDataSets[uri] = {
|
|
86
|
+
dataSet,
|
|
87
|
+
cacheCount: promise.cacheCount,
|
|
88
|
+
};
|
|
89
|
+
cacheSizeInBytes += dataSet.byteArray.length;
|
|
90
|
+
resolve(dataSet);
|
|
91
|
+
cornerstone.triggerEvent(cornerstone.events, 'datasetscachechanged', {
|
|
92
|
+
uri,
|
|
93
|
+
action: 'loaded',
|
|
94
|
+
cacheInfo: getInfo(),
|
|
95
|
+
});
|
|
96
|
+
}, reject)
|
|
97
|
+
.then(() => {
|
|
98
|
+
delete promises[uri];
|
|
99
|
+
}, () => {
|
|
100
|
+
delete promises[uri];
|
|
101
|
+
});
|
|
102
|
+
});
|
|
103
|
+
promise.cacheCount = 1;
|
|
104
|
+
promises[uri] = promise;
|
|
105
|
+
return promise;
|
|
106
|
+
}
|
|
107
|
+
function unload(uri) {
|
|
108
|
+
const { cornerstone } = external;
|
|
109
|
+
if (loadedDataSets[uri]) {
|
|
110
|
+
loadedDataSets[uri].cacheCount--;
|
|
111
|
+
if (loadedDataSets[uri].cacheCount === 0) {
|
|
112
|
+
cacheSizeInBytes -= loadedDataSets[uri].dataSet.byteArray.length;
|
|
113
|
+
delete loadedDataSets[uri];
|
|
114
|
+
cornerstone.triggerEvent(cornerstone.events, 'datasetscachechanged', {
|
|
115
|
+
uri,
|
|
116
|
+
action: 'unloaded',
|
|
117
|
+
cacheInfo: getInfo(),
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
export function getInfo() {
|
|
123
|
+
return {
|
|
124
|
+
cacheSizeInBytes,
|
|
125
|
+
numberOfDataSetsCached: Object.keys(loadedDataSets).length,
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
function purge() {
|
|
129
|
+
loadedDataSets = {};
|
|
130
|
+
promises = {};
|
|
131
|
+
cacheSizeInBytes = 0;
|
|
132
|
+
}
|
|
133
|
+
export default {
|
|
134
|
+
isLoaded,
|
|
135
|
+
load,
|
|
136
|
+
unload,
|
|
137
|
+
getInfo,
|
|
138
|
+
purge,
|
|
139
|
+
get,
|
|
140
|
+
update,
|
|
141
|
+
};
|
|
142
|
+
export { loadedDataSets };
|
|
143
|
+
//# sourceMappingURL=dataSetCacheManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataSetCacheManager.js","sourceRoot":"","sources":["../../../../../src/imageLoader/wadouri/dataSetCacheManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { expect } from 'chai';
|
|
2
|
+
import dataSetCacheManager from './dataSetCacheManager';
|
|
3
|
+
describe('#getInfo', () => {
|
|
4
|
+
it('should return cache info for an empty cache', function () {
|
|
5
|
+
dataSetCacheManager.purge();
|
|
6
|
+
const cacheInfo = dataSetCacheManager.getInfo();
|
|
7
|
+
expect(cacheInfo.cacheSizeInBytes).to.be.equal(0);
|
|
8
|
+
expect(cacheInfo.numberOfDataSetsCached).to.be.equal(0);
|
|
9
|
+
});
|
|
10
|
+
});
|
|
11
|
+
//# sourceMappingURL=dataSetCacheManager_test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataSetCacheManager_test.js","sourceRoot":"","sources":["../../../../../src/imageLoader/wadouri/dataSetCacheManager_test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AAExD,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,EAAE,CAAC,6CAA6C,EAAE;QAChD,mBAAmB,CAAC,KAAK,EAAE,CAAC;QAE5B,MAAM,SAAS,GAAG,mBAAmB,CAAC,OAAO,EAAE,CAAC;QAEhD,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClD,MAAM,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|