<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.3"/>
<title>Lucene.Net: Lucene.Net.Search.Scorer Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="lucene-net-icon-128x128.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">Lucene.Net
   &#160;<span id="projectnumber">3.0.3</span>
   </div>
   <div id="projectbrief">Lucene.Net is a .NET port of the Java Lucene Indexing Library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.3 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="Index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Packages</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>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Properties</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespace_lucene.html">Lucene</a></li><li class="navelem"><a class="el" href="namespace_lucene_1_1_net.html">Net</a></li><li class="navelem"><a class="el" href="namespace_lucene_1_1_net_1_1_search.html">Search</a></li><li class="navelem"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html">Scorer</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="class_lucene_1_1_net_1_1_search_1_1_scorer-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Lucene.Net.Search.Scorer Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
</div><!--header-->
<div class="contents">

<p>Expert: Common scoring functionality for different types of queries.  
 <a href="class_lucene_1_1_net_1_1_search_1_1_scorer.html#details">More...</a></p>

<p>Inherits <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html">Lucene.Net.Search.DocIdSetIterator</a>.</p>

<p>Inherited by <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer.html">Lucene.Net.Search.BooleanScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html">Lucene.Net.Search.BooleanScorer2</a>, Lucene.Net.Search.BooleanScorer2.SingleMatchScorer, Lucene.Net.Search.BooleanScorer.BucketScorer, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_conjunction_scorer.html">Lucene.Net.Search.ConjunctionScorer</a>, Lucene.Net.Search.ConstantScoreQuery.ConstantScorer, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_disjunction_max_scorer.html">Lucene.Net.Search.DisjunctionMaxScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_disjunction_sum_scorer.html">Lucene.Net.Search.DisjunctionSumScorer</a>, Lucene.Net.Search.FilteredQuery.AnonymousClassWeight.AnonymousClassScorer, Lucene.Net.Search.Function.CustomScoreQuery.CustomScorer, Lucene.Net.Search.Function.ValueSourceQuery.ValueSourceScorer, Lucene.Net.Search.MatchAllDocsQuery.MatchAllScorer, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_phrase_scorer.html">Lucene.Net.Search.PhraseScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_req_excl_scorer.html">Lucene.Net.Search.ReqExclScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_req_opt_sum_scorer.html">Lucene.Net.Search.ReqOptSumScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_score_caching_wrapping_scorer.html">Lucene.Net.Search.ScoreCachingWrappingScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_spans_1_1_span_scorer.html">Lucene.Net.Search.Spans.SpanScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_term_scorer.html">Lucene.Net.Search.TermScorer</a>, and <a class="el" href="class_lucene_1_1_net_1_1_spatial_1_1_util_1_1_function_query_1_1_all_scorer.html">Lucene.Net.Spatial.Util.FunctionQuery.AllScorer</a>.</p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a23e72c598a4e46bd528ed19b272fc687"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html#a23e72c598a4e46bd528ed19b272fc687">Score</a> (<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_collector.html">Collector</a> collector)</td></tr>
<tr class="memdesc:a23e72c598a4e46bd528ed19b272fc687"><td class="mdescLeft">&#160;</td><td class="mdescRight">Scores and collects all matching documents. <a href="#a23e72c598a4e46bd528ed19b272fc687"></a><br/></td></tr>
<tr class="separator:a23e72c598a4e46bd528ed19b272fc687"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afbae24b7b3053a0e489fc8f18664f6a9"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html#afbae24b7b3053a0e489fc8f18664f6a9">Score</a> (<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_collector.html">Collector</a> collector, int max, int firstDocID)</td></tr>
<tr class="memdesc:afbae24b7b3053a0e489fc8f18664f6a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expert: Collects matching documents in a range. Hook for optimization. Note, <em>firstDocID</em>  is added to ensure that <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">DocIdSetIterator.NextDoc()</a> was called before this method.  <a href="#afbae24b7b3053a0e489fc8f18664f6a9"></a><br/></td></tr>
<tr class="separator:afbae24b7b3053a0e489fc8f18664f6a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e45575b3a407f5cb224b51405893c3f"><td class="memItemLeft" align="right" valign="top">abstract float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html#a9e45575b3a407f5cb224b51405893c3f">Score</a> ()</td></tr>
<tr class="memdesc:a9e45575b3a407f5cb224b51405893c3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the score of the current document matching the query. Initially invalid, until <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">DocIdSetIterator.NextDoc()</a> or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a4ea4804a0dd948a55077e1dde86b0983" title="Advances to the first beyond the current whose document number is greater than or equal to target...">DocIdSetIterator.Advance(int)</a> is called the first time, or when called from within <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_collector.html#a125e477dc1b59bbdb22fa71eeac4fd8b" title="Called once for every document matching a query, with the unbased document number.">Collector.Collect(int)</a>.  <a href="#a9e45575b3a407f5cb224b51405893c3f"></a><br/></td></tr>
<tr class="separator:a9e45575b3a407f5cb224b51405893c3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html">Lucene.Net.Search.DocIdSetIterator</a></td></tr>
<tr class="memitem:a617cbe6c07c261cc2cc86ad3d255152f inherit pub_methods_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="memItemLeft" align="right" valign="top">abstract int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a617cbe6c07c261cc2cc86ad3d255152f">DocID</a> ()</td></tr>
<tr class="memdesc:a617cbe6c07c261cc2cc86ad3d255152f inherit pub_methods_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the following: </p>
<ul>
<li>
-1 or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4" title="When returned by NextDoc(), Advance(int) and DocID() it means there are no more docs in the iterator...">NO_MORE_DOCS</a> if <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">NextDoc()</a> or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a4ea4804a0dd948a55077e1dde86b0983" title="Advances to the first beyond the current whose document number is greater than or equal to target...">Advance(int)</a> were not called yet. </li>
<li>
<a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4" title="When returned by NextDoc(), Advance(int) and DocID() it means there are no more docs in the iterator...">NO_MORE_DOCS</a> if the iterator has exhausted. </li>
<li>
Otherwise it should return the doc ID it is currently on. </li>
</ul>
 <a href="#a617cbe6c07c261cc2cc86ad3d255152f"></a><br/></td></tr>
<tr class="separator:a617cbe6c07c261cc2cc86ad3d255152f inherit pub_methods_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70f16616e044ffd57b07dbc426c34e0d inherit pub_methods_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="memItemLeft" align="right" valign="top">abstract int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d">NextDoc</a> ()</td></tr>
<tr class="memdesc:a70f16616e044ffd57b07dbc426c34e0d inherit pub_methods_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Advances to the next document in the set and returns the doc it is currently on, or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4" title="When returned by NextDoc(), Advance(int) and DocID() it means there are no more docs in the iterator...">NO_MORE_DOCS</a> if there are no more docs in the set.<br/>
  <a href="#a70f16616e044ffd57b07dbc426c34e0d"></a><br/></td></tr>
<tr class="separator:a70f16616e044ffd57b07dbc426c34e0d inherit pub_methods_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ea4804a0dd948a55077e1dde86b0983 inherit pub_methods_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="memItemLeft" align="right" valign="top">abstract int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a4ea4804a0dd948a55077e1dde86b0983">Advance</a> (int target)</td></tr>
<tr class="memdesc:a4ea4804a0dd948a55077e1dde86b0983 inherit pub_methods_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Advances to the first beyond the current whose document number is greater than or equal to <em>target</em>. Returns the current document number or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4" title="When returned by NextDoc(), Advance(int) and DocID() it means there are no more docs in the iterator...">NO_MORE_DOCS</a> if there are no more docs in the set. Behaves as if written:  <a href="#a4ea4804a0dd948a55077e1dde86b0983"></a><br/></td></tr>
<tr class="separator:a4ea4804a0dd948a55077e1dde86b0983 inherit pub_methods_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:aa2d07dddba4ce149cbd46abbfc139d8a"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_similarity.html">Similarity</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html#aa2d07dddba4ce149cbd46abbfc139d8a">Similarity</a><code> [get]</code></td></tr>
<tr class="memdesc:aa2d07dddba4ce149cbd46abbfc139d8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_similarity.html" title="Expert: Scoring API. Subclasses implement search scoring.">Similarity</a> implementation used by this scorer.  <a href="#aa2d07dddba4ce149cbd46abbfc139d8a"></a><br/></td></tr>
<tr class="separator:aa2d07dddba4ce149cbd46abbfc139d8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_attribs_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td colspan="2" onclick="javascript:toggleInherit('pub_static_attribs_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator')"><img src="closed.png" alt="-"/>&#160;Static Public Attributes inherited from <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html">Lucene.Net.Search.DocIdSetIterator</a></td></tr>
<tr class="memitem:ac005b14762e519ad644745031fac2ad4 inherit pub_static_attribs_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="memItemLeft" align="right" valign="top">static readonly int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#ac005b14762e519ad644745031fac2ad4">NO_MORE_DOCS</a> = System.Int32.MaxValue</td></tr>
<tr class="memdesc:ac005b14762e519ad644745031fac2ad4 inherit pub_static_attribs_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="mdescLeft">&#160;</td><td class="mdescRight">When returned by <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">NextDoc()</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a4ea4804a0dd948a55077e1dde86b0983" title="Advances to the first beyond the current whose document number is greater than or equal to target...">Advance(int)</a> and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a617cbe6c07c261cc2cc86ad3d255152f" title="Returns the following: -1 or NO_MORE_DOCS if NextDoc() or Advance(int) were not called yet...">DocID()</a> it means there are no more docs in the iterator.  <a href="#ac005b14762e519ad644745031fac2ad4"></a><br/></td></tr>
<tr class="separator:ac005b14762e519ad644745031fac2ad4 inherit pub_static_attribs_class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Expert: Common scoring functionality for different types of queries. </p>
<p>A <code><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_scorer.html" title="Expert: Common scoring functionality for different types of queries.">Scorer</a></code> iterates over documents matching a query in increasing order of doc Id. </p>
<p>Document scores are computed using a given <code><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_similarity.html" title="Expert: Scoring API. Subclasses implement search scoring.">Similarity</a></code> implementation. </p>
<p><b>NOTE</b>: The values Float.Nan, Float.NEGATIVE_INFINITY and Float.POSITIVE_INFINITY are not valid scores. Certain collectors (eg <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_top_score_doc_collector.html" title="A Collector implementation that collects the top-scoring hits, returning them as a TopDocs...">TopScoreDocCollector</a> ) will not properly collect hits with these scores. </p>

<p>Definition at line <a class="el" href="_scorer_8cs_source.html#l00041">41</a> of file <a class="el" href="_scorer_8cs_source.html">Scorer.cs</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a23e72c598a4e46bd528ed19b272fc687"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Lucene.Net.Search.Scorer.Score </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_collector.html">Collector</a>&#160;</td>
          <td class="paramname"><em>collector</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Scores and collects all matching documents.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">collector</td><td>The collector to which all matching documents are passed. </td></tr>
  </table>
  </dd>
</dl>

<p>Reimplemented in <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer.html#ae48bd9471090cd30b1f14f4daf5522b4">Lucene.Net.Search.BooleanScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#a3d314b502f02e4383b0fe3c16f92586f">Lucene.Net.Search.BooleanScorer2</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_disjunction_sum_scorer.html#add2657dcaedf86faaf4ee7f997f72a02">Lucene.Net.Search.DisjunctionSumScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_score_caching_wrapping_scorer.html#aafbeaf50b7519faa21d3e6a2cf969d52">Lucene.Net.Search.ScoreCachingWrappingScorer</a>, and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_term_scorer.html#abd323a94b22e851e0bc64dfc2deaa4f1">Lucene.Net.Search.TermScorer</a>.</p>

<p>Definition at line <a class="el" href="_scorer_8cs_source.html#l00062">62</a> of file <a class="el" href="_scorer_8cs_source.html">Scorer.cs</a>.</p>

</div>
</div>
<a class="anchor" id="afbae24b7b3053a0e489fc8f18664f6a9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Lucene.Net.Search.Scorer.Score </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_search_1_1_collector.html">Collector</a>&#160;</td>
          <td class="paramname"><em>collector</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>max</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>firstDocID</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Expert: Collects matching documents in a range. Hook for optimization. Note, <em>firstDocID</em>  is added to ensure that <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">DocIdSetIterator.NextDoc()</a> was called before this method. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">collector</td><td>The collector to which all matching documents are passed. </td></tr>
    <tr><td class="paramname">max</td><td>Do not score documents past this. </td></tr>
    <tr><td class="paramname">firstDocID</td><td>The first document ID (ensures <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">DocIdSetIterator.NextDoc()</a> is called before this method. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if more matching documents may remain. </dd></dl>

<p>Reimplemented in <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#a7096843cf5d0c88f9dfef2e68434f993">Lucene.Net.Search.BooleanScorer2</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer.html#a70e5c06327a6b2df063e7333f348f047">Lucene.Net.Search.BooleanScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_disjunction_sum_scorer.html#ae8b512352de8b46ef00e0e6ed2a4a5d1">Lucene.Net.Search.DisjunctionSumScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_term_scorer.html#a35902e45293e368a95685966fc302a5e">Lucene.Net.Search.TermScorer</a>, and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_score_caching_wrapping_scorer.html#acdca3448163a225d42cdd1d5b4817943">Lucene.Net.Search.ScoreCachingWrappingScorer</a>.</p>

<p>Definition at line <a class="el" href="_scorer_8cs_source.html#l00087">87</a> of file <a class="el" href="_scorer_8cs_source.html">Scorer.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a9e45575b3a407f5cb224b51405893c3f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">abstract float Lucene.Net.Search.Scorer.Score </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns the score of the current document matching the query. Initially invalid, until <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a70f16616e044ffd57b07dbc426c34e0d" title="Advances to the next document in the set and returns the doc it is currently on, or NO_MORE_DOCS if t...">DocIdSetIterator.NextDoc()</a> or <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_doc_id_set_iterator.html#a4ea4804a0dd948a55077e1dde86b0983" title="Advances to the first beyond the current whose document number is greater than or equal to target...">DocIdSetIterator.Advance(int)</a> is called the first time, or when called from within <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_collector.html#a125e477dc1b59bbdb22fa71eeac4fd8b" title="Called once for every document matching a query, with the unbased document number.">Collector.Collect(int)</a>. </p>

<p>Implemented in <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer2.html#a549abc961134268952da5e31ed071699">Lucene.Net.Search.BooleanScorer2</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_boolean_scorer.html#a31efdf783114be46fcc18aac72d5764b">Lucene.Net.Search.BooleanScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_disjunction_sum_scorer.html#ada016a2bfa330d59b36e314d77093faf">Lucene.Net.Search.DisjunctionSumScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_spatial_1_1_util_1_1_function_query_1_1_all_scorer.html#a4340b25f8d996e184782eeb5c2cc011d">Lucene.Net.Spatial.Util.FunctionQuery.AllScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_conjunction_scorer.html#ab97c3b19832cd35fe222ecb4afd8aa5d">Lucene.Net.Search.ConjunctionScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_term_scorer.html#acddbfcd7b83ab30154f456d3b08338f1">Lucene.Net.Search.TermScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_phrase_scorer.html#ae4cf1151ea70c24db7b5170a9015cdff">Lucene.Net.Search.PhraseScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_req_excl_scorer.html#a058f70b0a54212f8566025135e31cb3c">Lucene.Net.Search.ReqExclScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_spans_1_1_span_scorer.html#a26449ead756641b9bd9117aaa897edd2">Lucene.Net.Search.Spans.SpanScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_disjunction_max_scorer.html#ab750e200ccfe64dc6f7035bb2d567572">Lucene.Net.Search.DisjunctionMaxScorer</a>, <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_req_opt_sum_scorer.html#a650e2ca3927cc64a0fbf856a78ab31be">Lucene.Net.Search.ReqOptSumScorer</a>, and <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_score_caching_wrapping_scorer.html#a9e97a6adf12ee75252149d660f59c822">Lucene.Net.Search.ScoreCachingWrappingScorer</a>.</p>

</div>
</div>
<h2 class="groupheader">Property Documentation</h2>
<a class="anchor" id="aa2d07dddba4ce149cbd46abbfc139d8a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_similarity.html">Similarity</a> Lucene.Net.Search.Scorer.Similarity</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns the <a class="el" href="class_lucene_1_1_net_1_1_search_1_1_similarity.html" title="Expert: Scoring API. Subclasses implement search scoring.">Similarity</a> implementation used by this scorer. </p>

<p>Definition at line <a class="el" href="_scorer_8cs_source.html#l00055">55</a> of file <a class="el" href="_scorer_8cs_source.html">Scorer.cs</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>core/Search/<a class="el" href="_scorer_8cs_source.html">Scorer.cs</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Jan 3 2013 02:12:57 for Lucene.Net by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.3
</small></address>
</body>
</html>
