diff OrthancServer/FromDcmtkBridge.cpp @ 2151:8cbb55089a1d

New configuration option: "LoadPrivateDictionary"
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 14 Nov 2016 14:22:45 +0100
parents fd5875662670
children cbebc5d072b0
line wrap: on
line diff
--- a/OrthancServer/FromDcmtkBridge.cpp	Mon Nov 14 12:10:07 2016 +0100
+++ b/OrthancServer/FromDcmtkBridge.cpp	Mon Nov 14 14:22:45 2016 +0100
@@ -177,7 +177,7 @@
   }
 
 
-  void FromDcmtkBridge::InitializeDictionary()
+  void FromDcmtkBridge::InitializeDictionary(bool loadPrivateDictionary)
   {
     {
       DictionaryLocker locker;
@@ -194,7 +194,16 @@
       //LoadEmbeddedDictionary(*locker, EmbeddedResources::DICTIONARY_DICONDE);
 
       LoadEmbeddedDictionary(*locker, EmbeddedResources::DICTIONARY_DICOM);
-      LoadEmbeddedDictionary(*locker, EmbeddedResources::DICTIONARY_PRIVATE);
+
+      if (loadPrivateDictionary)
+      {
+        LOG(INFO) << "Loading the dictionary of private tags";
+        LoadEmbeddedDictionary(*locker, EmbeddedResources::DICTIONARY_PRIVATE);
+      }
+      else
+      {
+        LOG(INFO) << "The dictionary of private tags has not been loaded";
+      }
 
 #elif defined(__linux__) || defined(__FreeBSD_kernel__)
       std::string path = DCMTK_DICTIONARY_DIR;
@@ -206,7 +215,16 @@
       }
 
       LoadExternalDictionary(*locker, path, "dicom.dic");
-      LoadExternalDictionary(*locker, path, "private.dic");
+
+      if (loadPrivateDictionary)
+      {
+        LOG(INFO) << "Loading the dictionary of private tags";
+        LoadExternalDictionary(*locker, path, "private.dic");
+      }
+      else
+      {
+        LOG(INFO) << "The dictionary of private tags has not been loaded";
+      }
 
 #else
 #error Support your platform here