diff OrthancServer/Sources/Search/DicomTagConstraint.h @ 4978:2cfa50d8eb60 more-tags

Speed-up handling of DicomModalitiesInStudy in C-Find and tools/find queries
author Alain Mazy <am@osimis.io>
date Wed, 20 Apr 2022 14:36:47 +0200
parents 6eff25f70121
children 0ea402b4d901
line wrap: on
line diff
--- a/OrthancServer/Sources/Search/DicomTagConstraint.h	Wed Apr 20 11:32:31 2022 +0200
+++ b/OrthancServer/Sources/Search/DicomTagConstraint.h	Wed Apr 20 14:36:47 2022 +0200
@@ -42,7 +42,7 @@
     bool                    caseSensitive_;
     bool                    mandatory_;
 
-    boost::shared_ptr<RegularExpression>  regex_;
+    mutable boost::shared_ptr<RegularExpression>  regex_;  // mutable because the regex is an internal object created only when required (in IsMatch const method)
 
     void AssignSingleValue(const std::string& value);
 
@@ -102,9 +102,9 @@
       return values_;
     }
 
-    bool IsMatch(const std::string& value);
+    bool IsMatch(const std::string& value) const;
 
-    bool IsMatch(const DicomMap& value);
+    bool IsMatch(const DicomMap& value) const;
 
     std::string Format() const;