comparison Core/DicomFormat/DicomMap.cpp @ 1848:e39716f71d67

new main dicom tags
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 01 Dec 2015 13:26:23 +0100
parents 5d8134e54c03
children 68854412c7bc
comparison
equal deleted inserted replaced
1847:559956d5ceb2 1848:e39716f71d67
59 DICOM_TAG_STUDY_DATE, 59 DICOM_TAG_STUDY_DATE,
60 DicomTag(0x0008, 0x0030), // StudyTime 60 DicomTag(0x0008, 0x0030), // StudyTime
61 DicomTag(0x0020, 0x0010), // StudyID 61 DicomTag(0x0020, 0x0010), // StudyID
62 DICOM_TAG_STUDY_DESCRIPTION, 62 DICOM_TAG_STUDY_DESCRIPTION,
63 DICOM_TAG_ACCESSION_NUMBER, 63 DICOM_TAG_ACCESSION_NUMBER,
64 DICOM_TAG_STUDY_INSTANCE_UID 64 DICOM_TAG_STUDY_INSTANCE_UID,
65 DICOM_TAG_REQUESTED_PROCEDURE_DESCRIPTION, // New in db v6
66 DICOM_TAG_INSTITUTION_NAME, // New in db v6
67 DICOM_TAG_REQUESTING_PHYSICIAN, // New in db v6
68 DICOM_TAG_REFERRING_PHYSICIAN_NAME // New in db v6
65 }; 69 };
66 70
67 static DicomTag seriesTags[] = 71 static DicomTag seriesTags[] =
68 { 72 {
69 //DicomTag(0x0010, 0x1080), // MilitaryRank 73 //DicomTag(0x0010, 0x1080), // MilitaryRank
81 DICOM_TAG_IMAGES_IN_ACQUISITION, 85 DICOM_TAG_IMAGES_IN_ACQUISITION,
82 DICOM_TAG_NUMBER_OF_TEMPORAL_POSITIONS, 86 DICOM_TAG_NUMBER_OF_TEMPORAL_POSITIONS,
83 DICOM_TAG_NUMBER_OF_SLICES, 87 DICOM_TAG_NUMBER_OF_SLICES,
84 DICOM_TAG_NUMBER_OF_TIME_SLICES, 88 DICOM_TAG_NUMBER_OF_TIME_SLICES,
85 DICOM_TAG_SERIES_INSTANCE_UID, 89 DICOM_TAG_SERIES_INSTANCE_UID,
86 DICOM_TAG_IMAGE_ORIENTATION_PATIENT, // New in db v6 90 DICOM_TAG_IMAGE_ORIENTATION_PATIENT, // New in db v6
87 DICOM_TAG_SERIES_TYPE // New in db v6 91 DICOM_TAG_SERIES_TYPE, // New in db v6
92 DICOM_TAG_OPERATOR_NAME, // New in db v6
93 DICOM_TAG_PERFORMED_PROCEDURE_STEP_DESCRIPTION // New in db v6
88 }; 94 };
89 95
90 static DicomTag instanceTags[] = 96 static DicomTag instanceTags[] =
91 { 97 {
92 DicomTag(0x0008, 0x0012), // InstanceCreationDate 98 DicomTag(0x0008, 0x0012), // InstanceCreationDate
95 DICOM_TAG_IMAGE_INDEX, 101 DICOM_TAG_IMAGE_INDEX,
96 DICOM_TAG_INSTANCE_NUMBER, 102 DICOM_TAG_INSTANCE_NUMBER,
97 DICOM_TAG_NUMBER_OF_FRAMES, 103 DICOM_TAG_NUMBER_OF_FRAMES,
98 DICOM_TAG_TEMPORAL_POSITION_IDENTIFIER, 104 DICOM_TAG_TEMPORAL_POSITION_IDENTIFIER,
99 DICOM_TAG_SOP_INSTANCE_UID, 105 DICOM_TAG_SOP_INSTANCE_UID,
100 DICOM_TAG_IMAGE_POSITION_PATIENT // New in db v6 106 DICOM_TAG_IMAGE_POSITION_PATIENT, // New in db v6
107 DICOM_TAG_IMAGE_COMMENTS // New in db v6
101 }; 108 };
102 109
103 110
104 void DicomMap::LoadMainDicomTags(const DicomTag*& tags, 111 void DicomMap::LoadMainDicomTags(const DicomTag*& tags,
105 size_t& size, 112 size_t& size,
295 void DicomMap::SetupFindStudyTemplate(DicomMap& result) 302 void DicomMap::SetupFindStudyTemplate(DicomMap& result)
296 { 303 {
297 SetupFindTemplate(result, studyTags, sizeof(studyTags) / sizeof(DicomTag)); 304 SetupFindTemplate(result, studyTags, sizeof(studyTags) / sizeof(DicomTag));
298 result.SetValue(DICOM_TAG_ACCESSION_NUMBER, ""); 305 result.SetValue(DICOM_TAG_ACCESSION_NUMBER, "");
299 result.SetValue(DICOM_TAG_PATIENT_ID, ""); 306 result.SetValue(DICOM_TAG_PATIENT_ID, "");
307
308 // These main DICOM tags are only indirectly related to the
309 // General Study Module, remove them
310 result.Remove(DICOM_TAG_INSTITUTION_NAME);
311 result.Remove(DICOM_TAG_REQUESTING_PHYSICIAN);
312 result.Remove(DICOM_TAG_REQUESTED_PROCEDURE_DESCRIPTION);
300 } 313 }
301 314
302 void DicomMap::SetupFindSeriesTemplate(DicomMap& result) 315 void DicomMap::SetupFindSeriesTemplate(DicomMap& result)
303 { 316 {
304 SetupFindTemplate(result, seriesTags, sizeof(seriesTags) / sizeof(DicomTag)); 317 SetupFindTemplate(result, seriesTags, sizeof(seriesTags) / sizeof(DicomTag));
314 result.Remove(DICOM_TAG_IMAGES_IN_ACQUISITION); 327 result.Remove(DICOM_TAG_IMAGES_IN_ACQUISITION);
315 result.Remove(DICOM_TAG_NUMBER_OF_SLICES); 328 result.Remove(DICOM_TAG_NUMBER_OF_SLICES);
316 result.Remove(DICOM_TAG_NUMBER_OF_TEMPORAL_POSITIONS); 329 result.Remove(DICOM_TAG_NUMBER_OF_TEMPORAL_POSITIONS);
317 result.Remove(DICOM_TAG_NUMBER_OF_TIME_SLICES); 330 result.Remove(DICOM_TAG_NUMBER_OF_TIME_SLICES);
318 result.Remove(DICOM_TAG_IMAGE_ORIENTATION_PATIENT); 331 result.Remove(DICOM_TAG_IMAGE_ORIENTATION_PATIENT);
332 result.Remove(DICOM_TAG_SERIES_TYPE);
319 } 333 }
320 334
321 void DicomMap::SetupFindInstanceTemplate(DicomMap& result) 335 void DicomMap::SetupFindInstanceTemplate(DicomMap& result)
322 { 336 {
323 SetupFindTemplate(result, instanceTags, sizeof(instanceTags) / sizeof(DicomTag)); 337 SetupFindTemplate(result, instanceTags, sizeof(instanceTags) / sizeof(DicomTag));