diff OrthancServer/Internals/DicomImageDecoder.h @ 1824:b530c3dfe2a6

refactoring image decoding
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 25 Nov 2015 14:14:32 +0100
parents 96582230ddcb
children ac5b0b4e2434
line wrap: on
line diff
--- a/OrthancServer/Internals/DicomImageDecoder.h	Wed Nov 25 10:32:54 2015 +0100
+++ b/OrthancServer/Internals/DicomImageDecoder.h	Wed Nov 25 14:14:32 2015 +0100
@@ -34,11 +34,11 @@
 
 #include <dcmtk/dcmdata/dcfilefo.h>
 
-#include "../../Core/Images/ImageBuffer.h"
+#include "../IDicomImageDecoder.h"
 
 namespace Orthanc
 {
-  class DicomImageDecoder
+  class DicomImageDecoder : public IDicomImageDecoder
   {
   private:
     class ImageSource;
@@ -65,18 +65,16 @@
 #endif
 
   public:
-    static bool Decode(ImageBuffer& target,
-                       DcmDataset& dataset,
-                       unsigned int frame);
+    virtual bool Decode(ImageBuffer& target,
+                        ParsedDicomFile& dicom,
+                        unsigned int frame);
 
-    static bool DecodeAndTruncate(ImageBuffer& target,
-                                  DcmDataset& dataset,
-                                  unsigned int frame,
-                                  PixelFormat format,
-                                  bool allowColorConversion);
+    static bool TruncateDecodedImage(ImageBuffer& target,
+                                     ImageBuffer& source,
+                                     PixelFormat format,
+                                     bool allowColorConversion);
 
-    static bool DecodePreview(ImageBuffer& target,
-                              DcmDataset& dataset,
-                              unsigned int frame);
+    static bool PreviewDecodedImage(ImageBuffer& target,
+                                    ImageBuffer& source);
   };
 }