dicom-microscopy-viewer
Version:
Interactive web-based viewer for DICOM Microscopy Images
32 lines (27 loc) • 661 B
JavaScript
export default class Decoder {
constructor() {
this.codec = undefined
this.decoder = undefined
}
_initialize() {
return Promise.resolve()
}
/** Decode image.
*
* @param {Uint8Array} byteArray - Image array
*
* @returns {Promise<object>} decoded array and frame information
*/
async decode(byteArray) {
if (!this.codec) {
await this._initialize()
}
const encodedBuffer = this.decoder.getEncodedBuffer(byteArray.length)
encodedBuffer.set(byteArray)
this.decoder.decode()
return {
frameBuffer: this.decoder.getDecodedBuffer(),
frameInfo: this.decoder.getFrameInfo(),
}
}
}