comparison OrthancServer/ServerContext.cpp @ 3951:5fe8c6d3212e transcoding

removed useless information "hasSopInstanceUidChanged"
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 19 May 2020 21:06:53 +0200
parents cf6eb4fc6841
children e42f5445d20d
comparison
equal deleted inserted replaced
3950:5797ca4f3b8d 3951:5fe8c6d3212e
567 567
568 IDicomTranscoder::DicomImage source; 568 IDicomTranscoder::DicomImage source;
569 source.SetExternalBuffer(dicom.GetBufferData(), dicom.GetBufferSize()); 569 source.SetExternalBuffer(dicom.GetBufferData(), dicom.GetBufferSize());
570 570
571 IDicomTranscoder::DicomImage transcoded; 571 IDicomTranscoder::DicomImage transcoded;
572 bool hasSopInstanceUidChanged; 572 if (Transcode(transcoded, source, syntaxes, true /* allow new SOP instance UID */))
573 if (Transcode(transcoded, hasSopInstanceUidChanged,
574 source, syntaxes, true /* allow new SOP instance UID */))
575 { 573 {
576 std::unique_ptr<ParsedDicomFile> tmp(transcoded.ReleaseAsParsedDicomFile()); 574 std::unique_ptr<ParsedDicomFile> tmp(transcoded.ReleaseAsParsedDicomFile());
577 575
578 DicomInstanceToStore toStore; 576 DicomInstanceToStore toStore;
579 toStore.SetParsedDicomFile(*tmp); 577 toStore.SetParsedDicomFile(*tmp);
1321 } 1319 }
1322 } 1320 }
1323 1321
1324 1322
1325 bool ServerContext::Transcode(DicomImage& target, 1323 bool ServerContext::Transcode(DicomImage& target,
1326 bool& hasSopInstanceUidChanged /* out */,
1327 DicomImage& source /* in, "GetParsed()" possibly modified */, 1324 DicomImage& source /* in, "GetParsed()" possibly modified */,
1328 const std::set<DicomTransferSyntax>& allowedSyntaxes, 1325 const std::set<DicomTransferSyntax>& allowedSyntaxes,
1329 bool allowNewSopInstanceUid) 1326 bool allowNewSopInstanceUid)
1330 { 1327 {
1331 if (builtinDecoderTranscoderOrder_ == BuiltinDecoderTranscoderOrder_Before) 1328 if (builtinDecoderTranscoderOrder_ == BuiltinDecoderTranscoderOrder_Before)
1332 { 1329 {
1333 if (dcmtkTranscoder_->Transcode(target, hasSopInstanceUidChanged, source, 1330 if (dcmtkTranscoder_->Transcode(target, source, allowedSyntaxes, allowNewSopInstanceUid))
1334 allowedSyntaxes, allowNewSopInstanceUid))
1335 { 1331 {
1336 return true; 1332 return true;
1337 } 1333 }
1338 } 1334 }
1339 1335
1340 #if ORTHANC_ENABLE_PLUGINS == 1 1336 #if ORTHANC_ENABLE_PLUGINS == 1
1341 if (HasPlugins() && 1337 if (HasPlugins() &&
1342 GetPlugins().HasCustomTranscoder()) 1338 GetPlugins().HasCustomTranscoder())
1343 { 1339 {
1344 if (GetPlugins().Transcode(target, hasSopInstanceUidChanged, source, 1340 if (GetPlugins().Transcode(target, source, allowedSyntaxes, allowNewSopInstanceUid))
1345 allowedSyntaxes, allowNewSopInstanceUid))
1346 { 1341 {
1347 return true; 1342 return true;
1348 } 1343 }
1349 else if (builtinDecoderTranscoderOrder_ == BuiltinDecoderTranscoderOrder_After) 1344 else if (builtinDecoderTranscoderOrder_ == BuiltinDecoderTranscoderOrder_After)
1350 { 1345 {
1354 } 1349 }
1355 #endif 1350 #endif
1356 1351
1357 if (builtinDecoderTranscoderOrder_ == BuiltinDecoderTranscoderOrder_After) 1352 if (builtinDecoderTranscoderOrder_ == BuiltinDecoderTranscoderOrder_After)
1358 { 1353 {
1359 return dcmtkTranscoder_->Transcode(target, hasSopInstanceUidChanged, source, 1354 return dcmtkTranscoder_->Transcode(target, source, allowedSyntaxes, allowNewSopInstanceUid);
1360 allowedSyntaxes, allowNewSopInstanceUid);
1361 } 1355 }
1362 else 1356 else
1363 { 1357 {
1364 return false; 1358 return false;
1365 } 1359 }