diff OrthancServer/Internals/DicomImageDecoder.h @ 859:610a9a1ed855 jpeg

ImageProcessing::Convert
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 06 Jun 2014 18:12:31 +0200
parents 5944b8b80842
children 3c0d0836f704
line wrap: on
line diff
--- a/OrthancServer/Internals/DicomImageDecoder.h	Fri Jun 06 15:25:31 2014 +0200
+++ b/OrthancServer/Internals/DicomImageDecoder.h	Fri Jun 06 18:12:31 2014 +0200
@@ -40,8 +40,14 @@
 {
   class DicomImageDecoder
   {
-  public:   // TODO SWITCH TO PRIVATE
-    //private:
+  public:
+    enum Mode
+    {
+      Mode_Truncate,
+      Mode_Stretch
+    };
+
+  private:
     class ImageSource;
 
     static void DecodeUncompressedImageInternal(ImageBuffer& target,
@@ -53,6 +59,7 @@
     static void SetupImageBuffer(ImageBuffer& target,
                                  DcmDataset& dataset);
 
+  public:   // TODO SWITCH TO PRIVATE
     static bool DecodePsmctRle1(std::string& output,
                                 DcmDataset& dataset);
 
@@ -65,6 +72,12 @@
                                         DcmDataset& dataset,
                                         unsigned int frame);
 
+    static void DecodeUncompressedImage(ImageBuffer& target,
+                                        DcmDataset& dataset,
+                                        unsigned int frame,
+                                        PixelFormat format,
+                                        Mode mode);
+
 #if ORTHANC_JPEG_LOSSLESS_ENABLED == 1
     static void DecodeJpegLossless(ImageBuffer& target,
                                    DcmDataset& dataset,
@@ -74,5 +87,12 @@
     static bool Decode(ImageBuffer& target,
                        DcmDataset& dataset,
                        unsigned int frame);
+
+    static bool Decode(ImageBuffer& target,
+                       DcmDataset& dataset,
+                       unsigned int frame,
+                       PixelFormat format,
+                       Mode mode);
+
   };
 }