create dicom web api
This commit is contained in:
1 parent
97004de446
commit
ee69a5a40b
4 files changed
+272
-23
No files matched your search
@@ -0,0 +1,46 @@
|
||||
import { api } from 'dicomweb-client';
|
||||
import { mapParams, search, processResults } from './qido.js';
|
||||
import IWebApi from '@ohif/core';
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {string} name - Data source name
|
||||
* @param {string} wadoUriRoot - Legacy? (potentially unused/replaced)
|
||||
* @param {string} qidoRoot - Base URL to use for QIDO requests
|
||||
* @param {string} wadoRoot - Base URL to use for WADO requests
|
||||
* @param {boolean} qidoSupportsIncludeField - Whether QIDO supports the "Include" option to request additional fields in response
|
||||
* @param {string} imageRengering - wadors | ? (unsure of where/how this is used)
|
||||
* @param {string} thumbnailRendering - wadors | ? (unsure of where/how this is used)
|
||||
* @param {bool} lazyLoadStudy - "enableStudyLazyLoad"; Request series meta async instead of blocking
|
||||
*/
|
||||
function createDicomWebApi(dicomWebConfig) {
|
||||
const { qidoRoot } = dicomWebConfig;
|
||||
const config = {
|
||||
url: qidoRoot,
|
||||
// headers: DICOMWeb.getAuthorizationHeader(server),
|
||||
};
|
||||
|
||||
const dicomWebClient = new api.DICOMwebClient(config);
|
||||
|
||||
return IWebApi({
|
||||
query: {
|
||||
studies: {
|
||||
mapParams: mapParams.bind(),
|
||||
search: search.bind(undefined, dicomWebClient, null, null),
|
||||
processResults: processResults.bind(),
|
||||
},
|
||||
instances: {
|
||||
search: (studyInstanceUid, queryParamaters) =>
|
||||
search.call(
|
||||
undefined,
|
||||
dicomWebClient,
|
||||
studyInstanceUid,
|
||||
null,
|
||||
queryParamaters
|
||||
),
|
||||
},
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
export { createDicomWebApi };
|
||||
Reference in new issue
Block a user