ohif-viewer/src/utils/initWebWorkers.js

38 lines
1.0 KiB
JavaScript
Raw Normal View History

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