comparison OrthancFramework/Sources/DicomParsing/DcmtkTranscoder.cpp @ 4297:785a2713323e

abi continued
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 05 Nov 2020 17:20:49 +0100
parents 7112a8af0b63
children 50b0c69b653a
comparison
equal deleted inserted replaced
4296:3b70a2e6a06c 4297:785a2713323e
42 #include <dcmtk/dcmjpls/djrparam.h> // for DJLSRepresentationParameter 42 #include <dcmtk/dcmjpls/djrparam.h> // for DJLSRepresentationParameter
43 43
44 44
45 namespace Orthanc 45 namespace Orthanc
46 { 46 {
47 DcmtkTranscoder::DcmtkTranscoder() :
48 lossyQuality_(90)
49 {
50 }
51
52
47 static bool GetBitsStored(uint16_t& bitsStored, 53 static bool GetBitsStored(uint16_t& bitsStored,
48 DcmDataset& dataset) 54 DcmDataset& dataset)
49 { 55 {
50 return dataset.findAndGetUint16(DCM_BitsStored, bitsStored).good(); 56 return dataset.findAndGetUint16(DCM_BitsStored, bitsStored).good();
51 } 57 }
66 LOG(INFO) << "Quality for lossy transcoding using DCMTK is set to: " << quality; 72 LOG(INFO) << "Quality for lossy transcoding using DCMTK is set to: " << quality;
67 lossyQuality_ = quality; 73 lossyQuality_ = quality;
68 } 74 }
69 } 75 }
70 76
71 77 unsigned int DcmtkTranscoder::GetLossyQuality() const
78 {
79 return lossyQuality_;
80 }
81
82
72 bool DcmtkTranscoder::InplaceTranscode(DicomTransferSyntax& selectedSyntax /* out */, 83 bool DcmtkTranscoder::InplaceTranscode(DicomTransferSyntax& selectedSyntax /* out */,
73 DcmFileFormat& dicom, 84 DcmFileFormat& dicom,
74 const std::set<DicomTransferSyntax>& allowedSyntaxes, 85 const std::set<DicomTransferSyntax>& allowedSyntaxes,
75 bool allowNewSopInstanceUid) 86 bool allowNewSopInstanceUid)
76 { 87 {
222 #endif 233 #endif
223 234
224 return false; 235 return false;
225 } 236 }
226 237
227
228 bool DcmtkTranscoder::IsSupported(DicomTransferSyntax syntax) 238 bool DcmtkTranscoder::IsSupported(DicomTransferSyntax syntax)
229 { 239 {
230 if (syntax == DicomTransferSyntax_LittleEndianImplicit || 240 if (syntax == DicomTransferSyntax_LittleEndianImplicit ||
231 syntax == DicomTransferSyntax_LittleEndianExplicit || 241 syntax == DicomTransferSyntax_LittleEndianExplicit ||
232 syntax == DicomTransferSyntax_BigEndianExplicit || 242 syntax == DicomTransferSyntax_BigEndianExplicit ||