comparison OrthancServer/Sources/ResourceFinder.cpp @ 5697:f375e9983943 find-refactoring

fix
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 12 Jul 2024 11:55:27 +0200
parents 0f8b6214308a
children e8e028aed89f
comparison
equal deleted inserted replaced
5696:0f8b6214308a 5697:f375e9983943
622 { 622 {
623 if (DicomMap::IsMainDicomTag(tag, ResourceType_Patient)) 623 if (DicomMap::IsMainDicomTag(tag, ResourceType_Patient))
624 { 624 {
625 if (request_.GetLevel() == ResourceType_Patient) 625 if (request_.GetLevel() == ResourceType_Patient)
626 { 626 {
627 request_.GetParentSpecification(ResourceType_Patient).SetRetrieveMainDicomTags(true); 627 request_.SetRetrieveMainDicomTags(true);
628 request_.GetParentSpecification(ResourceType_Patient).SetRetrieveMetadata(true); 628 request_.SetRetrieveMetadata(true);
629 requestedPatientTags_.insert(tag); 629 requestedPatientTags_.insert(tag);
630 } 630 }
631 else 631 else
632 { 632 {
633 /** 633 /**
634 * This comes from the fact that patient-level tags are copied 634 * This comes from the fact that patient-level tags are copied
635 * at the study level, as implemented by "ResourcesContent::AddResource()". 635 * at the study level, as implemented by "ResourcesContent::AddResource()".
636 **/ 636 **/
637 request_.GetParentSpecification(ResourceType_Study).SetRetrieveMainDicomTags(true); 637 requestedStudyTags_.insert(tag);
638 request_.GetParentSpecification(ResourceType_Study).SetRetrieveMetadata(true); 638
639 if (request_.GetLevel() == ResourceType_Study)
640 {
641 request_.SetRetrieveMainDicomTags(true);
642 request_.SetRetrieveMetadata(true);
643 }
644 else
645 {
646 request_.GetParentSpecification(ResourceType_Study).SetRetrieveMainDicomTags(true);
647 request_.GetParentSpecification(ResourceType_Study).SetRetrieveMetadata(true);
648 }
649
639 requestedStudyTags_.insert(tag); 650 requestedStudyTags_.insert(tag);
640 } 651 }
641 652
642 hasRequestedTags_ = true; 653 hasRequestedTags_ = true;
643 } 654 }
650 requestedTagsFromFileStorage_.insert(tag); 661 requestedTagsFromFileStorage_.insert(tag);
651 request_.SetRetrieveOneInstanceIdentifier(true); 662 request_.SetRetrieveOneInstanceIdentifier(true);
652 } 663 }
653 else 664 else
654 { 665 {
655 request_.GetParentSpecification(ResourceType_Study).SetRetrieveMainDicomTags(true); 666 if (request_.GetLevel() == ResourceType_Study)
656 request_.GetParentSpecification(ResourceType_Study).SetRetrieveMetadata(true); 667 {
668 request_.SetRetrieveMainDicomTags(true);
669 request_.SetRetrieveMetadata(true);
670 }
671 else
672 {
673 request_.GetParentSpecification(ResourceType_Study).SetRetrieveMainDicomTags(true);
674 request_.GetParentSpecification(ResourceType_Study).SetRetrieveMetadata(true);
675 }
676
657 requestedStudyTags_.insert(tag); 677 requestedStudyTags_.insert(tag);
658 } 678 }
659 679
660 hasRequestedTags_ = true; 680 hasRequestedTags_ = true;
661 } 681 }
669 requestedTagsFromFileStorage_.insert(tag); 689 requestedTagsFromFileStorage_.insert(tag);
670 request_.SetRetrieveOneInstanceIdentifier(true); 690 request_.SetRetrieveOneInstanceIdentifier(true);
671 } 691 }
672 else 692 else
673 { 693 {
674 request_.GetParentSpecification(ResourceType_Series).SetRetrieveMainDicomTags(true); 694 if (request_.GetLevel() == ResourceType_Series)
675 request_.GetParentSpecification(ResourceType_Series).SetRetrieveMetadata(true); 695 {
696 request_.SetRetrieveMainDicomTags(true);
697 request_.SetRetrieveMetadata(true);
698 }
699 else
700 {
701 request_.GetParentSpecification(ResourceType_Series).SetRetrieveMainDicomTags(true);
702 request_.GetParentSpecification(ResourceType_Series).SetRetrieveMetadata(true);
703 }
704
676 requestedSeriesTags_.insert(tag); 705 requestedSeriesTags_.insert(tag);
677 } 706 }
678 707
679 hasRequestedTags_ = true; 708 hasRequestedTags_ = true;
680 } 709 }