comparison OrthancServer/Search/LookupResource.h @ 1755:39c37a994b2f db-changes

handling of DICOM_TAG_MODALITIES_IN_STUDY
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 28 Oct 2015 12:02:15 +0100
parents faf2ecab3472
children 03b030680e3d
comparison
equal deleted inserted replaced
1754:3a4f7dc00f49 1755:39c37a994b2f
30 **/ 30 **/
31 31
32 32
33 #pragma once 33 #pragma once
34 34
35 #include "IFindConstraint.h" 35 #include "ListConstraint.h"
36 #include "SetOfResources.h" 36 #include "SetOfResources.h"
37 37
38 #include <memory> 38 #include <memory>
39 39
40 namespace Orthanc 40 namespace Orthanc
64 IDatabaseWrapper& database) const; 64 IDatabaseWrapper& database) const;
65 }; 65 };
66 66
67 typedef std::map<ResourceType, Level*> Levels; 67 typedef std::map<ResourceType, Level*> Levels;
68 68
69 ResourceType level_; 69 ResourceType level_;
70 Levels levels_; 70 Levels levels_;
71 Constraints unoptimizedConstraints_; 71 Constraints unoptimizedConstraints_;
72 std::auto_ptr<ListConstraint> modalitiesInStudy_;
72 73
73 bool AddInternal(ResourceType level, 74 bool AddInternal(ResourceType level,
74 std::auto_ptr<IFindConstraint>& constraint); 75 std::auto_ptr<IFindConstraint>& constraint);
75 76
76 void ApplyLevel(SetOfResources& candidates, 77 void ApplyLevel(SetOfResources& candidates,
85 ResourceType GetLevel() const 86 ResourceType GetLevel() const
86 { 87 {
87 return level_; 88 return level_;
88 } 89 }
89 90
91 void SetModalitiesInStudy(const std::string& modalities);
92
90 void Add(IFindConstraint* constraint); // Takes ownership 93 void Add(IFindConstraint* constraint); // Takes ownership
91 94
92 void Add(const DicomTag& tag, 95 void AddDicomConstraint(const DicomTag& tag,
93 const std::string& dicomQuery, 96 const std::string& dicomQuery,
94 bool caseSensitivePN); 97 bool caseSensitivePN);
95 98
96 void FindCandidates(std::list<int64_t>& result, 99 void FindCandidates(std::list<int64_t>& result,
97 IDatabaseWrapper& database) const; 100 IDatabaseWrapper& database) const;
98 101
99 bool IsMatch(const Json::Value& dicomAsJson) const; 102 bool IsMatch(const Json::Value& dicomAsJson) const;