ohif-viewer/Packages/hangingprotocols/server/select.js
2015-11-16 12:47:45 -06:00

77 lines
3.3 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;
};