summaryrefslogtreecommitdiffstats
path: root/searchlib/src/vespa/searchlib/queryeval/global_filter.h
diff options
context:
space:
mode:
Diffstat (limited to 'searchlib/src/vespa/searchlib/queryeval/global_filter.h')
-rw-r--r--searchlib/src/vespa/searchlib/queryeval/global_filter.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/searchlib/src/vespa/searchlib/queryeval/global_filter.h b/searchlib/src/vespa/searchlib/queryeval/global_filter.h
index c6e08d5018d..8504367e5b7 100644
--- a/searchlib/src/vespa/searchlib/queryeval/global_filter.h
+++ b/searchlib/src/vespa/searchlib/queryeval/global_filter.h
@@ -26,8 +26,14 @@ public:
virtual bool check(uint32_t docid) const = 0;
virtual ~GlobalFilter();
+ const GlobalFilter *ptr_if_active() const {
+ return is_active() ? this : nullptr;
+ }
+
static std::shared_ptr<GlobalFilter> create();
+ static std::shared_ptr<GlobalFilter> create(std::vector<uint32_t> docids, uint32_t size);
static std::shared_ptr<GlobalFilter> create(std::unique_ptr<BitVector> vector);
+ static std::shared_ptr<GlobalFilter> create(std::vector<std::unique_ptr<BitVector>> vectors);
};
} // namespace