aboutsummaryrefslogtreecommitdiffstats
path: root/streamingvisitors/src/vespa/searchvisitor/rankprocessor.h
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@online.no>2023-04-27 15:36:01 +0200
committerTor Egge <Tor.Egge@online.no>2023-04-27 15:36:01 +0200
commit00dc72987c75579cb85bca577a0d3648191b8203 (patch)
treefe0ad41893816baffdc1df07600c98e48f7c44e2 /streamingvisitors/src/vespa/searchvisitor/rankprocessor.h
parentf5dd3cb5d31875cf596adc01f2207f690afe553f (diff)
Populate match features in search result for streaming search.
Diffstat (limited to 'streamingvisitors/src/vespa/searchvisitor/rankprocessor.h')
-rw-r--r--streamingvisitors/src/vespa/searchvisitor/rankprocessor.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/streamingvisitors/src/vespa/searchvisitor/rankprocessor.h b/streamingvisitors/src/vespa/searchvisitor/rankprocessor.h
index c74a2d1e3ee..5307b66e1d5 100644
--- a/streamingvisitors/src/vespa/searchvisitor/rankprocessor.h
+++ b/streamingvisitors/src/vespa/searchvisitor/rankprocessor.h
@@ -23,6 +23,9 @@ namespace streaming {
class RankProcessor
{
private:
+ using RankProgram = search::fef::RankProgram;
+ using FeatureSet = vespalib::FeatureSet;
+ using FeatureValues = vespalib::FeatureValues;
RankManager::Snapshot::SP _rankManagerSnapshot;
const search::fef::RankSetup & _rankSetup;
QueryWrapper _query;
@@ -37,10 +40,12 @@ private:
search::fef::NumberOrObject _zeroScore;
search::fef::LazyValue _rankScore;
HitCollector::UP _hitCollector;
+ std::unique_ptr<RankProgram> _match_features_program;
void initQueryEnvironment();
void initHitCollector(size_t wantedHitCount);
void setupRankProgram(search::fef::RankProgram &program);
+ FeatureValues calculate_match_features();
/**
* Initializes this rank processor.