Retrieve FrameIncrementPointer as an attribute and FrameTimeVector as a float array via DICOMWeb and DIMSE

This commit is contained in:
Evren Ozkan committed 2016-10-25 11:06:16 -04:00
1 parent 255b60e2fc
commit 8e9265ab23
9 files changed
+93 -2

No files matched your search

@@ -1,3 +1,5 @@
import { parseFloatArray } from '../../lib/parseFloatArray';
/**
* Parses the SourceImageSequence, if it exists, in order
* to return a ReferenceSOPInstanceUID. The ReferenceSOPInstanceUID
@@ -16,6 +18,21 @@ function getSourceImageInstanceUid(instance) {
}
}
/**
* Returns the value of the element (e.g. '00280009')
*
* @param element - The group/element of the element (e.g. '00280009')
* @param defaultValue - The default value to return if the element does not exist
* @returns {*}
*/
function getValue(element, defaultValue) {
if (!element || !element.value) {
return defaultValue;
}
return element.value;
}
/**
* Parses result data from a DIMSE search into Study MetaData
* Returns an object populated with study metadata, including the
@@ -102,7 +119,9 @@ function resultDataToStudyMetadata(studyInstanceUid, resultData) {
viewPosition: instance[0x00185101],
acquisitionDatetime: instance[0x0008002A],
numFrames: parseFloat(instance[0x00280008]),
frameIncrementPointer: getValue(instance[0x00280009]),
frameTime: parseFloat(instance[0x00181063]),
frameTimeVector: parseFloatArray(instance[0x00181065]),
lossyImageCompression: instance[0x00282110],
derivationDescription: instance[0x00282111],
lossyImageCompressionRatio: instance[0x00282112],
@@ -1,4 +1,5 @@
import { remoteGetValue } from '../../lib/remoteGetValue';
import { parseFloatArray } from '../../lib/parseFloatArray';
/**
* Parses the SourceImageSequence, if it exists, in order
@@ -97,7 +98,9 @@ function resultDataToStudyMetadata(server, studyInstanceUid, resultData) {
viewPosition: remoteGetValue(instance['0018,5101']),
acquisitionDatetime: remoteGetValue(instance['0008,002A']),
numFrames: parseFloat(remoteGetValue(instance['0028,0008'])),
frameTime: parseFloat(remoteGetValue(instance['0018,1063']))
frameIncrementPointer: remoteGetValue(instance['0028,0009']),
frameTime: parseFloat(remoteGetValue(instance['0018,1063'])),
frameTimeVector: parseFloatArray(remoteGetValue(instance['0018,1065']))
};
var iid = instance['xxxx,0001'].Value;
@@ -1,3 +1,5 @@
import { parseFloatArray } from '../../lib/parseFloatArray';
/**
* Creates a URL for a WADO search
*
@@ -108,7 +110,9 @@ function resultDataToStudyMetadata(server, studyInstanceUid, resultData) {
viewPosition: DICOMWeb.getString(instance['00185101']),
acquisitionDatetime: DICOMWeb.getString(instance['0008002A']),
numFrames: DICOMWeb.getNumber(instance['00280008']),
frameIncrementPointer: DICOMWeb.getAttribute(instance['00280009']),
frameTime: DICOMWeb.getNumber(instance['00181063']),
frameTimeVector: parseFloatArray(DICOMWeb.getString(instance['00181065'])),
sliceThickness: DICOMWeb.getNumber(instance['00180050']),
lossyImageCompression: DICOMWeb.getString(instance['00282110']),
derivationDescription: DICOMWeb.getString(instance['00282111']),