﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class AbstractFirstPassGroupingCollector&lt;TGroupValue&gt;
   | Apache Lucene.NET 4.8.0-beta00010 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class AbstractFirstPassGroupingCollector&lt;TGroupValue&gt;
   | Apache Lucene.NET 4.8.0-beta00010 Documentation ">
    <meta name="generator" content="docfx 2.56.0.0">
    
    <link rel="shortcut icon" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/favicon.ico">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.css">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.css">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.css">
    <meta property="docfx:navrel" content="toc.html">
    <meta property="docfx:tocrel" content="grouping/toc.html">
    
    <meta property="docfx:rel" content="https://lucenenet.apache.org/docs/4.8.0-beta00009/">
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="/">
                <img id="logo" class="svg" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/lucene-net-color.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search">
            <ul class="level0 breadcrumb">
                <li>
                    <a href="https://lucenenet.apache.org/docs/4.8.0-beta00009/">API</a>
                     <span id="breadcrumb">
                        <ul class="breadcrumb">
                          <li></li>
                        </ul>
                    </span>   
                </li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items">
            <p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
          </div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1">
  
  
  <h1 id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1" class="text-break">Class AbstractFirstPassGroupingCollector&lt;TGroupValue&gt;
  </h1>
  <div class="markdown level0 summary"><p>FirstPassGroupingCollector is the first of two passes necessary
to collect grouped hits.  This pass gathers the top N sorted
groups. Concrete subclasses define what a group is and how it
is internally collected.</p>
<p><p>
See <a href="https://github.com/apache/lucene-solr/blob/releases/lucene-solr/4.8.0/lucene/grouping/src/java/org/apache/lucene/search/grouping/package.html">org.apache.lucene.search.grouping</a> for more
details including a full code example.
</p></p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div></div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><span class="xref">System.Object</span></div>
    <div class="level1"><span class="xref">AbstractFirstPassGroupingCollector&lt;TGroupValue&gt;</span></div>
      <div class="level2"><a class="xref" href="Lucene.Net.Search.Grouping.Function.FunctionFirstPassGroupingCollector.html">FunctionFirstPassGroupingCollector</a></div>
      <div class="level2"><a class="xref" href="Lucene.Net.Search.Grouping.Terms.TermFirstPassGroupingCollector.html">TermFirstPassGroupingCollector</a></div>
  </div>
  <div classs="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="Lucene.Net.Search.Grouping.IAbstractFirstPassGroupingCollector-1.html">IAbstractFirstPassGroupingCollector</a>&lt;TGroupValue&gt;</div>
    <div><span class="xref">Lucene.Net.Search.ICollector</span></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <span class="xref">System.Object.Equals(System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.GetHashCode()</span>
    </div>
    <div>
      <span class="xref">System.Object.GetType()</span>
    </div>
    <div>
      <span class="xref">System.Object.MemberwiseClone()</span>
    </div>
    <div>
      <span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.ToString()</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Lucene.Net.Search.Grouping.html">Lucene.Net.Search.Grouping</a></h6>
  <h6><strong>Assembly</strong>: Lucene.Net.Grouping.dll</h6>
  <h5 id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public abstract class AbstractFirstPassGroupingCollector&lt;TGroupValue&gt; : IAbstractFirstPassGroupingCollector&lt;TGroupValue&gt;, ICollector</code></pre>
  </div>
  <h5 class="typeParameters">Type Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="parametername">TGroupValue</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h3 id="constructors">Constructors
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1__ctor_Lucene_Net_Search_Sort_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector%601.%23ctor(Lucene.Net.Search.Sort%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net.Grouping/AbstractFirstPassGroupingCollector.cs/#L69">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1__ctor_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.#ctor*"></a>
  <h4 id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1__ctor_Lucene_Net_Search_Sort_System_Int32_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.#ctor(Lucene.Net.Search.Sort,System.Int32)">AbstractFirstPassGroupingCollector(Sort, Int32)</h4>
  <div class="markdown level1 summary"><p>Create the first pass collector.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public AbstractFirstPassGroupingCollector(Sort groupSort, int topNGroups)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">Lucene.Net.Search.Sort</span></td>
        <td><span class="parametername">groupSort</span></td>
        <td><p>The <span class="xref">Lucene.Net.Search.Sort</span> used to sort the
groups.  The top sorted document within each group
according to groupSort, determines how that group
sorts against other groups.  This must be non-null,
ie, if you want to groupSort by relevance use
Sort.RELEVANCE.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">topNGroups</span></td>
        <td><p>How many top groups to keep.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.IO.IOException</span></td>
        <td><p>If I/O related errors occur</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="fields">Fields
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_m_orderedGroups.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector%601.m_orderedGroups%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net.Grouping/AbstractFirstPassGroupingCollector.cs/#L52">View Source</a>
  </span>
  <h4 id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_m_orderedGroups" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.m_orderedGroups">m_orderedGroups</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">protected SortedSet&lt;CollectedSearchGroup&lt;TGroupValue&gt;&gt; m_orderedGroups</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">J2N.Collections.Generic.SortedSet</span>&lt;<a class="xref" href="Lucene.Net.Search.Grouping.CollectedSearchGroup-1.html">CollectedSearchGroup</a>&lt;TGroupValue&gt;&gt;</td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h3 id="properties">Properties
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_AcceptsDocsOutOfOrder.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector%601.AcceptsDocsOutOfOrder%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net.Grouping/AbstractFirstPassGroupingCollector.cs/#L386">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_AcceptsDocsOutOfOrder_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.AcceptsDocsOutOfOrder*"></a>
  <h4 id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_AcceptsDocsOutOfOrder" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.AcceptsDocsOutOfOrder">AcceptsDocsOutOfOrder</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public virtual bool AcceptsDocsOutOfOrder { get; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_Collect_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector%601.Collect(System.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net.Grouping/AbstractFirstPassGroupingCollector.cs/#L161">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_Collect_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.Collect*"></a>
  <h4 id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_Collect_System_Int32_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.Collect(System.Int32)">Collect(Int32)</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public virtual void Collect(int doc)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">doc</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_CopyDocGroupValue__0__0_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector%601.CopyDocGroupValue(%600%2C%600)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net.Grouping/AbstractFirstPassGroupingCollector.cs/#L411">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_CopyDocGroupValue_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.CopyDocGroupValue*"></a>
  <h4 id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_CopyDocGroupValue__0__0_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.CopyDocGroupValue(`0,`0)">CopyDocGroupValue(TGroupValue, TGroupValue)</h4>
  <div class="markdown level1 summary"><p>Returns a copy of the specified group value by creating a new instance and copying the value from the specified
groupValue in the new instance. Or optionally the reuse argument can be used to copy the group value in.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">protected abstract TGroupValue CopyDocGroupValue(TGroupValue groupValue, TGroupValue reuse)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">TGroupValue</span></td>
        <td><span class="parametername">groupValue</span></td>
        <td><p>The group value to copy</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">TGroupValue</span></td>
        <td><span class="parametername">reuse</span></td>
        <td><p>Optionally a reuse instance to prevent a new instance creation</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">TGroupValue</span></td>
        <td><p>a copy of the specified group value</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_GetDocGroupValue_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector%601.GetDocGroupValue(System.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net.Grouping/AbstractFirstPassGroupingCollector.cs/#L402">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_GetDocGroupValue_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.GetDocGroupValue*"></a>
  <h4 id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_GetDocGroupValue_System_Int32_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.GetDocGroupValue(System.Int32)">GetDocGroupValue(Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the group value for the specified doc.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">protected abstract TGroupValue GetDocGroupValue(int doc)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">doc</span></td>
        <td><p>The specified doc</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">TGroupValue</span></td>
        <td><p>the group value for the specified doc</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_GetTopGroups_System_Int32_System_Boolean_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector%601.GetTopGroups(System.Int32%2CSystem.Boolean)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net.Grouping/AbstractFirstPassGroupingCollector.cs/#L107">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_GetTopGroups_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.GetTopGroups*"></a>
  <h4 id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_GetTopGroups_System_Int32_System_Boolean_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.GetTopGroups(System.Int32,System.Boolean)">GetTopGroups(Int32, Boolean)</h4>
  <div class="markdown level1 summary"><p>Returns top groups, starting from offset.  This may
return null, if no groups were collected, or if the
number of unique groups collected is &lt;= offset.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public virtual IEnumerable&lt;ISearchGroup&lt;TGroupValue&gt;&gt; GetTopGroups(int groupOffset, bool fillFields)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">groupOffset</span></td>
        <td><p>The offset in the collected groups</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">fillFields</span></td>
        <td><p>Whether to fill to <a class="xref" href="Lucene.Net.Search.Grouping.SearchGroup-1.html#Lucene_Net_Search_Grouping_SearchGroup_1_SortValues">SortValues</a></p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.Generic.IEnumerable</span>&lt;<a class="xref" href="Lucene.Net.Search.Grouping.ISearchGroup-1.html">ISearchGroup</a>&lt;TGroupValue&gt;&gt;</td>
        <td><p>top groups, starting from offset</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_SetNextReader_Lucene_Net_Index_AtomicReaderContext_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector%601.SetNextReader(Lucene.Net.Index.AtomicReaderContext)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net.Grouping/AbstractFirstPassGroupingCollector.cs/#L388">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_SetNextReader_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.SetNextReader*"></a>
  <h4 id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_SetNextReader_Lucene_Net_Index_AtomicReaderContext_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.SetNextReader(Lucene.Net.Index.AtomicReaderContext)">SetNextReader(AtomicReaderContext)</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public virtual void SetNextReader(AtomicReaderContext context)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">Lucene.Net.Index.AtomicReaderContext</span></td>
        <td><span class="parametername">context</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_SetScorer_Lucene_Net_Search_Scorer_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector%601.SetScorer(Lucene.Net.Search.Scorer)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net.Grouping/AbstractFirstPassGroupingCollector.cs/#L153">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_SetScorer_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.SetScorer*"></a>
  <h4 id="Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1_SetScorer_Lucene_Net_Search_Scorer_" data-uid="Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector`1.SetScorer(Lucene.Net.Search.Scorer)">SetScorer(Scorer)</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public virtual void SetScorer(Scorer scorer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">Lucene.Net.Search.Scorer</span></td>
        <td><span class="parametername">scorer</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h3 id="implements">Implements</h3>
  <div>
      <a class="xref" href="Lucene.Net.Search.Grouping.IAbstractFirstPassGroupingCollector-1.html">IAbstractFirstPassGroupingCollector&lt;TGroupValue&gt;</a>
  </div>
  <div>
      <span class="xref">Lucene.Net.Search.ICollector</span>
  </div>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                  <li>
                    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00010/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Grouping_AbstractFirstPassGroupingCollector_1.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Grouping.AbstractFirstPassGroupingCollector%601%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A" class="contribution-link">Improve this Doc</a>
                  </li>
                  <li>
                    <a href="https://github.com/apache/lucenenet/blob/release/Lucene.Net_4_8_0_beta00010/src/Lucene.Net.Grouping/AbstractFirstPassGroupingCollector.cs/#L41" class="contribution-link">View Source</a>
                  </li>
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            Copyright © 2020 Licensed to the Apache Software Foundation (ASF)
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.js"></script>
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.js"></script>
  </body>
</html>
