cod-dicomweb-server
Version:
A wadors server proxy that get data from a Cloud Optimized Dicom format.
25 lines (24 loc) • 1.2 kB
JavaScript
import { Enums } from '../constants';
import { getDataRetrievalManager } from './dataRetrievalManager';
import filePartial from './scripts/filePartial';
import fileStreaming from './scripts/fileStreaming';
export function register(workerNames) {
const { fileStreamingScriptName, filePartialScriptName } = workerNames;
const dataRetrievalManager = getDataRetrievalManager();
if (dataRetrievalManager.getDataRetrieverMode() === Enums.DataRetrieveMode.REQUEST) {
dataRetrievalManager.register(fileStreamingScriptName, fileStreaming);
dataRetrievalManager.register(filePartialScriptName, filePartial);
}
else {
// fileStreaming worker
const streamingWorkerFn = () => new Worker(new URL('./workers/fileStreamingWorker', import.meta.url), {
name: fileStreamingScriptName
});
dataRetrievalManager.register(fileStreamingScriptName, streamingWorkerFn);
// filePartial worker
const partialWorkerFn = () => new Worker(new URL('./workers/filePartialWorker', import.meta.url), {
name: filePartialScriptName
});
dataRetrievalManager.register(filePartialScriptName, partialWorkerFn);
}
}