comparison OrthancServer/DicomModification.h @ 1279:7f3a65e84d4b

More flexible /modify and /anonymize for single instance
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 02 Feb 2015 16:14:29 +0100
parents 2f76b92addd4
children 6e7e5ed91c2d
comparison
equal deleted inserted replaced
1278:7aa0630a958e 1279:7f3a65e84d4b
54 Replacements replacements_; 54 Replacements replacements_;
55 bool removePrivateTags_; 55 bool removePrivateTags_;
56 ResourceType level_; 56 ResourceType level_;
57 UidMap uidMap_; 57 UidMap uidMap_;
58 SetOfTags privateTagsToKeep_; 58 SetOfTags privateTagsToKeep_;
59 bool allowManualIdentifiers_;
59 60
60 void MapDicomIdentifier(ParsedDicomFile& dicom, 61 void MapDicomIdentifier(ParsedDicomFile& dicom,
61 ResourceType level); 62 ResourceType level);
63
64 void MarkNotOrthancAnonymization();
62 65
63 public: 66 public:
64 DicomModification(); 67 DicomModification();
65 68
66 void Keep(const DicomTag& tag); 69 void Keep(const DicomTag& tag);
68 void Remove(const DicomTag& tag); 71 void Remove(const DicomTag& tag);
69 72
70 bool IsRemoved(const DicomTag& tag) const; 73 bool IsRemoved(const DicomTag& tag) const;
71 74
72 void Replace(const DicomTag& tag, 75 void Replace(const DicomTag& tag,
73 const std::string& value); 76 const std::string& value,
77 bool safeForAnonymization = false);
74 78
75 bool IsReplaced(const DicomTag& tag) const; 79 bool IsReplaced(const DicomTag& tag) const;
76 80
77 const std::string& GetReplacement(const DicomTag& tag) const; 81 const std::string& GetReplacement(const DicomTag& tag) const;
78 82
91 } 95 }
92 96
93 void SetupAnonymization(); 97 void SetupAnonymization();
94 98
95 void Apply(ParsedDicomFile& toModify); 99 void Apply(ParsedDicomFile& toModify);
100
101 void SetAllowManualIdentifiers(bool check)
102 {
103 allowManualIdentifiers_ = check;
104 }
105
106 bool AreAllowManualIdentifiers() const
107 {
108 return allowManualIdentifiers_;
109 }
96 }; 110 };
97 } 111 }