Mercurial > hg > orthanc
comparison 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 |
comparison
equal
deleted
inserted
replaced
1823:0ef4e6e66b56 | 1824:b530c3dfe2a6 |
---|---|
32 | 32 |
33 #pragma once | 33 #pragma once |
34 | 34 |
35 #include <dcmtk/dcmdata/dcfilefo.h> | 35 #include <dcmtk/dcmdata/dcfilefo.h> |
36 | 36 |
37 #include "../../Core/Images/ImageBuffer.h" | 37 #include "../IDicomImageDecoder.h" |
38 | 38 |
39 namespace Orthanc | 39 namespace Orthanc |
40 { | 40 { |
41 class DicomImageDecoder | 41 class DicomImageDecoder : public IDicomImageDecoder |
42 { | 42 { |
43 private: | 43 private: |
44 class ImageSource; | 44 class ImageSource; |
45 | 45 |
46 static void DecodeUncompressedImageInternal(ImageBuffer& target, | 46 static void DecodeUncompressedImageInternal(ImageBuffer& target, |
63 DcmDataset& dataset, | 63 DcmDataset& dataset, |
64 unsigned int frame); | 64 unsigned int frame); |
65 #endif | 65 #endif |
66 | 66 |
67 public: | 67 public: |
68 static bool Decode(ImageBuffer& target, | 68 virtual bool Decode(ImageBuffer& target, |
69 DcmDataset& dataset, | 69 ParsedDicomFile& dicom, |
70 unsigned int frame); | 70 unsigned int frame); |
71 | 71 |
72 static bool DecodeAndTruncate(ImageBuffer& target, | 72 static bool TruncateDecodedImage(ImageBuffer& target, |
73 DcmDataset& dataset, | 73 ImageBuffer& source, |
74 unsigned int frame, | 74 PixelFormat format, |
75 PixelFormat format, | 75 bool allowColorConversion); |
76 bool allowColorConversion); | |
77 | 76 |
78 static bool DecodePreview(ImageBuffer& target, | 77 static bool PreviewDecodedImage(ImageBuffer& target, |
79 DcmDataset& dataset, | 78 ImageBuffer& source); |
80 unsigned int frame); | |
81 }; | 79 }; |
82 } | 80 } |