@cornerstonejs/dicom-image-loader 2.0.0-beta.20 → 2.0.0-beta.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/920.bundle.min.js +1 -1
- package/dist/920.bundle.min.js.map +1 -1
- package/dist/cornerstoneDICOMImageLoader.bundle.min.js +1 -1
- package/dist/cornerstoneDICOMImageLoader.bundle.min.js.map +1 -1
- package/dist/dynamic-import/918.min.js +1 -1
- package/dist/dynamic-import/918.min.js.map +1 -1
- package/dist/dynamic-import/958.min.js +1 -1
- package/dist/dynamic-import/958.min.js.map +1 -1
- package/dist/dynamic-import/cornerstoneDICOMImageLoader.min.js +1 -1
- package/dist/dynamic-import/cornerstoneDICOMImageLoader.min.js.map +1 -1
- package/dist/esm/codecs/jpeg.d.ts +1 -10
- package/dist/esm/codecs/jpeg.js +1 -1
- package/dist/esm/codecs/jpegLossless.js +1 -1
- package/dist/esm/src/decodeImageFrameWorker.js +6 -10
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertPALETTECOLOR.d.ts +3 -3
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertRGBColorByPixel.d.ts +1 -1
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertRGBColorByPlane.d.ts +1 -1
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFull422ByPixel.d.ts +1 -1
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFullByPixel.d.ts +1 -1
- package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFullByPlane.d.ts +1 -1
- package/dist/esm/src/imageLoader/configure.d.ts +1 -1
- package/dist/esm/src/imageLoader/createImage.d.ts +4 -3
- package/dist/esm/src/imageLoader/createImage.js +13 -20
- package/dist/esm/src/imageLoader/decodeImageFrame.d.ts +2 -2
- package/dist/esm/src/imageLoader/decodeJPEGBaseline8BitColor.d.ts +3 -3
- package/dist/esm/src/imageLoader/getImageFrame.d.ts +2 -2
- package/dist/esm/src/imageLoader/getInstanceModule.d.ts +1 -1
- package/dist/esm/src/imageLoader/getScalingParameters.js +2 -1
- package/dist/esm/src/imageLoader/index.d.ts +1 -1
- package/dist/esm/src/imageLoader/internal/index.d.ts +3 -1
- package/dist/esm/src/imageLoader/internal/index.js +3 -1
- package/dist/esm/src/imageLoader/internal/options.d.ts +1 -1
- package/dist/esm/src/imageLoader/internal/options.js +0 -4
- package/dist/esm/src/imageLoader/internal/rangeRequest.d.ts +3 -3
- package/dist/esm/src/imageLoader/internal/streamRequest.d.ts +1 -1
- package/dist/esm/src/imageLoader/internal/xhrRequest.d.ts +1 -1
- package/dist/esm/src/imageLoader/isJPEGBaseline8BitColor.d.ts +2 -2
- package/dist/esm/src/imageLoader/wadors/getImageQualityStatus.d.ts +2 -1
- package/dist/esm/src/imageLoader/wadors/getPixelData.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadors/loadImage.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadors/metaData/getFirstNumberValue.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadors/metaData/getNumberString.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadors/metaData/getNumberString.js +1 -1
- package/dist/esm/src/imageLoader/wadors/metaData/getNumberValue.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadors/metaData/getNumberValues.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadors/metaData/getOverlayPlaneModule.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadors/metaData/getSequenceItems.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadors/metaData/getValue.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadors/metaData/getValue.js +1 -1
- package/dist/esm/src/imageLoader/wadors/metaData/metaDataProvider.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadors/metaDataManager.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadors/metaDataManager.js +4 -1
- package/dist/esm/src/imageLoader/wadouri/combineFrameInstanceDataset.js +4 -2
- package/dist/esm/src/imageLoader/wadouri/dataSetCacheManager.d.ts +2 -2
- package/dist/esm/src/imageLoader/wadouri/dataset-from-partial-content.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadouri/getEncapsulatedImageFrame.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadouri/getPixelData.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadouri/getUncompressedImageFrame.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadouri/index.d.ts +0 -1
- package/dist/esm/src/imageLoader/wadouri/loadImage.d.ts +3 -3
- package/dist/esm/src/imageLoader/wadouri/metaData/USHelpers.d.ts +2 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/USHelpers.js +44 -0
- package/dist/esm/src/imageLoader/wadouri/metaData/getImagePixelModule.d.ts +3 -3
- package/dist/esm/src/imageLoader/wadouri/metaData/getLUTs.d.ts +2 -2
- package/dist/esm/src/imageLoader/wadouri/metaData/getModalityLUTOutputPixelRepresentation.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadouri/metaData/getNumberValues.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadouri/metaData/getOverlayPlaneModule.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadouri/metaData/metaDataProvider.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadouri/metaData/metaDataProvider.js +13 -0
- package/dist/esm/src/imageLoader/wadouri/register.d.ts +1 -1
- package/dist/esm/src/imageLoader/wadouri/retrieveMultiframeDataset.d.ts +0 -1
- package/dist/esm/src/imageLoader/wadouri/unpackBinaryFrame.d.ts +1 -1
- package/dist/esm/src/shared/decoders/decodeBigEndian.d.ts +3 -3
- package/dist/esm/src/shared/decoders/decodeHTJ2K.d.ts +2 -2
- package/dist/esm/src/shared/decoders/decodeJPEG2000.d.ts +3 -2
- package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-js.d.ts +4 -3
- package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-wasm-not-yet-working.d.ts +1 -0
- package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-wasm-not-yet-working.js +1 -1
- package/dist/esm/src/shared/decoders/decodeJPEGBaseline8Bit.d.ts +2 -2
- package/dist/esm/src/shared/decoders/decodeJPEGLS.d.ts +3 -2
- package/dist/esm/src/shared/decoders/decodeJPEGLossless.d.ts +4 -3
- package/dist/esm/src/shared/decoders/decodeLittleEndian.d.ts +3 -3
- package/dist/esm/src/shared/decoders/decodeRLE.d.ts +3 -3
- package/dist/esm/src/shared/getMinMax.d.ts +2 -2
- package/dist/esm/src/shared/getPixelDataTypeFromMinMax.d.ts +2 -2
- package/dist/esm/src/shared/scaling/scaleArray.d.ts +2 -2
- package/dist/esm/src/types/DICOMLoaderDataSetWithFetchMore.d.ts +1 -1
- package/dist/esm/src/types/DICOMLoaderIImage.d.ts +3 -4
- package/dist/esm/src/types/DICOMLoaderImageOptions.d.ts +4 -7
- package/dist/esm/src/types/LoadRequestFunction.d.ts +1 -1
- package/dist/esm/src/types/LoaderDecodeOptions.d.ts +0 -2
- package/dist/esm/src/types/LoaderOptions.d.ts +9 -9
- package/dist/esm/src/types/WebWorkerTypes.d.ts +8 -8
- package/dist/esm/src/types/XHRRequest.d.ts +2 -2
- package/dist/esm/src/types/index.d.ts +11 -14
- package/package.json +4 -9
- package/dist/esm/src/shared/calculateMinMax.d.ts +0 -2
- package/dist/esm/src/shared/calculateMinMax.js +0 -24
- package/dist/esm/src/shared/calculateMinMax_test.d.ts +0 -1
- package/dist/esm/src/shared/calculateMinMax_test.js +0 -38
- package/dist/esm/src/types/ImageFrame.d.ts +0 -43
- package/dist/esm/src/types/ImageFrame.js +0 -1
- package/dist/esm/src/types/MetadataModules.d.ts +0 -66
- package/dist/esm/src/types/MetadataModules.js +0 -1
- package/dist/esm/src/types/PixelDataTypedArray.d.ts +0 -2
- package/dist/esm/src/types/PixelDataTypedArray.js +0 -1
package/dist/esm/codecs/jpeg.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var ColorSpace = { Unkown: 0, Grayscale: 1, AdobeRGB: 2, RGB: 3, CYMK: 4 };
|
|
3
2
|
var JpegImage = (function jpegImage() {
|
|
4
3
|
'use strict';
|
|
@@ -888,3 +887,4 @@ var JpegImage = (function jpegImage() {
|
|
|
888
887
|
});
|
|
889
888
|
return JpegImage;
|
|
890
889
|
})();
|
|
890
|
+
export {};
|
|
@@ -100,7 +100,6 @@ async function decodeImageFrame(imageFrame, transferSyntax, pixelData, decodeCon
|
|
|
100
100
|
return postProcessed;
|
|
101
101
|
}
|
|
102
102
|
function postProcessDecodedPixels(imageFrame, options, start, decodeConfig) {
|
|
103
|
-
const { use16BitDataType } = decodeConfig || {};
|
|
104
103
|
const shouldShift = imageFrame.pixelRepresentation !== undefined &&
|
|
105
104
|
imageFrame.pixelRepresentation === 1;
|
|
106
105
|
const shift = shouldShift && imageFrame.bitsStored !== undefined
|
|
@@ -116,8 +115,8 @@ function postProcessDecodedPixels(imageFrame, options, start, decodeConfig) {
|
|
|
116
115
|
const { min: minBeforeScale, max: maxBeforeScale } = getMinMax(imageFrame.pixelData);
|
|
117
116
|
const typedArrayConstructors = {
|
|
118
117
|
Uint8Array,
|
|
119
|
-
Uint16Array
|
|
120
|
-
Int16Array
|
|
118
|
+
Uint16Array,
|
|
119
|
+
Int16Array,
|
|
121
120
|
Float32Array,
|
|
122
121
|
};
|
|
123
122
|
const type = options.targetBuffer?.type;
|
|
@@ -169,12 +168,9 @@ function postProcessDecodedPixels(imageFrame, options, start, decodeConfig) {
|
|
|
169
168
|
minAfterScale = minBeforeScale;
|
|
170
169
|
maxAfterScale = maxBeforeScale;
|
|
171
170
|
}
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
}
|
|
176
|
-
imageFrame.minAfterScale = minAfterScale;
|
|
177
|
-
imageFrame.maxAfterScale = maxAfterScale;
|
|
171
|
+
imageFrame.pixelData = pixelDataArray;
|
|
172
|
+
imageFrame.smallestPixelValue = minAfterScale;
|
|
173
|
+
imageFrame.largestPixelValue = maxAfterScale;
|
|
178
174
|
const end = new Date().getTime();
|
|
179
175
|
imageFrame.decodeTimeInMS = end - start;
|
|
180
176
|
return imageFrame;
|
|
@@ -183,7 +179,7 @@ function _handleTargetBuffer(options, imageFrame, typedArrayConstructors, pixelD
|
|
|
183
179
|
const { arrayBuffer, type, offset: rawOffset = 0, length: rawLength, rows, } = options.targetBuffer;
|
|
184
180
|
const TypedArrayConstructor = typedArrayConstructors[type];
|
|
185
181
|
if (!TypedArrayConstructor) {
|
|
186
|
-
throw new Error(`target array ${type} is not supported,
|
|
182
|
+
throw new Error(`target array ${type} is not supported, or doesn't exist.`);
|
|
187
183
|
}
|
|
188
184
|
if (rows && rows != imageFrame.rows) {
|
|
189
185
|
scaleImageFrame(imageFrame, options.targetBuffer, TypedArrayConstructor);
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { ByteArray } from 'dicom-parser';
|
|
2
|
-
import {
|
|
3
|
-
export default function (imageFrame:
|
|
1
|
+
import type { ByteArray } from 'dicom-parser';
|
|
2
|
+
import type { Types } from '@cornerstonejs/core';
|
|
3
|
+
export default function (imageFrame: Types.IImageFrame, colorBuffer: ByteArray, useRGBA: boolean): void;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { ByteArray } from 'dicom-parser';
|
|
1
|
+
import type { ByteArray } from 'dicom-parser';
|
|
2
2
|
export default function (imageFrame: ByteArray, colorBuffer: ByteArray, useRGBA: boolean): void;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { ByteArray } from 'dicom-parser';
|
|
1
|
+
import type { ByteArray } from 'dicom-parser';
|
|
2
2
|
export default function (imageFrame: ByteArray, colorBuffer: ByteArray, useRGBA: boolean): void;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { ByteArray } from 'dicom-parser';
|
|
1
|
+
import type { ByteArray } from 'dicom-parser';
|
|
2
2
|
export default function (imageFrame: ByteArray, colorBuffer: ByteArray, useRGBA: boolean): void;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { ByteArray } from 'dicom-parser';
|
|
1
|
+
import type { ByteArray } from 'dicom-parser';
|
|
2
2
|
export default function (imageFrame: ByteArray, colorBuffer: ByteArray, useRGBA: boolean): void;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { ByteArray } from 'dicom-parser';
|
|
1
|
+
import type { ByteArray } from 'dicom-parser';
|
|
2
2
|
export default function (imageFrame: ByteArray, colorBuffer: ByteArray, useRGBA: boolean): void;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { ByteArray } from 'dicom-parser';
|
|
2
|
-
import { DICOMLoaderImageOptions, DICOMLoaderIImage
|
|
3
|
-
|
|
1
|
+
import type { ByteArray } from 'dicom-parser';
|
|
2
|
+
import type { DICOMLoaderImageOptions, DICOMLoaderIImage } from '../types';
|
|
3
|
+
import type { Types } from '@cornerstonejs/core/src';
|
|
4
|
+
declare function createImage(imageId: string, pixelData: ByteArray, transferSyntax: string, options?: DICOMLoaderImageOptions): Promise<DICOMLoaderIImage | Types.IImageFrame>;
|
|
4
5
|
export default createImage;
|
|
@@ -58,19 +58,11 @@ function createImage(imageId, pixelData, transferSyntax, options = {}) {
|
|
|
58
58
|
if (scalingParameters) {
|
|
59
59
|
options.preScale = {
|
|
60
60
|
...options.preScale,
|
|
61
|
-
scalingParameters,
|
|
61
|
+
scalingParameters: scalingParameters,
|
|
62
62
|
};
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
|
-
options.isSharedArrayBuffer =
|
|
66
|
-
options.targetBuffer?.arrayBuffer &&
|
|
67
|
-
options.targetBuffer.arrayBuffer instanceof SharedArrayBuffer;
|
|
68
65
|
const { decodeConfig } = getOptions();
|
|
69
|
-
decodeConfig.use16BitDataType =
|
|
70
|
-
(options && options.targetBuffer?.type === 'Uint16Array') ||
|
|
71
|
-
options.targetBuffer?.type === 'Int16Array'
|
|
72
|
-
? true
|
|
73
|
-
: options.useNativeDataType || decodeConfig.use16BitDataType;
|
|
74
66
|
Object.keys(imageFrame).forEach((key) => {
|
|
75
67
|
if (typeof imageFrame[key] === 'function' ||
|
|
76
68
|
imageFrame[key] instanceof Promise) {
|
|
@@ -78,15 +70,13 @@ function createImage(imageId, pixelData, transferSyntax, options = {}) {
|
|
|
78
70
|
}
|
|
79
71
|
});
|
|
80
72
|
const decodePromise = decodeImageFrame(imageFrame, transferSyntax, pixelData, canvas, options, decodeConfig);
|
|
81
|
-
const { use16BitDataType } = decodeConfig;
|
|
82
73
|
const isColorImage = isColorImageFn(imageFrame.photometricInterpretation);
|
|
83
74
|
return new Promise((resolve, reject) => {
|
|
84
75
|
decodePromise.then(function (imageFrame) {
|
|
85
|
-
if (options.skipCreateImage) {
|
|
86
|
-
return resolve(imageFrame);
|
|
87
|
-
}
|
|
88
76
|
let alreadyTyped = false;
|
|
89
|
-
if (options.targetBuffer &&
|
|
77
|
+
if (options.targetBuffer &&
|
|
78
|
+
options.targetBuffer.type &&
|
|
79
|
+
!isColorImage) {
|
|
90
80
|
const { arrayBuffer, type, offset: rawOffset = 0, length: rawLength, } = options.targetBuffer;
|
|
91
81
|
const imageFrameLength = imageFrame.pixelDataLength;
|
|
92
82
|
const offset = rawOffset;
|
|
@@ -95,8 +85,8 @@ function createImage(imageId, pixelData, transferSyntax, options = {}) {
|
|
|
95
85
|
: imageFrameLength - offset;
|
|
96
86
|
const typedArrayConstructors = {
|
|
97
87
|
Uint8Array,
|
|
98
|
-
Uint16Array
|
|
99
|
-
Int16Array
|
|
88
|
+
Uint16Array,
|
|
89
|
+
Int16Array,
|
|
100
90
|
Float32Array,
|
|
101
91
|
};
|
|
102
92
|
if (length !== imageFrame.pixelDataLength) {
|
|
@@ -152,6 +142,8 @@ function createImage(imageId, pixelData, transferSyntax, options = {}) {
|
|
|
152
142
|
}
|
|
153
143
|
const image = {
|
|
154
144
|
imageId,
|
|
145
|
+
dataType: imageFrame.pixelData.constructor
|
|
146
|
+
.name,
|
|
155
147
|
color: isColorImage,
|
|
156
148
|
calibration: calibrationModule,
|
|
157
149
|
columnPixelSpacing: imagePlaneModule.columnPixelSpacing,
|
|
@@ -186,7 +178,7 @@ function createImage(imageId, pixelData, transferSyntax, options = {}) {
|
|
|
186
178
|
rgba: isColorImage && useRGBA,
|
|
187
179
|
getPixelData: () => imageFrame.pixelData,
|
|
188
180
|
getCanvas: undefined,
|
|
189
|
-
|
|
181
|
+
numberOfComponents: imageFrame.samplesPerPixel,
|
|
190
182
|
};
|
|
191
183
|
if (image.color) {
|
|
192
184
|
image.getCanvas = function () {
|
|
@@ -235,9 +227,10 @@ function createImage(imageId, pixelData, transferSyntax, options = {}) {
|
|
|
235
227
|
image.windowWidth = 256;
|
|
236
228
|
image.windowCenter = 128;
|
|
237
229
|
}
|
|
238
|
-
if (image.windowCenter === undefined ||
|
|
239
|
-
|
|
240
|
-
const
|
|
230
|
+
if (image.windowCenter === undefined ||
|
|
231
|
+
image.windowWidth === undefined) {
|
|
232
|
+
const minVoi = image.imageFrame.smallestPixelValue;
|
|
233
|
+
const maxVoi = image.imageFrame.largestPixelValue;
|
|
241
234
|
image.windowWidth = maxVoi - minVoi;
|
|
242
235
|
image.windowCenter = (maxVoi + minVoi) / 2;
|
|
243
236
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
declare function decodeImageFrame(imageFrame: any, transferSyntax: any, pixelData: any, canvas: any, options: {}, decodeConfig: any): Promise<
|
|
1
|
+
import type { Types } from '@cornerstonejs/core';
|
|
2
|
+
declare function decodeImageFrame(imageFrame: any, transferSyntax: any, pixelData: any, canvas: any, options: {}, decodeConfig: any): Promise<Types.IImageFrame>;
|
|
3
3
|
export default decodeImageFrame;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ByteArray } from 'dicom-parser';
|
|
2
|
-
import {
|
|
3
|
-
declare function decodeJPEGBaseline8BitColor(imageFrame:
|
|
1
|
+
import type { ByteArray } from 'dicom-parser';
|
|
2
|
+
import type { Types } from '@cornerstonejs/core';
|
|
3
|
+
declare function decodeJPEGBaseline8BitColor(imageFrame: Types.IImageFrame, pixelData: ByteArray, canvas: HTMLCanvasElement): Promise<Types.IImageFrame>;
|
|
4
4
|
export default decodeJPEGBaseline8BitColor;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
declare function getImageFrame(imageId: string):
|
|
1
|
+
import type { Types } from '@cornerstonejs/core';
|
|
2
|
+
declare function getImageFrame(imageId: string): Types.IImageFrame;
|
|
3
3
|
export default getImageFrame;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
declare function getInstanceModule(imageId:
|
|
1
|
+
declare function getInstanceModule(imageId: any, metaDataProvider: any, types: any): {};
|
|
2
2
|
declare const instanceModuleNames: string[];
|
|
3
3
|
export { getInstanceModule, instanceModuleNames };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export default function getScalingParameters(metaData, imageId) {
|
|
2
2
|
const modalityLutModule = metaData.get('modalityLutModule', imageId) || {};
|
|
3
|
-
const generalSeriesModule = metaData.get('generalSeriesModule', imageId) ||
|
|
3
|
+
const generalSeriesModule = (metaData.get('generalSeriesModule', imageId) ||
|
|
4
|
+
{});
|
|
4
5
|
const { modality } = generalSeriesModule;
|
|
5
6
|
const scalingParameters = {
|
|
6
7
|
rescaleSlope: modalityLutModule.rescaleSlope,
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="dicom-parser" />
|
|
2
1
|
import { convertRGBColorByPixel, convertRGBColorByPlane, convertYBRFullByPixel, convertYBRFullByPlane, convertPALETTECOLOR } from './colorSpaceConverters/index';
|
|
3
2
|
import { default as wadouri } from './wadouri/index';
|
|
4
3
|
import { default as wadors } from './wadors/index';
|
|
@@ -82,6 +81,7 @@ declare const cornerstoneDICOMImageLoader: {
|
|
|
82
81
|
isJPEGBaseline8BitColor: typeof isJPEGBaseline8BitColor;
|
|
83
82
|
internal: {
|
|
84
83
|
xhrRequest: typeof import("./internal/xhrRequest").default;
|
|
84
|
+
streamRequest: typeof import("./internal/streamRequest").default;
|
|
85
85
|
setOptions: typeof import("./internal/options").setOptions;
|
|
86
86
|
getOptions: typeof import("./internal/options").getOptions;
|
|
87
87
|
};
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { default as xhrRequest } from './xhrRequest';
|
|
2
|
+
import { default as streamRequest } from './streamRequest';
|
|
2
3
|
import { setOptions, getOptions } from './options';
|
|
3
4
|
declare const internal: {
|
|
4
5
|
xhrRequest: typeof xhrRequest;
|
|
6
|
+
streamRequest: typeof streamRequest;
|
|
5
7
|
setOptions: typeof setOptions;
|
|
6
8
|
getOptions: typeof getOptions;
|
|
7
9
|
};
|
|
8
|
-
export { setOptions, getOptions, xhrRequest, internal };
|
|
10
|
+
export { setOptions, getOptions, xhrRequest, internal, streamRequest };
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { default as xhrRequest } from './xhrRequest';
|
|
2
|
+
import { default as streamRequest } from './streamRequest';
|
|
2
3
|
import { setOptions, getOptions } from './options';
|
|
3
4
|
const internal = {
|
|
4
5
|
xhrRequest,
|
|
6
|
+
streamRequest,
|
|
5
7
|
setOptions,
|
|
6
8
|
getOptions,
|
|
7
9
|
};
|
|
8
|
-
export { setOptions, getOptions, xhrRequest, internal };
|
|
10
|
+
export { setOptions, getOptions, xhrRequest, internal, streamRequest };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Enums } from '@cornerstonejs/core';
|
|
2
|
-
import { LoaderXhrRequestPromise } from '../../types';
|
|
3
|
-
import { CornerstoneWadoRsLoaderOptions } from '../wadors/loadImage';
|
|
1
|
+
import type { Enums } from '@cornerstonejs/core';
|
|
2
|
+
import type { LoaderXhrRequestPromise } from '../../types';
|
|
3
|
+
import type { CornerstoneWadoRsLoaderOptions } from '../wadors/loadImage';
|
|
4
4
|
export default function rangeRequest(url: string, imageId: string, defaultHeaders?: Record<string, string>, options?: CornerstoneWadoRsLoaderOptions): LoaderXhrRequestPromise<{
|
|
5
5
|
contentType: string;
|
|
6
6
|
pixelData: Uint8Array;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { CornerstoneWadoRsLoaderOptions } from '../wadors/loadImage';
|
|
1
|
+
import type { CornerstoneWadoRsLoaderOptions } from '../wadors/loadImage';
|
|
2
2
|
export default function streamRequest(url: string, imageId: string, defaultHeaders?: Record<string, string>, options?: CornerstoneWadoRsLoaderOptions): import("packages/core/dist/esm/utilities/ProgressiveIterator").PromiseIterator<unknown>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { LoaderXhrRequestParams, LoaderXhrRequestPromise } from '../../types';
|
|
1
|
+
import type { LoaderXhrRequestParams, LoaderXhrRequestPromise } from '../../types';
|
|
2
2
|
declare function xhrRequest(url: string, imageId: string, defaultHeaders?: Record<string, string>, params?: LoaderXhrRequestParams): LoaderXhrRequestPromise<ArrayBuffer>;
|
|
3
3
|
export default xhrRequest;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
declare function isJPEGBaseline8BitColor(imageFrame:
|
|
1
|
+
import type { Types } from '@cornerstonejs/core';
|
|
2
|
+
declare function isJPEGBaseline8BitColor(imageFrame: Types.IImageFrame, transferSyntax: string): boolean;
|
|
3
3
|
export default isJPEGBaseline8BitColor;
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
import { Types
|
|
1
|
+
import type { Types } from '@cornerstonejs/core';
|
|
2
|
+
import { Enums } from '@cornerstonejs/core';
|
|
2
3
|
export declare function getImageQualityStatus(retrieveOptions: Types.RetrieveOptions, done?: boolean): Enums.ImageQualityStatus;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CornerstoneWadoRsLoaderOptions } from './loadImage';
|
|
1
|
+
import type { CornerstoneWadoRsLoaderOptions } from './loadImage';
|
|
2
2
|
declare function getPixelData(uri: string, imageId: string, mediaType?: string, options?: CornerstoneWadoRsLoaderOptions): import("packages/core/dist/esm/utilities/ProgressiveIterator").PromiseIterator<unknown> | import("../../types").LoaderXhrRequestPromise<{
|
|
3
3
|
contentType: string;
|
|
4
4
|
pixelData: Uint8Array;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Types } from '@cornerstonejs/core';
|
|
2
|
-
import { DICOMLoaderImageOptions } from '../../types';
|
|
2
|
+
import type { DICOMLoaderImageOptions } from '../../types';
|
|
3
3
|
export declare function getTransferSyntaxForContentType(contentType: string): string;
|
|
4
4
|
export interface StreamingData {
|
|
5
5
|
url: string;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare function getFirstNumberValue(sequence:
|
|
1
|
+
declare function getFirstNumberValue(sequence: unknown, key: string): number | null;
|
|
2
2
|
export { getFirstNumberValue };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { WADORSMetaDataElement } from '../../../types';
|
|
1
|
+
import type { WADORSMetaDataElement } from '../../../types';
|
|
2
2
|
declare function getValue<ReturnType = unknown>(element: WADORSMetaDataElement, index?: number, defaultValue?: ReturnType): ReturnType;
|
|
3
3
|
export default getValue;
|
|
@@ -6,7 +6,7 @@ function getValue(element, index, defaultValue) {
|
|
|
6
6
|
if (!element.Value) {
|
|
7
7
|
return defaultValue;
|
|
8
8
|
}
|
|
9
|
-
if (element.Value.length <= index) {
|
|
9
|
+
if (Array.isArray(element.Value) && element.Value.length <= index) {
|
|
10
10
|
return defaultValue;
|
|
11
11
|
}
|
|
12
12
|
return element.Value[index];
|
|
@@ -5,7 +5,10 @@ let metadataByImageURI = [];
|
|
|
5
5
|
let multiframeMetadataByImageURI = {};
|
|
6
6
|
function add(imageId, metadata) {
|
|
7
7
|
const imageURI = imageIdToURI(imageId);
|
|
8
|
-
metadata
|
|
8
|
+
Object.defineProperty(metadata, 'isMultiframe', {
|
|
9
|
+
value: multiframeMetadata.isMultiframe(metadata),
|
|
10
|
+
enumerable: false,
|
|
11
|
+
});
|
|
9
12
|
metadataByImageURI[imageURI] = metadata;
|
|
10
13
|
}
|
|
11
14
|
function get(imageId) {
|
|
@@ -19,11 +19,13 @@ function getFrameInformation(PerFrameFunctionalGroupsSequence, SharedFunctionalG
|
|
|
19
19
|
const shared = {};
|
|
20
20
|
(SharedFunctionalGroupsSequence
|
|
21
21
|
? Object.values(SharedFunctionalGroupsSequence.items[0].dataSet.elements)
|
|
22
|
-
: [])
|
|
22
|
+
: [])
|
|
23
|
+
.map((it) => (shared[it.tag] = it));
|
|
23
24
|
const perFrame = {};
|
|
24
25
|
(PerFrameFunctionalGroupsSequence
|
|
25
26
|
? Object.values(PerFrameFunctionalGroupsSequence.items[frameNumber - 1].dataSet.elements)
|
|
26
|
-
: [])
|
|
27
|
+
: [])
|
|
28
|
+
.map((it) => (perFrame[it.tag] = it));
|
|
27
29
|
return {
|
|
28
30
|
shared,
|
|
29
31
|
perFrame,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { DataSet } from 'dicom-parser';
|
|
2
|
-
import { LoadRequestFunction, DICOMLoaderDataSetWithFetchMore } from '../../types';
|
|
1
|
+
import type { DataSet } from 'dicom-parser';
|
|
2
|
+
import type { LoadRequestFunction, DICOMLoaderDataSetWithFetchMore } from '../../types';
|
|
3
3
|
export interface CornerstoneWadoLoaderCacheManagerInfoResponse {
|
|
4
4
|
cacheSizeInBytes: number;
|
|
5
5
|
numberOfDataSetsCached: number;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { LoadRequestFunction, DICOMLoaderDataSetWithFetchMore } from '../../types';
|
|
1
|
+
import type { LoadRequestFunction, DICOMLoaderDataSetWithFetchMore } from '../../types';
|
|
2
2
|
export default function dataSetFromPartialContent(byteArray: Uint8Array, loadRequest: LoadRequestFunction, metadata: {
|
|
3
3
|
uri: string;
|
|
4
4
|
imageId: string;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { ByteArray, DataSet } from 'dicom-parser';
|
|
1
|
+
import type { ByteArray, DataSet } from 'dicom-parser';
|
|
2
2
|
export default function getEncapsulatedImageFrame(dataSet: DataSet, frameIndex: number): ByteArray;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="dicom-parser" />
|
|
2
1
|
import { getImagePixelModule, getLUTs, getModalityLUTOutputPixelRepresentation, getNumberValues, metaDataProvider } from './metaData/index';
|
|
3
2
|
import getEncapsulatedImageFrame from './getEncapsulatedImageFrame';
|
|
4
3
|
import getUncompressedImageFrame from './getUncompressedImageFrame';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { DataSet } from 'dicom-parser';
|
|
2
|
-
import { Types } from '@cornerstonejs/core';
|
|
3
|
-
import { LoadRequestFunction, DICOMLoaderIImage, DICOMLoaderImageOptions } from '../../types';
|
|
1
|
+
import type { DataSet } from 'dicom-parser';
|
|
2
|
+
import type { Types } from '@cornerstonejs/core';
|
|
3
|
+
import type { LoadRequestFunction, DICOMLoaderIImage, DICOMLoaderImageOptions } from '../../types';
|
|
4
4
|
declare function loadImageFromPromise(dataSetPromise: Promise<DataSet>, imageId: string, frame: number, sharedCacheKey: string, options: DICOMLoaderImageOptions, callbacks?: {
|
|
5
5
|
imageDoneCallback: (image: DICOMLoaderIImage) => void;
|
|
6
6
|
}): Types.IImageLoadObject;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
function getUSEnhancedRegions(metadata) {
|
|
2
|
+
const sequence = metadata.elements['x00186011'];
|
|
3
|
+
if (!sequence || !sequence.items) {
|
|
4
|
+
return [];
|
|
5
|
+
}
|
|
6
|
+
const regions = sequence.items.map((item) => {
|
|
7
|
+
const physicalDeltaX = item.dataSet.double('x0018602c');
|
|
8
|
+
const physicalDeltaY = item.dataSet.double('x0018602e');
|
|
9
|
+
const physicalUnitsXDirection = item.dataSet.uint16('x00186024');
|
|
10
|
+
const physicalUnitsYDirection = item.dataSet.uint16('x00186026');
|
|
11
|
+
const regionLocationMinY0 = item.dataSet.uint16('x0018601a');
|
|
12
|
+
const regionLocationMaxY1 = item.dataSet.uint16('x0018601e');
|
|
13
|
+
const regionLocationMinX0 = item.dataSet.uint16('x00186018');
|
|
14
|
+
const regionLocationMaxX1 = item.dataSet.uint16('x0018601c');
|
|
15
|
+
const referencePixelX0 = item.dataSet.int32('x00186020') || null;
|
|
16
|
+
const referencePixelY0 = item.dataSet.int32('x00186022') || null;
|
|
17
|
+
const referencePhysicalPixelValueY = item.dataSet.uint16('x0018602a');
|
|
18
|
+
const referencePhysicalPixelValueX = item.dataSet.uint16('x00186028');
|
|
19
|
+
const regionSpatialFormat = item.dataSet.uint16('x00186012');
|
|
20
|
+
const regionDataType = item.dataSet.uint16('x00186014');
|
|
21
|
+
const regionFlags = item.dataSet.uint16('x00186016');
|
|
22
|
+
const transducerFrequency = item.dataSet.uint16('x00186030');
|
|
23
|
+
return {
|
|
24
|
+
regionLocationMinY0,
|
|
25
|
+
regionLocationMaxY1,
|
|
26
|
+
regionLocationMinX0,
|
|
27
|
+
regionLocationMaxX1,
|
|
28
|
+
referencePixelX0,
|
|
29
|
+
referencePixelY0,
|
|
30
|
+
physicalDeltaX,
|
|
31
|
+
physicalDeltaY,
|
|
32
|
+
physicalUnitsXDirection,
|
|
33
|
+
physicalUnitsYDirection,
|
|
34
|
+
referencePhysicalPixelValueY,
|
|
35
|
+
referencePhysicalPixelValueX,
|
|
36
|
+
regionSpatialFormat,
|
|
37
|
+
regionDataType,
|
|
38
|
+
regionFlags,
|
|
39
|
+
transducerFrequency,
|
|
40
|
+
};
|
|
41
|
+
});
|
|
42
|
+
return regions;
|
|
43
|
+
}
|
|
44
|
+
export { getUSEnhancedRegions };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { DataSet } from 'dicom-parser';
|
|
3
|
-
declare function getImagePixelModule(dataSet: DataSet):
|
|
1
|
+
import type { Types } from '@cornerstonejs/core';
|
|
2
|
+
import type { DataSet } from 'dicom-parser';
|
|
3
|
+
declare function getImagePixelModule(dataSet: DataSet): Types.ImagePixelModuleMetadata;
|
|
4
4
|
export default getImagePixelModule;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Element } from 'dicom-parser';
|
|
2
|
-
import { LutType } from '../../../types';
|
|
1
|
+
import type { Element } from 'dicom-parser';
|
|
2
|
+
import type { LutType } from '../../../types';
|
|
3
3
|
declare function getLUTs(pixelRepresentation: number, lutSequence: Element): LutType[];
|
|
4
4
|
export default getLUTs;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare function metaDataProvider(type: any, imageId: any):
|
|
1
|
+
declare function metaDataProvider(type: any, imageId: any): any;
|
|
2
2
|
export default metaDataProvider;
|