Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

Xapian::Weight Class Reference

Abstract base class for weighting schemes. More...

#include <enquire.h>

Inheritance diagram for Xapian::Weight:

Inheritance graph
[legend]
List of all members.

Public Methods

 Weight ()
virtual ~Weight ()
Weight * create (const Internal *internal_, Xapian::doclength querysize_, Xapian::termcount wqf_, std::string tname_) const
 Create a new weight object of the same type as this and initialise it with the specified statistics. More...

virtual std::string name () const=0
 Name of the weighting scheme. More...

virtual std::string serialise () const=0
 Serialise object parameters into a string. More...

virtual Weight * Weight::unserialise (const std::string &s) const=0
 Create object given string serialisation returned by serialise(). More...

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. More...

virtual Xapian::weight get_maxpart () const=0
 Gets the maximum value that get_sumpart() may return. More...

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. More...

virtual Xapian::weight get_maxextra () const=0
 Gets the maximum value that get_sumextra() may return. More...

virtual bool get_sumpart_needs_doclength () const
 return false if the weight object doesn't need doclength. More...


Protected Attributes

const Internal * internal
Xapian::doclength querysize
Xapian::termcount wqf
std::string tname

Friends

class Enquire
class SocketServer

Detailed Description

Abstract base class for weighting schemes.


Member Function Documentation

Weight* Xapian::Weight::create const Internal *    internal_,
Xapian::doclength    querysize_,
Xapian::termcount    wqf_,
std::string    tname_
const [inline]
 

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.

Parameters:
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 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 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.

Parameters:
len  the (unnormalised) document length.

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.

Parameters:
wdf  the within document frequency of the term.
len  the (unnormalised) document length.

Implemented in Xapian::BoolWeight, Xapian::BM25Weight, and Xapian::TradWeight.

virtual bool Xapian::Weight::get_sumpart_needs_doclength   const [inline, virtual]
 

return false if the weight object doesn't need doclength.

Reimplemented in Xapian::BoolWeight, Xapian::BM25Weight, and Xapian::TradWeight.

virtual std::string Xapian::Weight::name   const [pure virtual]
 

Name of the weighting scheme.

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::Weight::unserialise const std::string &    s const [pure virtual]
 

Create object given string serialisation returned by serialise().


The documentation for this class was generated from the following file:
Documentation for Xapian (version 0.7.4).
Generated on 2 Oct 2003 by Doxygen 1.2.15.