diff Framework/Enumerations.cpp @ 142:f19194a11c1d wasm

ComputeWindowing in Enumerations.h
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 19 Jan 2018 18:12:42 +0100
parents e2fe9352f240
children a7674c0ae4ac
line wrap: on
line diff
--- a/Framework/Enumerations.cpp	Thu Jan 18 17:23:21 2018 +0100
+++ b/Framework/Enumerations.cpp	Fri Jan 19 18:12:42 2018 +0100
@@ -22,6 +22,7 @@
 #include "Enumerations.h"
 
 #include <Core/Logging.h>
+#include <Core/OrthancException.h>
 
 namespace OrthancStone
 {  
@@ -39,4 +40,33 @@
       return false;
     }
   }  
+
+
+  void ComputeWindowing(float& targetCenter,
+                        float& targetWidth,
+                        ImageWindowing windowing,
+                        float defaultCenter,
+                        float defaultWidth)
+  {
+    switch (windowing)
+    {
+      case ImageWindowing_Default:
+        targetCenter = defaultCenter;
+        targetWidth = defaultWidth;
+        break;
+
+      case ImageWindowing_Bone:
+        targetCenter = 300;
+        targetWidth = 2000;
+        break;
+
+      case ImageWindowing_Lung:
+        targetCenter = -600;
+        targetWidth = 1600;
+        break;
+
+      default:
+        throw Orthanc::OrthancException(Orthanc::ErrorCode_ParameterOutOfRange);
+    }
+  }
 }