Mercurial > hg > orthanc
diff Core/DicomParsing/MemoryBufferTranscoder.cpp @ 3907:1555feda39e2 transcoding
substituting IDicomTranscoder::TranscodeToParsed() by refactored implementation
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 08 May 2020 11:24:34 +0200 |
parents | f0dd5ded8927 |
children | 89ebb37cee6a |
line wrap: on
line diff
--- a/Core/DicomParsing/MemoryBufferTranscoder.cpp Fri May 08 11:16:16 2020 +0200 +++ b/Core/DicomParsing/MemoryBufferTranscoder.cpp Fri May 08 11:24:34 2020 +0200 @@ -87,40 +87,6 @@ } - DcmFileFormat* MemoryBufferTranscoder::TranscodeToParsed(bool& hasSopInstanceUidChanged, - const void* buffer, - size_t size, - const std::set<DicomTransferSyntax>& allowedSyntaxes, - bool allowNewSopInstanceUid) - { -#if ORTHANC_ENABLE_DCMTK_TRANSCODING == 1 - if (useDcmtk_) - { - std::unique_ptr<DcmFileFormat> transcoded( - dcmtk_.TranscodeToParsed(hasSopInstanceUidChanged, buffer, size, - allowedSyntaxes, allowNewSopInstanceUid)); - if (transcoded.get() != NULL) - { - return transcoded.release(); - } - } -#endif - - std::string transcoded; - DicomTransferSyntax sourceSyntax, targetSyntax; - if (Transcode(transcoded, sourceSyntax, targetSyntax, hasSopInstanceUidChanged, - buffer, size, allowedSyntaxes, allowNewSopInstanceUid)) - { - return FromDcmtkBridge::LoadFromMemoryBuffer( - transcoded.empty() ? NULL : transcoded.c_str(), transcoded.size()); - } - else - { - return NULL; - } - } - - bool MemoryBufferTranscoder::HasInplaceTranscode( DicomTransferSyntax inputSyntax, const std::set<DicomTransferSyntax>& outputSyntaxes) const @@ -219,7 +185,7 @@ } - IDicomTranscoder::TranscodedDicom* MemoryBufferTranscoder::TranscodeToParsed2( + IDicomTranscoder::TranscodedDicom* MemoryBufferTranscoder::TranscodeToParsed( DcmFileFormat& dicom /* in, possibly modified */, const void* buffer /* in, same DICOM file as "dicom" */, size_t size, @@ -240,7 +206,7 @@ #if ORTHANC_ENABLE_DCMTK_TRANSCODING == 1 else if (useDcmtk_) { - return dcmtk_.TranscodeToParsed2(dicom, buffer, size, allowedSyntaxes, allowNewSopInstanceUid); + return dcmtk_.TranscodeToParsed(dicom, buffer, size, allowedSyntaxes, allowNewSopInstanceUid); } #endif else