ohif-viewer/Packages/hangingprotocols/server/select.js
2016-01-11 11:32:20 +01:00

79 lines
3.7 KiB
JavaScript
Executable File

DICOMHP.select = function(hpInstance) {
var imageSetsSequence = hpInstance['00720020'].Value;
if (!imageSetsSequence) {
return [];
}
var matchedImageSets = [];
imageSetsSequence.forEach(function(imageSet) {
var selectorSequence = imageSet['00720022'].Value;
selectorSequence.forEach(function(selector) {
var usageFlag = selector['00720024'].Value[0],
selectorAttribute = selector['00720026'].Value[0],
selectorAttributeVR = selector['00720050'].Value[0],
selectorAttributeValue = null;
if (selectorAttributeVR == 'SQ') {
return;
} else if (selectorAttributeVR == 'AT') {
selectorAttributeValue = selector['00720060'].Value[0];
} else if (selectorAttributeVR == 'CS') {
selectorAttributeValue = selector['00720062'].Value[0];
} else if (selectorAttributeVR == 'IS') {
selectorAttributeValue = selector['00720064'].Value[0];
} else if (selectorAttributeVR == 'LO') {
selectorAttributeValue = selector['00720066'].Value[0];
} else if (selectorAttributeVR == 'LT') {
selectorAttributeValue = selector['00720068'].Value[0];
} else if (selectorAttributeVR == 'PN') {
selectorAttributeValue = selector['0072006A'].Value[0];
} else if (selectorAttributeVR == 'SH') {
selectorAttributeValue = selector['0072006C'].Value[0];
} else if (selectorAttributeVR == 'ST') {
selectorAttributeValue = selector['0072006E'].Value[0];
} else if (selectorAttributeVR == 'UT') {
selectorAttributeValue = selector['00720070'].Value[0];
} else if (selectorAttributeVR == 'DS') {
selectorAttributeValue = selector['00720072'].Value[0];
} else if (selectorAttributeVR == 'FD') {
selectorAttributeValue = selector['00720074'].Value[0];
} else if (selectorAttributeVR == 'FL') {
selectorAttributeValue = selector['00720076'].Value[0];
} else if (selectorAttributeVR == 'UL') {
selectorAttributeValue = selector['00720078'].Value[0];
} else if (selectorAttributeVR == 'US') {
selectorAttributeValue = selector['0072007A'].Value[0];
} else if (selectorAttributeVR == 'SL') {
selectorAttributeValue = selector['0072007C'].Value[0];
} else if (selectorAttributeVR == 'SS') {
selectorAttributeValue = selector['0072007E'].Value[0];
}
if (selectorAttributeValue !== null) {
}
});
var timeBasedImageSetsSequence = imageSet['00720030'].Value;
timeBasedImageSetsSequence.forEach(function(timeImageSet) {
var setNumber = timeImageSet['00720032'].Value[0], selectorCategory = timeImageSet['00720034'].Value[0];
var mImageSet = new DICOMHP.imageSet(setNumber, selectorCategory);
if (selectorCategory == 'RELATIVE_TIME') {
var relativeTime = timeImageSet['00720038'].Value[0], timeUnits = timeImageSet['0072003A'].Value[0];
mImageSet.setRelativeTime(relativeTime);
mImageSet.setTimeUnits(timeUnits);
} else if (selectorCategory == 'ABSTRACT_PRIOR') {
var priorValue = timeImageSet['0072003C'].Value[0];
mImageSet.setPriorValue(priorValue);
}
matchedImageSets.push(mImageSet);
});
});
return matchedImageSets;
};