comparison Core/DicomFormat/DicomMap.cpp @ 77:b8dfde8d64e8

new dicom tags
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 20 Sep 2012 13:41:18 +0200
parents c996319e90bc
children 6212bf978584
comparison
equal deleted inserted replaced
76:e2d68529605f 77:b8dfde8d64e8
28 28
29 namespace Orthanc 29 namespace Orthanc
30 { 30 {
31 static DicomTag patientTags[] = 31 static DicomTag patientTags[] =
32 { 32 {
33 DicomTag(0x0010, 0x0010), // PatientName
34 DicomTag(0x0010, 0x0020), // PatientID
35 DicomTag(0x0010, 0x0030), // PatientBirthDate
36 DicomTag(0x0010, 0x0040), // PatientSex
37 DicomTag(0x0010, 0x1000) // OtherPatientIDs
38 //DicomTag(0x0010, 0x1010), // PatientAge 33 //DicomTag(0x0010, 0x1010), // PatientAge
39 //DicomTag(0x0010, 0x1040) // PatientAddress 34 //DicomTag(0x0010, 0x1040) // PatientAddress
35 DicomTag(0x0010, 0x0010), // PatientName
36 DicomTag(0x0010, 0x0030), // PatientBirthDate
37 DicomTag(0x0010, 0x0040), // PatientSex
38 DicomTag(0x0010, 0x1000), // OtherPatientIDs
39 DicomTag::PATIENT_ID
40 }; 40 };
41 41
42 static DicomTag studyTags[] = 42 static DicomTag studyTags[] =
43 { 43 {
44 DicomTag(0x0008, 0x0020), // StudyDate
45 DicomTag(0x0008, 0x0030), // StudyTime
46 DicomTag(0x0008, 0x0050), // AccessionNumber
47 DicomTag(0x0008, 0x1030), // StudyDescription
48 DicomTag(0x0020, 0x000d), // StudyInstanceUID
49 DicomTag(0x0020, 0x0010) // StudyID
50 //DicomTag(0x0010, 0x1020), // PatientSize 44 //DicomTag(0x0010, 0x1020), // PatientSize
51 //DicomTag(0x0010, 0x1030) // PatientWeight 45 //DicomTag(0x0010, 0x1030) // PatientWeight
46 DicomTag(0x0008, 0x0020), // StudyDate
47 DicomTag(0x0008, 0x0030), // StudyTime
48 DicomTag(0x0008, 0x1030), // StudyDescription
49 DicomTag(0x0020, 0x0010), // StudyID
50 DicomTag::ACCESSION_NUMBER,
51 DicomTag::STUDY_INSTANCE_UID
52 }; 52 };
53 53
54 static DicomTag seriesTags[] = 54 static DicomTag seriesTags[] =
55 { 55 {
56 DicomTag(0x0008, 0x0021), // SeriesDate
57 DicomTag(0x0008, 0x0031), // SeriesTime
58 DicomTag(0x0008, 0x0060), // Modality
59 DicomTag(0x0008, 0x0070), // Manufacturer
60 DicomTag(0x0008, 0x1010), // StationName
61 DicomTag(0x0008, 0x103e), // SeriesDescription
62 //DicomTag(0x0010, 0x1080), // MilitaryRank 56 //DicomTag(0x0010, 0x1080), // MilitaryRank
63 DicomTag(0x0018, 0x0015), // BodyPartExamined 57 DicomTag(0x0008, 0x0021), // SeriesDate
64 DicomTag(0x0018, 0x0024), // SequenceName 58 DicomTag(0x0008, 0x0031), // SeriesTime
65 DicomTag(0x0018, 0x1030), // ProtocolName 59 DicomTag(0x0008, 0x0060), // Modality
66 DicomTag(0x0020, 0x000e), // SeriesInstanceUID 60 DicomTag(0x0008, 0x0070), // Manufacturer
67 DicomTag(0x0020, 0x0011), // SeriesNumber 61 DicomTag(0x0008, 0x1010), // StationName
68 DicomTag(0x0020, 0x1002), // ImagesInAcquisition 62 DicomTag(0x0008, 0x103e), // SeriesDescription
69 DicomTag(0x0054, 0x0081) // NumberOfSlices 63 DicomTag(0x0018, 0x0015), // BodyPartExamined
64 DicomTag(0x0018, 0x0024), // SequenceName
65 DicomTag(0x0018, 0x1030), // ProtocolName
66 DicomTag(0x0020, 0x0011), // SeriesNumber
67 DicomTag::IMAGES_IN_ACQUISITION,
68 DicomTag::NUMBER_OF_SLICES,
69 DicomTag::SERIES_INSTANCE_UID
70 }; 70 };
71 71
72 static DicomTag instanceTags[] = 72 static DicomTag instanceTags[] =
73 { 73 {
74 DicomTag(0x0008, 0x0012), // InstanceCreationDate 74 DicomTag(0x0008, 0x0012), // InstanceCreationDate
75 DicomTag(0x0008, 0x0013), // InstanceCreationTime 75 DicomTag(0x0008, 0x0013), // InstanceCreationTime
76 DicomTag(0x0008, 0x0018), // SOPInstanceUID 76 DicomTag(0x0020, 0x0012), // AcquisitionNumber
77 DicomTag(0x0020, 0x0012), // AcquisitionNumber 77 DicomTag::CARDIAC_NUMBER_OF_IMAGES,
78 DicomTag(0x0020, 0x0013), // InstanceNumber 78 DicomTag::IMAGE_INDEX,
79 DicomTag(0x0028, 0x0008), // NumberOfFrames 79 DicomTag::INSTANCE_NUMBER,
80 DicomTag(0x0054, 0x1330) // ImageIndex 80 DicomTag::NUMBER_OF_FRAMES,
81 DicomTag::SOP_INSTANCE_UID
81 }; 82 };
82 83
83 84
84 85
85 86
225 void DicomMap::SetupFindSeriesTemplate(DicomMap& result) 226 void DicomMap::SetupFindSeriesTemplate(DicomMap& result)
226 { 227 {
227 SetupFindTemplate(result, seriesTags, sizeof(seriesTags) / sizeof(DicomTag)); 228 SetupFindTemplate(result, seriesTags, sizeof(seriesTags) / sizeof(DicomTag));
228 result.SetValue(DicomTag::ACCESSION_NUMBER, ""); 229 result.SetValue(DicomTag::ACCESSION_NUMBER, "");
229 result.SetValue(DicomTag::PATIENT_ID, ""); 230 result.SetValue(DicomTag::PATIENT_ID, "");
230 result.SetValue(DicomTag::STUDY_UID, ""); 231 result.SetValue(DicomTag::STUDY_INSTANCE_UID, "");
231 } 232 }
232 233
233 void DicomMap::SetupFindInstanceTemplate(DicomMap& result) 234 void DicomMap::SetupFindInstanceTemplate(DicomMap& result)
234 { 235 {
235 SetupFindTemplate(result, instanceTags, sizeof(instanceTags) / sizeof(DicomTag)); 236 SetupFindTemplate(result, instanceTags, sizeof(instanceTags) / sizeof(DicomTag));
236 result.SetValue(DicomTag::ACCESSION_NUMBER, ""); 237 result.SetValue(DicomTag::ACCESSION_NUMBER, "");
237 result.SetValue(DicomTag::PATIENT_ID, ""); 238 result.SetValue(DicomTag::PATIENT_ID, "");
238 result.SetValue(DicomTag::STUDY_UID, ""); 239 result.SetValue(DicomTag::STUDY_INSTANCE_UID, "");
239 result.SetValue(DicomTag::SERIES_UID, ""); 240 result.SetValue(DicomTag::SERIES_INSTANCE_UID, "");
240 } 241 }
241 242
242 243
243 void DicomMap::CopyTagIfExists(const DicomMap& source, 244 void DicomMap::CopyTagIfExists(const DicomMap& source,
244 const DicomTag& tag) 245 const DicomTag& tag)