diff 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
line wrap: on
line diff
--- a/OrthancServer/DicomModification.h	Tue Jan 27 14:17:07 2015 +0100
+++ b/OrthancServer/DicomModification.h	Mon Feb 02 16:14:29 2015 +0100
@@ -56,10 +56,13 @@
     ResourceType level_;
     UidMap uidMap_;
     SetOfTags privateTagsToKeep_;
+    bool allowManualIdentifiers_;
 
     void MapDicomIdentifier(ParsedDicomFile& dicom,
                             ResourceType level);
 
+    void MarkNotOrthancAnonymization();
+
   public:
     DicomModification();
 
@@ -70,7 +73,8 @@
     bool IsRemoved(const DicomTag& tag) const;
 
     void Replace(const DicomTag& tag,
-                 const std::string& value);
+                 const std::string& value,
+                 bool safeForAnonymization = false);
 
     bool IsReplaced(const DicomTag& tag) const;
 
@@ -93,5 +97,15 @@
     void SetupAnonymization();
 
     void Apply(ParsedDicomFile& toModify);
+
+    void SetAllowManualIdentifiers(bool check)
+    {
+      allowManualIdentifiers_ = check;
+    }
+
+    bool AreAllowManualIdentifiers() const
+    {
+      return allowManualIdentifiers_;
+    }
   };
 }