All files / dicomImageLoader/src/shared/decoders decodeJPEGBaseline12Bit-wasm-not-yet-working.ts

0% Statements 0/0
0% Branches 0/0
0% Functions 0/0
0% Lines 0/0

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107                                                                                                                                                                                                                     
// import libjpegTurbo12Factory from '@cornerstonejs/codec-libjpeg-turbo-12bit/dist/libjpegturbo12wasm';
 
// // Webpack asset/resource copies this to our output folder
// import libjpegTurbo12Wasm from '@cornerstonejs/codec-libjpeg-turbo-12bit/dist/libjpegturbo12wasm.wasm';
 
// const local = {
//   codec: undefined,
//   decoder: undefined,
// };
 
// function initLibjpegTurbo() {
//   if (local.codec) {
//     return Promise.resolve();
//   }
 
//   const libjpegTurboModule = libjpegTurbo12Factory({
//     locateFile: (f) => {
//       if (f.endsWith('.wasm')) {
//         return libjpegTurbo12Wasm;
//       }
 
//       return f;
//     },
//   });
 
//   return new Promise((resolve, reject) => {
//     libjpegTurboModule.then((instance) => {
//       local.codec = instance;
//       local.decoder = new instance.JPEGDecoder();
//       //@ts-ignore
//       resolve();
//     }, reject);
//   });
// }
 
// // imageFrame.pixelRepresentation === 1 <-- Signed
// /**
//  *
//  * @param {*} compressedImageFrame
//  * @param {object}  imageInfo
//  * @param {boolean} imageInfo.signed -
//  */
// async function decodeAsync(compressedImageFrame, imageInfo) {
//   await initLibjpegTurbo();
//   const decoder = local.decoder;
 
//   // get pointer to the source/encoded bit stream buffer in WASM memory
//   // that can hold the encoded bitstream
//   const encodedBufferInWASM = decoder.getEncodedBuffer(
//     compressedImageFrame.length
//   );
 
//   // copy the encoded bitstream into WASM memory buffer
//   encodedBufferInWASM.set(compressedImageFrame);
 
//   // decode it
//   decoder.decode();
 
//   // get information about the decoded image
//   const frameInfo = decoder.getFrameInfo();
 
//   // get the decoded pixels
//   const decodedPixelsInWASM = decoder.getDecodedBuffer();
 
//   const encodedImageInfo = {
//     columns: frameInfo.width,
//     rows: frameInfo.height,
//     bitsPerPixel: frameInfo.bitsPerSample,
//     signed: imageInfo.signed,
//     bytesPerPixel: imageInfo.bytesPerPixel,
//     componentsPerPixel: frameInfo.componentCount,
//   };
 
//   const pixelData = getPixelData(frameInfo, decodedPixelsInWASM);
 
//   const encodeOptions = {
//     frameInfo,
//   };
 
//   return {
//     ...imageInfo,
//     pixelData,
//     imageInfo: encodedImageInfo,
//     encodeOptions,
//     ...encodeOptions,
//     ...encodedImageInfo,
//   };
// }
 
// function getPixelData(frameInfo, decodedBuffer) {
//   if (frameInfo.isSigned) {
//     return new Int16Array(
//       decodedBuffer.buffer,
//       decodedBuffer.byteOffset,
//       decodedBuffer.byteLength / 2
//     );
//   }
 
//   return new Uint16Array(
//     decodedBuffer.buffer,
//     decodedBuffer.byteOffset,
//     decodedBuffer.byteLength / 2
//   );
// }
 
// export default decodeAsync;