comparison Core/DicomParsing/IDicomTranscoder.h @ 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
comparison
equal deleted inserted replaced
3906:f0dd5ded8927 3907:1555feda39e2
60 const void* buffer, 60 const void* buffer,
61 size_t size, 61 size_t size,
62 const std::set<DicomTransferSyntax>& allowedSyntaxes, 62 const std::set<DicomTransferSyntax>& allowedSyntaxes,
63 bool allowNewSopInstanceUid) = 0; 63 bool allowNewSopInstanceUid) = 0;
64 64
65 /**
66 * Transcoding flavor that creates a new parsed DICOM file. A
67 * "std::set<>" is used to give the possible plugin the
68 * possibility to do a single parsing for all the possible
69 * transfer syntaxes.
70 **/
71 virtual DcmFileFormat* TranscodeToParsed(bool& hasSopInstanceUidChanged /* out */,
72 const void* buffer,
73 size_t size,
74 const std::set<DicomTransferSyntax>& allowedSyntaxes,
75 bool allowNewSopInstanceUid) = 0;
76
77 virtual bool HasInplaceTranscode(DicomTransferSyntax inputSyntax, 65 virtual bool HasInplaceTranscode(DicomTransferSyntax inputSyntax,
78 const std::set<DicomTransferSyntax>& outputSyntaxes) const = 0; 66 const std::set<DicomTransferSyntax>& outputSyntaxes) const = 0;
79 67
80 /** 68 /**
81 * In-place transcoding. This method is preferred for C-STORE. 69 * In-place transcoding. This method is preferred for C-STORE.
120 108
121 DcmFileFormat& GetDicom() const; 109 DcmFileFormat& GetDicom() const;
122 }; 110 };
123 111
124 /** 112 /**
125 * This flavor is used by C-STORE. 113 * Transcoding flavor that creates a new parsed DICOM file. A
114 * "std::set<>" is used to give the possible plugin the
115 * possibility to do a single parsing for all the possible
116 * transfer syntaxes. This flavor is used by C-STORE.
126 **/ 117 **/
127 virtual TranscodedDicom* TranscodeToParsed2( 118 virtual TranscodedDicom* TranscodeToParsed(
128 DcmFileFormat& dicom /* in, possibly modified */, 119 DcmFileFormat& dicom /* in, possibly modified */,
129 const void* buffer /* in, same DICOM file as "dicom" */, 120 const void* buffer /* in, same DICOM file as "dicom" */,
130 size_t size, 121 size_t size,
131 const std::set<DicomTransferSyntax>& allowedSyntaxes, 122 const std::set<DicomTransferSyntax>& allowedSyntaxes,
132 bool allowNewSopInstanceUid) = 0; 123 bool allowNewSopInstanceUid) = 0;