Sophie

Sophie

distrib > Mageia > 4 > x86_64 > by-pkgid > 7598b8f4e8b56b9708b68012e6aa9940 > files > 219

lib64xapian-devel-1.2.12-4.mga4.x86_64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Xapian: API Documentation: xapian-core: Xapian::ValuePostingSource Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#ffffff">
<!-- Generated by Doxygen 1.5.9 -->
<script type="text/javascript">
<!--
function changeDisplayState (e){
  var num=this.id.replace(/[^[0-9]/g,'');
  var button=this.firstChild;
  var sectionDiv=document.getElementById('dynsection'+num);
  if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
    sectionDiv.style.display='block';
    button.src='open.gif';
  }else{
    sectionDiv.style.display='none';
    button.src='closed.gif';
  }
}
function initDynSections(){
  var divs=document.getElementsByTagName('div');
  var sectionCounter=1;
  for(var i=0;i<divs.length-1;i++){
    if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
      var header=divs[i];
      var section=divs[i+1];
      var button=header.firstChild;
      if (button!='IMG'){
        divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
        button=document.createElement('img');
        divs[i].insertBefore(button,divs[i].firstChild);
      }
      header.style.cursor='pointer';
      header.onclick=changeDisplayState;
      header.id='dynheader'+sectionCounter;
      button.src='closed.gif';
      section.id='dynsection'+sectionCounter;
      section.style.display='none';
      section.style.marginLeft='14px';
      sectionCounter++;
    }
  }
}
window.onload = initDynSections;
-->
</script>
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespaceXapian.html">Xapian</a>::<a class="el" href="classXapian_1_1ValuePostingSource.html">ValuePostingSource</a>
  </div>
</div>
<div class="contents">
<h1>Xapian::ValuePostingSource Class Reference</h1><!-- doxytag: class="Xapian::ValuePostingSource" --><!-- doxytag: inherits="Xapian::PostingSource" -->A posting source which generates weights from a value slot.  
<a href="#_details">More...</a>
<p>
<div class="dynheader">
Inheritance diagram for Xapian::ValuePostingSource:</div>
<div class="dynsection">
<p><center><img src="classXapian_1_1ValuePostingSource__inherit__graph.png" border="0" usemap="#Xapian_1_1ValuePostingSource__inherit__map" alt="Inheritance graph"></center>
<map name="Xapian_1_1ValuePostingSource__inherit__map">
<area shape="rect" href="classXapian_1_1ValueMapPostingSource.html" title="A posting source which looks up weights in a map using values as the key." alt="" coords="5,161,232,188"><area shape="rect" href="classXapian_1_1ValueWeightPostingSource.html" title="A posting source which reads weights from a value slot." alt="" coords="256,161,496,188"><area shape="rect" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings." alt="" coords="165,7,328,33"><area shape="rect" href="classXapian_1_1DecreasingValueWeightPostingSource.html" title="Read weights from a value which is known to decrease as docid increases." alt="" coords="220,239,532,265"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="classXapian_1_1ValuePostingSource-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#ccbffc6b7f573e9a41fc234a410a1ec3">ValuePostingSource</a> (<a class="el" href="namespaceXapian.html#94a899651fa920c72ffa9635bde630ea">Xapian::valueno</a> slot_)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct a <a class="el" href="classXapian_1_1ValuePostingSource.html" title="A posting source which generates weights from a value slot.">ValuePostingSource</a>.  <a href="#ccbffc6b7f573e9a41fc234a410a1ec3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceXapian.html#7f30aa95f0c42b117dafaf66ba24241d">Xapian::doccount</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#73743991ef0f5a2818d56c94e9e019f4">get_termfreq_min</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A lower bound on the number of documents this object can return.  <a href="#73743991ef0f5a2818d56c94e9e019f4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceXapian.html#7f30aa95f0c42b117dafaf66ba24241d">Xapian::doccount</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#dd937d003f986ff60119bffbac277d76">get_termfreq_est</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An estimate of the number of documents this object can return.  <a href="#dd937d003f986ff60119bffbac277d76"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceXapian.html#7f30aa95f0c42b117dafaf66ba24241d">Xapian::doccount</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#c71b845c832955fe708d9ad6dbcf87e5">get_termfreq_max</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An upper bound on the number of documents this object can return.  <a href="#c71b845c832955fe708d9ad6dbcf87e5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#87b22aac8422f80124b50a456d1d85b0">next</a> (<a class="el" href="namespaceXapian.html#cac12803afc9e24ee5141c119acb8884">Xapian::weight</a> min_wt)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Advance the current position to the next matching document.  <a href="#87b22aac8422f80124b50a456d1d85b0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#f11095a4355f96d7bc12074a5a91cd93">skip_to</a> (<a class="el" href="namespaceXapian.html#8fa9094bebe1256a7be935a5ede87a64">Xapian::docid</a> min_docid, <a class="el" href="namespaceXapian.html#cac12803afc9e24ee5141c119acb8884">Xapian::weight</a> min_wt)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Advance to the specified docid.  <a href="#f11095a4355f96d7bc12074a5a91cd93"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#71868e54627098425820f7a76e259197">check</a> (<a class="el" href="namespaceXapian.html#8fa9094bebe1256a7be935a5ede87a64">Xapian::docid</a> min_docid, <a class="el" href="namespaceXapian.html#cac12803afc9e24ee5141c119acb8884">Xapian::weight</a> min_wt)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if the specified docid occurs.  <a href="#71868e54627098425820f7a76e259197"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#4bb7ea314dbd569f90f89731204cdc40">at_end</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return true if the current position is past the last entry in this list.  <a href="#4bb7ea314dbd569f90f89731204cdc40"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceXapian.html#8fa9094bebe1256a7be935a5ede87a64">Xapian::docid</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#6507d4d1a4119058890d92dfad53f40d">get_docid</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the current docid.  <a href="#6507d4d1a4119058890d92dfad53f40d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#764328b2a7085e24393a94eb1d2b91e0">init</a> (const <a class="el" href="classXapian_1_1Database.html">Database</a> &amp;db_)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set this <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> to the start of the list of postings.  <a href="#764328b2a7085e24393a94eb1d2b91e0"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="24ed690d4249ce0929a1a1ff236124f1"></a><!-- doxytag: member="Xapian::ValuePostingSource::db" ref="24ed690d4249ce0929a1a1ff236124f1" args="" -->
<a class="el" href="classXapian_1_1Database.html">Xapian::Database</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#24ed690d4249ce0929a1a1ff236124f1">db</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The database we're reading values from. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="efd7cda358e1dc81ccd72bfe7b0f940c"></a><!-- doxytag: member="Xapian::ValuePostingSource::slot" ref="efd7cda358e1dc81ccd72bfe7b0f940c" args="" -->
<a class="el" href="namespaceXapian.html#94a899651fa920c72ffa9635bde630ea">Xapian::valueno</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#efd7cda358e1dc81ccd72bfe7b0f940c">slot</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The slot we're reading values from. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ddc0e75dc4ad4cfcf1f2d807bc3b32c4"></a><!-- doxytag: member="Xapian::ValuePostingSource::value_it" ref="ddc0e75dc4ad4cfcf1f2d807bc3b32c4" args="" -->
<a class="el" href="classXapian_1_1ValueIterator.html">Xapian::ValueIterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#ddc0e75dc4ad4cfcf1f2d807bc3b32c4">value_it</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Value stream iterator. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f961be7d3dcc2eb8b9e70744ce2c7597"></a><!-- doxytag: member="Xapian::ValuePostingSource::started" ref="f961be7d3dcc2eb8b9e70744ce2c7597" args="" -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#f961be7d3dcc2eb8b9e70744ce2c7597">started</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Flag indicating if we've started (true if we have). <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceXapian.html#7f30aa95f0c42b117dafaf66ba24241d">Xapian::doccount</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#30f64f26a6faddc3f24b8c00e2ba5d0b">termfreq_min</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A lower bound on the term frequency.  <a href="#30f64f26a6faddc3f24b8c00e2ba5d0b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceXapian.html#7f30aa95f0c42b117dafaf66ba24241d">Xapian::doccount</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#b9b4cc08e1ba2da73f059b2312ae3986">termfreq_est</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An estimate of the term frequency.  <a href="#b9b4cc08e1ba2da73f059b2312ae3986"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceXapian.html#7f30aa95f0c42b117dafaf66ba24241d">Xapian::doccount</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXapian_1_1ValuePostingSource.html#3a7be278e6615876d57a254a60826c2f">termfreq_max</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An upper bound on the term frequency.  <a href="#3a7be278e6615876d57a254a60826c2f"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A posting source which generates weights from a value slot. 
<p>
This is a base class for classes which generate weights using values stored in the specified slot. For example, <a class="el" href="classXapian_1_1ValueWeightPostingSource.html" title="A posting source which reads weights from a value slot.">ValueWeightPostingSource</a> uses sortable_unserialise to convert values directly to weights.<p>
The upper bound on the weight returned is set to DBL_MAX. Subclasses should call <a class="el" href="classXapian_1_1PostingSource.html#0643cf1dfb1c3ed2dd1cf5ecfe3f3a10" title="Set an upper bound on what get_weight() can return from now on.">set_maxweight()</a> in their <a class="el" href="classXapian_1_1ValuePostingSource.html#764328b2a7085e24393a94eb1d2b91e0" title="Set this PostingSource to the start of the list of postings.">init()</a> methods after calling <a class="el" href="classXapian_1_1ValuePostingSource.html#764328b2a7085e24393a94eb1d2b91e0" title="Set this PostingSource to the start of the list of postings.">ValuePostingSource::init()</a> if they know a tighter bound on the weight. <hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="ccbffc6b7f573e9a41fc234a410a1ec3"></a><!-- doxytag: member="Xapian::ValuePostingSource::ValuePostingSource" ref="ccbffc6b7f573e9a41fc234a410a1ec3" args="(Xapian::valueno slot_)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Xapian::ValuePostingSource::ValuePostingSource           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceXapian.html#94a899651fa920c72ffa9635bde630ea">Xapian::valueno</a>&nbsp;</td>
          <td class="paramname"> <em>slot_</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Construct a <a class="el" href="classXapian_1_1ValuePostingSource.html" title="A posting source which generates weights from a value slot.">ValuePostingSource</a>. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>slot_</em>&nbsp;</td><td>The value slot to read values from. </td></tr>
  </table>
</dl>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="4bb7ea314dbd569f90f89731204cdc40"></a><!-- doxytag: member="Xapian::ValuePostingSource::at_end" ref="4bb7ea314dbd569f90f89731204cdc40" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Xapian::ValuePostingSource::at_end           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return true if the current position is past the last entry in this list. 
<p>
At least one of <em><a class="el" href="classXapian_1_1ValuePostingSource.html#87b22aac8422f80124b50a456d1d85b0" title="Advance the current position to the next matching document.">next()</a></em>, <em><a class="el" href="classXapian_1_1ValuePostingSource.html#f11095a4355f96d7bc12074a5a91cd93" title="Advance to the specified docid.">skip_to()</a></em> or <em><a class="el" href="classXapian_1_1ValuePostingSource.html#71868e54627098425820f7a76e259197" title="Check if the specified docid occurs.">check()</a></em> will be called before this method is first called. 
<p>Implements <a class="el" href="classXapian_1_1PostingSource.html#98831c9fdea1599f588cd9fef51bbeb5">Xapian::PostingSource</a>.</p>

</div>
</div><p>
<a class="anchor" name="71868e54627098425820f7a76e259197"></a><!-- doxytag: member="Xapian::ValuePostingSource::check" ref="71868e54627098425820f7a76e259197" args="(Xapian::docid min_docid, Xapian::weight min_wt)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Xapian::ValuePostingSource::check           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceXapian.html#8fa9094bebe1256a7be935a5ede87a64">Xapian::docid</a>&nbsp;</td>
          <td class="paramname"> <em>did</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceXapian.html#cac12803afc9e24ee5141c119acb8884">Xapian::weight</a>&nbsp;</td>
          <td class="paramname"> <em>min_wt</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Check if the specified docid occurs. 
<p>
The caller is required to ensure that the specified document id <em>did</em> actually exists in the database. If it does, it must move to that document id, and return true. If it does not, it may either:<p>
<ul>
<li>return true, having moved to a definite position (including "at_end"), which must be the same position as <a class="el" href="classXapian_1_1ValuePostingSource.html#f11095a4355f96d7bc12074a5a91cd93" title="Advance to the specified docid.">skip_to()</a> would have moved to.</li></ul>
<p>
or<p>
<ul>
<li>return false, having moved to an "indeterminate" position, such that a subsequent call to <a class="el" href="classXapian_1_1ValuePostingSource.html#87b22aac8422f80124b50a456d1d85b0" title="Advance the current position to the next matching document.">next()</a> or <a class="el" href="classXapian_1_1ValuePostingSource.html#f11095a4355f96d7bc12074a5a91cd93" title="Advance to the specified docid.">skip_to()</a> will move to the next matching position after <em>did</em>.</li></ul>
<p>
Generally, this method should act like <a class="el" href="classXapian_1_1ValuePostingSource.html#f11095a4355f96d7bc12074a5a91cd93" title="Advance to the specified docid.">skip_to()</a> and return true if that can be done at little extra cost.<p>
Otherwise it should simply check if a particular docid is present, returning true if it is, and false if it isn't.<p>
The default implementation calls <a class="el" href="classXapian_1_1ValuePostingSource.html#f11095a4355f96d7bc12074a5a91cd93" title="Advance to the specified docid.">skip_to()</a> and always returns true.<p>
<a class="el" href="namespaceXapian.html" title="The Xapian namespace contains public interfaces for the Xapian library.">Xapian</a> will always call <a class="el" href="classXapian_1_1ValuePostingSource.html#764328b2a7085e24393a94eb1d2b91e0" title="Set this PostingSource to the start of the list of postings.">init()</a> on a <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> before calling this for the first time.<p>
Note: in the case of a multi-database search, the docid specified is the docid in the single subdatabase relevant to this posting source. See the <em><a class="el" href="classXapian_1_1ValuePostingSource.html#764328b2a7085e24393a94eb1d2b91e0" title="Set this PostingSource to the start of the list of postings.">init()</a></em> method for details.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>did</em>&nbsp;</td><td>The document id to check. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>min_wt</em>&nbsp;</td><td>The minimum weight contribution that is needed (this is just a hint which subclasses may ignore). </td></tr>
  </table>
</dl>

<p>Reimplemented from <a class="el" href="classXapian_1_1PostingSource.html#92098dee93d09781bb5ad48e86434873">Xapian::PostingSource</a>.</p>

<p>Reimplemented in <a class="el" href="classXapian_1_1DecreasingValueWeightPostingSource.html#3ae07f1c25d3b71f437a7cb63a342d5c">Xapian::DecreasingValueWeightPostingSource</a>.</p>

</div>
</div><p>
<a class="anchor" name="6507d4d1a4119058890d92dfad53f40d"></a><!-- doxytag: member="Xapian::ValuePostingSource::get_docid" ref="6507d4d1a4119058890d92dfad53f40d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceXapian.html#8fa9094bebe1256a7be935a5ede87a64">Xapian::docid</a> Xapian::ValuePostingSource::get_docid           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return the current docid. 
<p>
This method may assume that it will only be called when there is a "current document". See <em><a class="el" href="classXapian_1_1PostingSource.html#2e7637a323a90bea45f2dc68c916ea00" title="Return the weight contribution for the current document.">get_weight()</a></em> for details.<p>
Note: in the case of a multi-database search, the returned docid should be in the single subdatabase relevant to this posting source. See the <em><a class="el" href="classXapian_1_1ValuePostingSource.html#764328b2a7085e24393a94eb1d2b91e0" title="Set this PostingSource to the start of the list of postings.">init()</a></em> method for details. 
<p>Implements <a class="el" href="classXapian_1_1PostingSource.html#7b1bd1fcd07d69204f70155588ae544a">Xapian::PostingSource</a>.</p>

</div>
</div><p>
<a class="anchor" name="dd937d003f986ff60119bffbac277d76"></a><!-- doxytag: member="Xapian::ValuePostingSource::get_termfreq_est" ref="dd937d003f986ff60119bffbac277d76" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceXapian.html#7f30aa95f0c42b117dafaf66ba24241d">Xapian::doccount</a> Xapian::ValuePostingSource::get_termfreq_est           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
An estimate of the number of documents this object can return. 
<p>
It must always be true that:<p>
<a class="el" href="classXapian_1_1ValuePostingSource.html#73743991ef0f5a2818d56c94e9e019f4" title="A lower bound on the number of documents this object can return.">get_termfreq_min()</a> &lt;= <a class="el" href="classXapian_1_1ValuePostingSource.html#dd937d003f986ff60119bffbac277d76" title="An estimate of the number of documents this object can return.">get_termfreq_est()</a> &lt;= <a class="el" href="classXapian_1_1ValuePostingSource.html#c71b845c832955fe708d9ad6dbcf87e5" title="An upper bound on the number of documents this object can return.">get_termfreq_max()</a><p>
<a class="el" href="namespaceXapian.html" title="The Xapian namespace contains public interfaces for the Xapian library.">Xapian</a> will always call <a class="el" href="classXapian_1_1ValuePostingSource.html#764328b2a7085e24393a94eb1d2b91e0" title="Set this PostingSource to the start of the list of postings.">init()</a> on a <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> before calling this for the first time. 
<p>Implements <a class="el" href="classXapian_1_1PostingSource.html#0d67eda5783f82951d6c56ad7ff4205b">Xapian::PostingSource</a>.</p>

</div>
</div><p>
<a class="anchor" name="c71b845c832955fe708d9ad6dbcf87e5"></a><!-- doxytag: member="Xapian::ValuePostingSource::get_termfreq_max" ref="c71b845c832955fe708d9ad6dbcf87e5" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceXapian.html#7f30aa95f0c42b117dafaf66ba24241d">Xapian::doccount</a> Xapian::ValuePostingSource::get_termfreq_max           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
An upper bound on the number of documents this object can return. 
<p>
<a class="el" href="namespaceXapian.html" title="The Xapian namespace contains public interfaces for the Xapian library.">Xapian</a> will always call <a class="el" href="classXapian_1_1ValuePostingSource.html#764328b2a7085e24393a94eb1d2b91e0" title="Set this PostingSource to the start of the list of postings.">init()</a> on a <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> before calling this for the first time. 
<p>Implements <a class="el" href="classXapian_1_1PostingSource.html#17de27c84a052c51d62ad498151a4cab">Xapian::PostingSource</a>.</p>

</div>
</div><p>
<a class="anchor" name="73743991ef0f5a2818d56c94e9e019f4"></a><!-- doxytag: member="Xapian::ValuePostingSource::get_termfreq_min" ref="73743991ef0f5a2818d56c94e9e019f4" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceXapian.html#7f30aa95f0c42b117dafaf66ba24241d">Xapian::doccount</a> Xapian::ValuePostingSource::get_termfreq_min           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A lower bound on the number of documents this object can return. 
<p>
<a class="el" href="namespaceXapian.html" title="The Xapian namespace contains public interfaces for the Xapian library.">Xapian</a> will always call <a class="el" href="classXapian_1_1ValuePostingSource.html#764328b2a7085e24393a94eb1d2b91e0" title="Set this PostingSource to the start of the list of postings.">init()</a> on a <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> before calling this for the first time. 
<p>Implements <a class="el" href="classXapian_1_1PostingSource.html#5ecf450314e8b266eb9c8fae78e141d3">Xapian::PostingSource</a>.</p>

</div>
</div><p>
<a class="anchor" name="764328b2a7085e24393a94eb1d2b91e0"></a><!-- doxytag: member="Xapian::ValuePostingSource::init" ref="764328b2a7085e24393a94eb1d2b91e0" args="(const Database &amp;db_)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Xapian::ValuePostingSource::init           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXapian_1_1Database.html">Database</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>db</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set this <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> to the start of the list of postings. 
<p>
This is called automatically by the matcher prior to each query being processed.<p>
If a <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> is used for multiple searches, <em><a class="el" href="classXapian_1_1ValuePostingSource.html#764328b2a7085e24393a94eb1d2b91e0" title="Set this PostingSource to the start of the list of postings.">init()</a></em> will therefore be called multiple times, and must handle this by using the database passed in the most recent call.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>db</em>&nbsp;</td><td>The database which the <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> should iterate through.</td></tr>
  </table>
</dl>
Note: the database supplied to this method must not be modified: in particular, the reopen() method should not be called on it.<p>
Note: in the case of a multi-database search, a separate <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> will be used for each database (the separate PostingSources will be obtained using <em><a class="el" href="classXapian_1_1PostingSource.html#ecd88a39155ec5e04c752360b657f315" title="Clone the posting source.">clone()</a></em>), and each <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> will be passed one of the sub-databases as the <em>db</em> parameter here. The <em>db</em> parameter will therefore always refer to a single database. All docids passed to, or returned from, the <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> refer to docids in that single database, rather than in the multi-database. 
<p>Implements <a class="el" href="classXapian_1_1PostingSource.html#81d793170b496022488c15c3508979b5">Xapian::PostingSource</a>.</p>

<p>Reimplemented in <a class="el" href="classXapian_1_1ValueWeightPostingSource.html#c3844351e28448d1de38fe089d626db4">Xapian::ValueWeightPostingSource</a>, <a class="el" href="classXapian_1_1DecreasingValueWeightPostingSource.html#abbd9d95d77e2aa947377c44d1bb733c">Xapian::DecreasingValueWeightPostingSource</a>, and <a class="el" href="classXapian_1_1ValueMapPostingSource.html#e76de9cb534e96b7a0cc827d89eea8fc">Xapian::ValueMapPostingSource</a>.</p>

</div>
</div><p>
<a class="anchor" name="87b22aac8422f80124b50a456d1d85b0"></a><!-- doxytag: member="Xapian::ValuePostingSource::next" ref="87b22aac8422f80124b50a456d1d85b0" args="(Xapian::weight min_wt)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Xapian::ValuePostingSource::next           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceXapian.html#cac12803afc9e24ee5141c119acb8884">Xapian::weight</a>&nbsp;</td>
          <td class="paramname"> <em>min_wt</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Advance the current position to the next matching document. 
<p>
The <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> starts before the first entry in the list, so <a class="el" href="classXapian_1_1ValuePostingSource.html#87b22aac8422f80124b50a456d1d85b0" title="Advance the current position to the next matching document.">next()</a> must be called before any methods which need the context of the current position.<p>
<a class="el" href="namespaceXapian.html" title="The Xapian namespace contains public interfaces for the Xapian library.">Xapian</a> will always call <a class="el" href="classXapian_1_1ValuePostingSource.html#764328b2a7085e24393a94eb1d2b91e0" title="Set this PostingSource to the start of the list of postings.">init()</a> on a <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> before calling this for the first time.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>min_wt</em>&nbsp;</td><td>The minimum weight contribution that is needed (this is just a hint which subclasses may ignore). </td></tr>
  </table>
</dl>

<p>Implements <a class="el" href="classXapian_1_1PostingSource.html#fd0261e7b428c2a25245da07170e9635">Xapian::PostingSource</a>.</p>

<p>Reimplemented in <a class="el" href="classXapian_1_1DecreasingValueWeightPostingSource.html#ef2944c8ef7812185907af383a3747f2">Xapian::DecreasingValueWeightPostingSource</a>.</p>

</div>
</div><p>
<a class="anchor" name="f11095a4355f96d7bc12074a5a91cd93"></a><!-- doxytag: member="Xapian::ValuePostingSource::skip_to" ref="f11095a4355f96d7bc12074a5a91cd93" args="(Xapian::docid min_docid, Xapian::weight min_wt)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Xapian::ValuePostingSource::skip_to           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceXapian.html#8fa9094bebe1256a7be935a5ede87a64">Xapian::docid</a>&nbsp;</td>
          <td class="paramname"> <em>did</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceXapian.html#cac12803afc9e24ee5141c119acb8884">Xapian::weight</a>&nbsp;</td>
          <td class="paramname"> <em>min_wt</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Advance to the specified docid. 
<p>
If the specified docid isn't in the list, position ourselves on the first document after it (or <a class="el" href="classXapian_1_1ValuePostingSource.html#4bb7ea314dbd569f90f89731204cdc40" title="Return true if the current position is past the last entry in this list.">at_end()</a> if no greater docids are present).<p>
If the current position is already the specified docid, this method will leave the position unmodified.<p>
If the specified docid is earlier than the current position, the behaviour is unspecified. A sensible behaviour would be to leave the current position unmodified, but it is also reasonable to move to the specified docid.<p>
The default implementation calls <a class="el" href="classXapian_1_1ValuePostingSource.html#87b22aac8422f80124b50a456d1d85b0" title="Advance the current position to the next matching document.">next()</a> repeatedly, which works but <a class="el" href="classXapian_1_1ValuePostingSource.html#f11095a4355f96d7bc12074a5a91cd93" title="Advance to the specified docid.">skip_to()</a> can often be implemented much more efficiently.<p>
<a class="el" href="namespaceXapian.html" title="The Xapian namespace contains public interfaces for the Xapian library.">Xapian</a> will always call <a class="el" href="classXapian_1_1ValuePostingSource.html#764328b2a7085e24393a94eb1d2b91e0" title="Set this PostingSource to the start of the list of postings.">init()</a> on a <a class="el" href="classXapian_1_1PostingSource.html" title="Base class which provides an &quot;external&quot; source of postings.">PostingSource</a> before calling this for the first time.<p>
Note: in the case of a multi-database search, the docid specified is the docid in the single subdatabase relevant to this posting source. See the <em><a class="el" href="classXapian_1_1ValuePostingSource.html#764328b2a7085e24393a94eb1d2b91e0" title="Set this PostingSource to the start of the list of postings.">init()</a></em> method for details.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>did</em>&nbsp;</td><td>The document id to advance to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>min_wt</em>&nbsp;</td><td>The minimum weight contribution that is needed (this is just a hint which subclasses may ignore). </td></tr>
  </table>
</dl>

<p>Reimplemented from <a class="el" href="classXapian_1_1PostingSource.html#02e3f5e29a0605d7f9e0a09decbdd9bf">Xapian::PostingSource</a>.</p>

<p>Reimplemented in <a class="el" href="classXapian_1_1DecreasingValueWeightPostingSource.html#e32da549e3042739f2954233c7a9bb3c">Xapian::DecreasingValueWeightPostingSource</a>.</p>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="b9b4cc08e1ba2da73f059b2312ae3986"></a><!-- doxytag: member="Xapian::ValuePostingSource::termfreq_est" ref="b9b4cc08e1ba2da73f059b2312ae3986" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceXapian.html#7f30aa95f0c42b117dafaf66ba24241d">Xapian::doccount</a> <a class="el" href="classXapian_1_1ValuePostingSource.html#b9b4cc08e1ba2da73f059b2312ae3986">Xapian::ValuePostingSource::termfreq_est</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
An estimate of the term frequency. 
<p>
Subclasses should set this if they are overriding the <a class="el" href="classXapian_1_1ValuePostingSource.html#87b22aac8422f80124b50a456d1d85b0" title="Advance the current position to the next matching document.">next()</a>, <a class="el" href="classXapian_1_1ValuePostingSource.html#f11095a4355f96d7bc12074a5a91cd93" title="Advance to the specified docid.">skip_to()</a> or <a class="el" href="classXapian_1_1ValuePostingSource.html#71868e54627098425820f7a76e259197" title="Check if the specified docid occurs.">check()</a> methods. 
</div>
</div><p>
<a class="anchor" name="3a7be278e6615876d57a254a60826c2f"></a><!-- doxytag: member="Xapian::ValuePostingSource::termfreq_max" ref="3a7be278e6615876d57a254a60826c2f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceXapian.html#7f30aa95f0c42b117dafaf66ba24241d">Xapian::doccount</a> <a class="el" href="classXapian_1_1ValuePostingSource.html#3a7be278e6615876d57a254a60826c2f">Xapian::ValuePostingSource::termfreq_max</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
An upper bound on the term frequency. 
<p>
Subclasses should set this if they are overriding the <a class="el" href="classXapian_1_1ValuePostingSource.html#87b22aac8422f80124b50a456d1d85b0" title="Advance the current position to the next matching document.">next()</a>, <a class="el" href="classXapian_1_1ValuePostingSource.html#f11095a4355f96d7bc12074a5a91cd93" title="Advance to the specified docid.">skip_to()</a> or <a class="el" href="classXapian_1_1ValuePostingSource.html#71868e54627098425820f7a76e259197" title="Check if the specified docid occurs.">check()</a> methods. 
</div>
</div><p>
<a class="anchor" name="30f64f26a6faddc3f24b8c00e2ba5d0b"></a><!-- doxytag: member="Xapian::ValuePostingSource::termfreq_min" ref="30f64f26a6faddc3f24b8c00e2ba5d0b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespaceXapian.html#7f30aa95f0c42b117dafaf66ba24241d">Xapian::doccount</a> <a class="el" href="classXapian_1_1ValuePostingSource.html#30f64f26a6faddc3f24b8c00e2ba5d0b">Xapian::ValuePostingSource::termfreq_min</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
A lower bound on the term frequency. 
<p>
Subclasses should set this if they are overriding the <a class="el" href="classXapian_1_1ValuePostingSource.html#87b22aac8422f80124b50a456d1d85b0" title="Advance the current position to the next matching document.">next()</a>, <a class="el" href="classXapian_1_1ValuePostingSource.html#f11095a4355f96d7bc12074a5a91cd93" title="Advance to the specified docid.">skip_to()</a> or <a class="el" href="classXapian_1_1ValuePostingSource.html#71868e54627098425820f7a76e259197" title="Check if the specified docid occurs.">check()</a> methods to return fewer documents. 
</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>xapian/<a class="el" href="postingsource_8h.html">postingsource.h</a></ul>
</div>
<hr>
<address><small>
Documentation for Xapian (version 1.2.12).<br>
Generated on 27 Jun 2012 by
<a href="http://www.doxygen.org/">Doxygen 1.5.9</a>.
</small></address>
</body>
</html>