10 #ifndef _STRUS_QUERY_PROCESSOR_INTERFACE_HPP_INCLUDED
11 #define _STRUS_QUERY_PROCESSOR_INTERFACE_HPP_INCLUDED
22 class PostingIteratorInterface;
24 class AttributeReaderInterface;
42 const std::string& name,
50 const std::string& name)
const=0;
58 const std::string& name,
66 const std::string& name)
const=0;
73 const std::string& name,
81 const std::string& name)
const=0;
102 const std::string& name,
110 const std::string& name)
const=0;
Interface for a scalar function parser.
FunctionType
Function type for fetching the list of available functions.
Definition: queryProcessorInterface.hpp:84
Addresses a parser for a language for arithmetic expression as string.
Definition: queryProcessorInterface.hpp:89
virtual const ScalarFunctionParserInterface * getScalarFunctionParser(const std::string &name) const =0
Get a scalar function parser reference by name.
Interface for parsing scalar function definitions.
Definition: scalarFunctionParserInterface.hpp:21
Addresses a posting iterator join operator.
Definition: queryProcessorInterface.hpp:86
virtual const SummarizerFunctionInterface * getSummarizerFunction(const std::string &name) const =0
Get a summarization function reference by name.
virtual ~QueryProcessorInterface()
Destructor.
Definition: queryProcessorInterface.hpp:31
Interface for summarization functions (additional info about the matches in the result ranklist of a ...
Definition: summarizerFunctionInterface.hpp:25
virtual const PostingJoinOperatorInterface * getPostingJoinOperator(const std::string &name) const =0
Get a join function reference defined by 'name'.
Interface for a function implementing a join of N posting sets and providing an posting iterator on t...
virtual std::string getResourceFilePath(const std::string &filename) const =0
Get the absolute path of a resource file.
Defines all object instances involved in query evaluation addressable by name.
Definition: queryProcessorInterface.hpp:27
virtual void defineSummarizerFunction(const std::string &name, SummarizerFunctionInterface *sumfunc)=0
Define a new summarization function.
virtual std::vector< std::string > getFunctionList(const FunctionType &type) const =0
Get a list of all functions of a specific type available.
Addresses a weighting function.
Definition: queryProcessorInterface.hpp:87
virtual void definePostingJoinOperator(const std::string &name, PostingJoinOperatorInterface *op)=0
Define a new posting set join operation.
Interface for a weighting function that can be used for ranking in the query evaluation.
Definition: weightingFunctionInterface.hpp:24
Interface for creating iterators on joined sets of postings.
Definition: postingJoinOperatorInterface.hpp:23
Interface for a weighting function type.
Addresses a summarization function.
Definition: queryProcessorInterface.hpp:88
Interface for a summarizer function type.
virtual const WeightingFunctionInterface * getWeightingFunction(const std::string &name) const =0
Get a weighting function reference by name.
virtual void defineScalarFunctionParser(const std::string &name, ScalarFunctionParserInterface *parser)=0
Define a function parser for scalar functions used in weighting or summarization. ...
virtual void defineWeightingFunction(const std::string &name, WeightingFunctionInterface *func)=0
Define a new weighting function.