#include <enquire.h>
Inheritance diagram for Xapian::Weight:
Public Member Functions | |
Weight * | create (const Internal *internal_, Xapian::doclength querysize_, Xapian::termcount wqf_, const std::string &tname_) const |
Create a new weight object of the same type as this and initialise it with the specified statistics. | |
virtual std::string | name () const=0 |
Name of the weighting scheme. | |
virtual std::string | serialise () const=0 |
Serialise object parameters into a string. | |
virtual Weight * | unserialise (const std::string &s) const=0 |
Create object given string serialisation returned by serialise(). | |
virtual Xapian::weight | get_sumpart (Xapian::termcount wdf, Xapian::doclength len) const=0 |
Get a weight which is part of the sum over terms being performed. | |
virtual Xapian::weight | get_maxpart () const=0 |
Gets the maximum value that get_sumpart() may return. | |
virtual Xapian::weight | get_sumextra (Xapian::doclength len) const=0 |
Get an extra weight for a document to add to the sum calculated over the query terms. | |
virtual Xapian::weight | get_maxextra () const=0 |
Gets the maximum value that get_sumextra() may return. | |
virtual bool | get_sumpart_needs_doclength () const |
return false if the weight object doesn't need doclength | |
Protected Member Functions | |
Weight (const Weight &) | |
Protected Attributes | |
const Internal * | internal |
Xapian::doclength | querysize |
Xapian::termcount | wqf |
std::string | tname |
Friends | |
class | Enquire |
class | ::RemoteServer |
class | ::ScaleWeight |
Weight* Xapian::Weight::create | ( | const Internal * | internal_, | |
Xapian::doclength | querysize_, | |||
Xapian::termcount | wqf_, | |||
const std::string & | tname_ | |||
) | const |
Create a new weight object of the same type as this and initialise it with the specified statistics.
You shouldn't call this method yourself - it's called by Enquire.
internal_ | Object to ask for collection statistics. | |
querysize_ | Query size. | |
wqf_ | Within query frequency of term this object is associated with. | |
tname_ | Term which this object is associated with. |
virtual std::string Xapian::Weight::name | ( | ) | const [pure virtual] |
Name of the weighting scheme.
If the subclass is called FooWeight, this should return "Foo".
Implemented in Xapian::BoolWeight, Xapian::BM25Weight, and Xapian::TradWeight.
virtual std::string Xapian::Weight::serialise | ( | ) | const [pure virtual] |
Serialise object parameters into a string.
Implemented in Xapian::BoolWeight, Xapian::BM25Weight, and Xapian::TradWeight.
virtual Weight* Xapian::Weight::unserialise | ( | const std::string & | s | ) | const [pure virtual] |
Create object given string serialisation returned by serialise().
Implemented in Xapian::BoolWeight, Xapian::BM25Weight, and Xapian::TradWeight.
virtual Xapian::weight Xapian::Weight::get_sumpart | ( | Xapian::termcount | wdf, | |
Xapian::doclength | len | |||
) | const [pure virtual] |
Get a weight which is part of the sum over terms being performed.
This returns a weight for a given term and document. These weights are summed to give a total weight for the document.
wdf | the within document frequency of the term. | |
len | the (unnormalised) document length. |
Implemented in Xapian::BoolWeight, Xapian::BM25Weight, and Xapian::TradWeight.
virtual Xapian::weight Xapian::Weight::get_maxpart | ( | ) | const [pure virtual] |
Gets the maximum value that get_sumpart() may return.
This is used in optimising searches, by having the postlist tree decay appropriately when parts of it can have limited, or no, further effect.
Implemented in Xapian::BoolWeight, Xapian::BM25Weight, and Xapian::TradWeight.
virtual Xapian::weight Xapian::Weight::get_sumextra | ( | Xapian::doclength | len | ) | const [pure virtual] |
Get an extra weight for a document to add to the sum calculated over the query terms.
This returns a weight for a given document, and is used by some weighting schemes to account for influence such as document length.
len | the (unnormalised) document length. |
Implemented in Xapian::BoolWeight, Xapian::BM25Weight, and Xapian::TradWeight.
virtual Xapian::weight Xapian::Weight::get_maxextra | ( | ) | const [pure virtual] |
Gets the maximum value that get_sumextra() may return.
This is used in optimising searches.
Implemented in Xapian::BoolWeight, Xapian::BM25Weight, and Xapian::TradWeight.
virtual bool Xapian::Weight::get_sumpart_needs_doclength | ( | ) | const [virtual] |
return false if the weight object doesn't need doclength
Reimplemented in Xapian::BoolWeight, Xapian::BM25Weight, and Xapian::TradWeight.