@cornerstonejs/core 2.0.0-beta.16 → 2.0.0-beta.18

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.
@@ -41,7 +41,6 @@ declare class Cache implements ICache {
41
41
  incrementVolumeCacheSize: (increment: number) => void;
42
42
  decrementImageCacheSize: (decrement: number) => void;
43
43
  decrementVolumeCacheSize: (decrement: number) => void;
44
- private _restoreImagesFromBuffer;
45
44
  }
46
45
  declare const cache: Cache;
47
46
  export default cache;
@@ -1,7 +1,7 @@
1
1
  import { triggerEvent, imageIdToURI } from '../utilities';
2
2
  import eventTarget from '../eventTarget';
3
3
  import Events from '../enums/Events';
4
- import { ImageVolume } from './classes/ImageVolume';
4
+ import { restoreImagesFromBuffer } from './utils/restoreImagesFromBuffer';
5
5
  const ONE_GB = 1073741824;
6
6
  class Cache {
7
7
  constructor() {
@@ -49,7 +49,7 @@ class Cache {
49
49
  if (volume.imageData) {
50
50
  volume.imageData.delete();
51
51
  }
52
- this._restoreImagesFromBuffer(volume);
52
+ restoreImagesFromBuffer(volume);
53
53
  if (volumeLoadObject.cancelFn) {
54
54
  volumeLoadObject.cancelFn();
55
55
  }
@@ -412,34 +412,6 @@ class Cache {
412
412
  throw error;
413
413
  });
414
414
  }
415
- _restoreImagesFromBuffer(volume) {
416
- if (!(volume instanceof ImageVolume)) {
417
- console.warn('Volume is not an ImageVolume. Cannot restore images from buffer.');
418
- return;
419
- }
420
- const scalarData = volume.getScalarData();
421
- const imageCacheOffsetMap = volume.imageCacheOffsetMap;
422
- if (imageCacheOffsetMap.size === 0) {
423
- return;
424
- }
425
- for (const [imageId, { offset }] of imageCacheOffsetMap) {
426
- const image = this.getImage(imageId);
427
- if (!image) {
428
- console.warn(`Image with id ${imageId} not found in cache.`);
429
- continue;
430
- }
431
- const viewPixelData = image.getPixelData();
432
- const length = viewPixelData.length;
433
- const pixelData = new viewPixelData.constructor(scalarData.buffer, offset, length);
434
- image.getPixelData = () => pixelData;
435
- if (image.imageFrame) {
436
- image.imageFrame.pixelData = pixelData;
437
- }
438
- delete image.bufferView;
439
- this.incrementImageCacheSize(image.sizeInBytes);
440
- }
441
- console.log(`Images restored from buffer for volume ${volume.volumeId}.`);
442
- }
443
415
  }
444
416
  const cache = new Cache();
445
417
  export default cache;
@@ -0,0 +1,2 @@
1
+ import { IImageVolume } from '../../types';
2
+ export declare function restoreImagesFromBuffer(volume: IImageVolume): void;
@@ -0,0 +1,28 @@
1
+ import cache from '../cache';
2
+ export function restoreImagesFromBuffer(volume) {
3
+ if (!volume.getScalarData) {
4
+ return;
5
+ }
6
+ const scalarData = volume.getScalarData();
7
+ const imageCacheOffsetMap = volume.imageCacheOffsetMap;
8
+ if (imageCacheOffsetMap.size === 0) {
9
+ return;
10
+ }
11
+ for (const [imageId, { offset }] of imageCacheOffsetMap) {
12
+ const image = cache.getImage(imageId);
13
+ if (!image) {
14
+ console.warn(`Image with id ${imageId} not found in cache.`);
15
+ continue;
16
+ }
17
+ const viewPixelData = image.getPixelData();
18
+ const length = viewPixelData.length;
19
+ const pixelData = new viewPixelData.constructor(scalarData.buffer, offset, length);
20
+ image.getPixelData = () => pixelData;
21
+ if (image.imageFrame) {
22
+ image.imageFrame.pixelData = pixelData;
23
+ }
24
+ delete image.bufferView;
25
+ cache.incrementImageCacheSize(image.sizeInBytes);
26
+ }
27
+ console.log(`Images restored from buffer for volume ${volume.volumeId}.`);
28
+ }