diff 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
line wrap: on
line diff
--- a/OrthancServer/Search/LookupResource.h	Wed Oct 28 11:31:58 2015 +0100
+++ b/OrthancServer/Search/LookupResource.h	Wed Oct 28 12:02:15 2015 +0100
@@ -32,7 +32,7 @@
 
 #pragma once
 
-#include "IFindConstraint.h"
+#include "ListConstraint.h"
 #include "SetOfResources.h"
 
 #include <memory>
@@ -66,9 +66,10 @@
 
     typedef std::map<ResourceType, Level*>  Levels;
 
-    ResourceType level_;
-    Levels       levels_;
-    Constraints  unoptimizedConstraints_;
+    ResourceType                    level_;
+    Levels                          levels_;
+    Constraints                     unoptimizedConstraints_; 
+    std::auto_ptr<ListConstraint>   modalitiesInStudy_;
 
     bool AddInternal(ResourceType level,
                      std::auto_ptr<IFindConstraint>& constraint);
@@ -87,11 +88,13 @@
       return level_;
     }
 
+    void SetModalitiesInStudy(const std::string& modalities); 
+
     void Add(IFindConstraint* constraint);   // Takes ownership
 
-    void Add(const DicomTag& tag,
-             const std::string& dicomQuery,
-             bool caseSensitivePN);
+    void AddDicomConstraint(const DicomTag& tag,
+                            const std::string& dicomQuery,
+                            bool caseSensitivePN);
 
     void FindCandidates(std::list<int64_t>& result,
                         IDatabaseWrapper& database) const;