38 lines
1.0 KiB
JavaScript
38 lines
1.0 KiB
JavaScript
import cornerstoneWADOImageLoader from 'cornerstone-wado-image-loader';
|
|
|
|
/**
|
|
*
|
|
* @param {String} baseDirectory
|
|
* @param {String} webWorkScriptsPath
|
|
*/
|
|
export default function initWebWorkers(
|
|
baseDirectory = '/',
|
|
webWorkScriptsPath = ''
|
|
) {
|
|
let scriptsPath = `${window.location.protocol}//${
|
|
window.location.host
|
|
}${baseDirectory}${webWorkScriptsPath}`;
|
|
|
|
// Ensure the last character is a slash
|
|
if (scriptsPath[scriptsPath.length - 1] !== '/') {
|
|
scriptsPath += '/';
|
|
}
|
|
|
|
const config = {
|
|
maxWebWorkers: Math.max(navigator.hardwareConcurrency - 1, 1),
|
|
startWebWorkersOnDemand: true,
|
|
webWorkerPath: `${scriptsPath}cornerstoneWADOImageLoaderWebWorker.min.js`,
|
|
taskConfiguration: {
|
|
decodeTask: {
|
|
loadCodecsOnStartup: true,
|
|
initializeCodecsOnStartup: false,
|
|
codecsPath: `${scriptsPath}cornerstoneWADOImageLoaderCodecs.min.js`,
|
|
usePDFJS: false,
|
|
strict: false,
|
|
},
|
|
},
|
|
};
|
|
|
|
cornerstoneWADOImageLoader.webWorkerManager.initialize(config);
|
|
}
|