Skip to content

Commit eac5f09

Browse files
committed
refactor(image-sets-normalization): revamp data structures
1 parent 2553931 commit eac5f09

File tree

7 files changed

+270
-153
lines changed

7 files changed

+270
-153
lines changed

packages/dicom/gdcm/DICOMTagReader.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -503,7 +503,7 @@ namespace itk
503503
{
504504
public:
505505
using MetaDictType = itk::MetaDataDictionary;
506-
using TagMapType = std::map<std::string, std::string>;
506+
using TagMapType = std::unordered_map<std::string, std::string>;
507507

508508
DICOMTagReader()
509509
: m_dirtyCache(true)

packages/dicom/gdcm/Tags.h

+68
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
/*=========================================================================
2+
*
3+
* Copyright NumFOCUS
4+
*
5+
* Licensed under the Apache License, Version 2.0 (the "License");
6+
* you may not use this file except in compliance with the License.
7+
* You may obtain a copy of the License at
8+
*
9+
* https://www.apache.org/licenses/LICENSE-2.0.txt
10+
*
11+
* Unless required by applicable law or agreed to in writing, software
12+
* distributed under the License is distributed on an "AS IS" BASIS,
13+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
* See the License for the specific language governing permissions and
15+
* limitations under the License.
16+
*
17+
*=========================================================================*/
18+
#ifndef TAGS_H
19+
#define TAGS_H
20+
21+
#include <string>
22+
#include <unordered_set>
23+
24+
using Tags = std::unordered_set<std::string>;
25+
26+
const Tags PATIENT_TAGS = {
27+
"0010|0010", // Patient's Name
28+
"0010|0020", // Patient ID
29+
"0010|0030", // Patient's Birth Date
30+
"0010|0040", // Patient's Sex
31+
"0010|1010", // Patient's Age
32+
"0010|1030", // Patient's Weight
33+
"0010|21b0", // Additional Patient's History
34+
};
35+
36+
const Tags STUDY_TAGS = {
37+
"0020|000D", // Study Instance UID
38+
"0008|0020", // Study Date
39+
"0008|0030", // Study Time
40+
"0008|1030", // Study Description
41+
"0008|0050", // Accession Number
42+
};
43+
44+
const Tags SERIES_TAGS = {
45+
"0020|000e", // Series Instance UID
46+
"0008|103e", // Series Description
47+
"0008|0060", // Modality
48+
};
49+
50+
const Tags NON_INSTANCE_TAGS = {
51+
"0010|0010", // Patient's Name
52+
"0010|0020", // Patient ID
53+
"0010|0030", // Patient's Birth Date
54+
"0010|0040", // Patient's Sex
55+
"0010|1010", // Patient's Age
56+
"0010|1030", // Patient's Weight
57+
"0010|21b0", // Additional Patient's History
58+
"0020|000D", // Study Instance UID
59+
"0008|0020", // Study Date
60+
"0008|0030", // Study Time
61+
"0008|1030", // Study Description
62+
"0008|0050", // Accession Number
63+
"0020|000e", // Series Instance UID
64+
"0008|103e", // Series Description
65+
"0008|0060", // Modality
66+
};
67+
68+
#endif // TAGS_H

0 commit comments

Comments
 (0)