ohif-viewer/src/utils/initWebWorkers.js
2019-06-18 21:05:13 -04:00

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);
}