﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class FastTaxonomyFacetCounts
   | Apache Lucene.NET 4.8.0 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class FastTaxonomyFacetCounts
   | Apache Lucene.NET 4.8.0 Documentation ">
    <meta name="generator" content="docfx 2.47.0.0">
    
    <link rel="shortcut icon" href="../../logo/favicon.ico">
    <link rel="stylesheet" href="../../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../../styles/docfx.css">
    <link rel="stylesheet" href="../../styles/main.css">
    <meta property="docfx:navrel" content="../../toc.html">
    <meta property="docfx:tocrel" content="../toc.html">
    
    <meta property="docfx:rel" content="../../">
    
  </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="../../index.html">
                <img id="logo" class="svg" src="../../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" id="breadcrumb">
            <ul class="breadcrumb">
              <li></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.Facet.Taxonomy.FastTaxonomyFacetCounts">
  
  
  <h1 id="Lucene_Net_Facet_Taxonomy_FastTaxonomyFacetCounts" data-uid="Lucene.Net.Facet.Taxonomy.FastTaxonomyFacetCounts" class="text-break">Class FastTaxonomyFacetCounts
  </h1>
  <div class="markdown level0 summary"><p>Computes facets counts, assuming the default encoding
into DocValues was used.</p>
<p>@lucene.experimental </p>
</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"><a class="xref" href="Lucene.Net.Facet.Facets.html">Facets</a></div>
    <div class="level2"><a class="xref" href="Lucene.Net.Facet.Taxonomy.TaxonomyFacets.html">TaxonomyFacets</a></div>
    <div class="level3"><a class="xref" href="Lucene.Net.Facet.Taxonomy.Int32TaxonomyFacets.html">Int32TaxonomyFacets</a></div>
    <div class="level4"><span class="xref">FastTaxonomyFacetCounts</span></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <a class="xref" href="Lucene.Net.Facet.Taxonomy.Int32TaxonomyFacets.html#Lucene_Net_Facet_Taxonomy_Int32TaxonomyFacets_m_values">Int32TaxonomyFacets.m_values</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Facet.Taxonomy.Int32TaxonomyFacets.html#Lucene_Net_Facet_Taxonomy_Int32TaxonomyFacets_Rollup">Int32TaxonomyFacets.Rollup()</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Facet.Taxonomy.Int32TaxonomyFacets.html#Lucene_Net_Facet_Taxonomy_Int32TaxonomyFacets_GetSpecificValue_System_String_System_String___">Int32TaxonomyFacets.GetSpecificValue(String, String[])</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Facet.Taxonomy.Int32TaxonomyFacets.html#Lucene_Net_Facet_Taxonomy_Int32TaxonomyFacets_GetTopChildren_System_Int32_System_String_System_String___">Int32TaxonomyFacets.GetTopChildren(Int32, String, String[])</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Facet.Taxonomy.TaxonomyFacets.html#Lucene_Net_Facet_Taxonomy_TaxonomyFacets_m_indexFieldName">TaxonomyFacets.m_indexFieldName</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Facet.Taxonomy.TaxonomyFacets.html#Lucene_Net_Facet_Taxonomy_TaxonomyFacets_m_taxoReader">TaxonomyFacets.m_taxoReader</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Facet.Taxonomy.TaxonomyFacets.html#Lucene_Net_Facet_Taxonomy_TaxonomyFacets_m_config">TaxonomyFacets.m_config</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Facet.Taxonomy.TaxonomyFacets.html#Lucene_Net_Facet_Taxonomy_TaxonomyFacets_m_children">TaxonomyFacets.m_children</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Facet.Taxonomy.TaxonomyFacets.html#Lucene_Net_Facet_Taxonomy_TaxonomyFacets_m_siblings">TaxonomyFacets.m_siblings</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Facet.Taxonomy.TaxonomyFacets.html#Lucene_Net_Facet_Taxonomy_TaxonomyFacets_VerifyDim_System_String_">TaxonomyFacets.VerifyDim(String)</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Facet.Taxonomy.TaxonomyFacets.html#Lucene_Net_Facet_Taxonomy_TaxonomyFacets_GetAllDims_System_Int32_">TaxonomyFacets.GetAllDims(Int32)</a>
    </div>
    <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.Facet.Taxonomy.html">Lucene.Net.Facet.Taxonomy</a></h6>
  <h6><strong>Assembly</strong>: Lucene.Net.Facet.dll</h6>
  <h5 id="Lucene_Net_Facet_Taxonomy_FastTaxonomyFacetCounts_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class FastTaxonomyFacetCounts : Int32TaxonomyFacets</code></pre>
  </div>
  <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-beta00007/websites/apidocs/apiSpec/new?filename=Lucene_Net_Facet_Taxonomy_FastTaxonomyFacetCounts__ctor_Lucene_Net_Facet_Taxonomy_TaxonomyReader_Lucene_Net_Facet_FacetsConfig_Lucene_Net_Facet_FacetsCollector_.md&amp;value=---%0Auid%3A%20Lucene.Net.Facet.Taxonomy.FastTaxonomyFacetCounts.%23ctor(Lucene.Net.Facet.Taxonomy.TaxonomyReader%2CLucene.Net.Facet.FacetsConfig%2CLucene.Net.Facet.FacetsCollector)%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/Shazwazza/lucenenet/blob/docs-update-jan2020/src/Lucene.Net.Facet/Taxonomy/FastTaxonomyFacetCounts.cs/#L39">View Source</a>
  </span>
  <a id="Lucene_Net_Facet_Taxonomy_FastTaxonomyFacetCounts__ctor_" data-uid="Lucene.Net.Facet.Taxonomy.FastTaxonomyFacetCounts.#ctor*"></a>
  <h4 id="Lucene_Net_Facet_Taxonomy_FastTaxonomyFacetCounts__ctor_Lucene_Net_Facet_Taxonomy_TaxonomyReader_Lucene_Net_Facet_FacetsConfig_Lucene_Net_Facet_FacetsCollector_" data-uid="Lucene.Net.Facet.Taxonomy.FastTaxonomyFacetCounts.#ctor(Lucene.Net.Facet.Taxonomy.TaxonomyReader,Lucene.Net.Facet.FacetsConfig,Lucene.Net.Facet.FacetsCollector)">FastTaxonomyFacetCounts(TaxonomyReader, FacetsConfig, FacetsCollector)</h4>
  <div class="markdown level1 summary"><p>Create <a class="xref" href="Lucene.Net.Facet.Taxonomy.FastTaxonomyFacetCounts.html">FastTaxonomyFacetCounts</a>, which also
counts all facet labels. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public FastTaxonomyFacetCounts(TaxonomyReader taxoReader, FacetsConfig config, FacetsCollector fc)</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><a class="xref" href="Lucene.Net.Facet.Taxonomy.TaxonomyReader.html">TaxonomyReader</a></td>
        <td><span class="parametername">taxoReader</span></td>
        <td></td>
      </tr>
      <tr>
        <td><a class="xref" href="Lucene.Net.Facet.FacetsConfig.html">FacetsConfig</a></td>
        <td><span class="parametername">config</span></td>
        <td></td>
      </tr>
      <tr>
        <td><a class="xref" href="Lucene.Net.Facet.FacetsCollector.html">FacetsCollector</a></td>
        <td><span class="parametername">fc</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-beta00007/websites/apidocs/apiSpec/new?filename=Lucene_Net_Facet_Taxonomy_FastTaxonomyFacetCounts__ctor_System_String_Lucene_Net_Facet_Taxonomy_TaxonomyReader_Lucene_Net_Facet_FacetsConfig_Lucene_Net_Facet_FacetsCollector_.md&amp;value=---%0Auid%3A%20Lucene.Net.Facet.Taxonomy.FastTaxonomyFacetCounts.%23ctor(System.String%2CLucene.Net.Facet.Taxonomy.TaxonomyReader%2CLucene.Net.Facet.FacetsConfig%2CLucene.Net.Facet.FacetsCollector)%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/Shazwazza/lucenenet/blob/docs-update-jan2020/src/Lucene.Net.Facet/Taxonomy/FastTaxonomyFacetCounts.cs/#L51">View Source</a>
  </span>
  <a id="Lucene_Net_Facet_Taxonomy_FastTaxonomyFacetCounts__ctor_" data-uid="Lucene.Net.Facet.Taxonomy.FastTaxonomyFacetCounts.#ctor*"></a>
  <h4 id="Lucene_Net_Facet_Taxonomy_FastTaxonomyFacetCounts__ctor_System_String_Lucene_Net_Facet_Taxonomy_TaxonomyReader_Lucene_Net_Facet_FacetsConfig_Lucene_Net_Facet_FacetsCollector_" data-uid="Lucene.Net.Facet.Taxonomy.FastTaxonomyFacetCounts.#ctor(System.String,Lucene.Net.Facet.Taxonomy.TaxonomyReader,Lucene.Net.Facet.FacetsConfig,Lucene.Net.Facet.FacetsCollector)">FastTaxonomyFacetCounts(String, TaxonomyReader, FacetsConfig, FacetsCollector)</h4>
  <div class="markdown level1 summary"><p>Create <a class="xref" href="Lucene.Net.Facet.Taxonomy.FastTaxonomyFacetCounts.html">FastTaxonomyFacetCounts</a>, using the
specified <code data-dev-comment-type="paramref" class="paramref">indexFieldName</code> for ordinals.  Use
this if you had set <a class="xref" href="Lucene.Net.Facet.FacetsConfig.html#Lucene_Net_Facet_FacetsConfig_SetIndexFieldName_System_String_System_String_">SetIndexFieldName(String, String)</a>
to change the index
field name for certain dimensions. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public FastTaxonomyFacetCounts(string indexFieldName, TaxonomyReader taxoReader, FacetsConfig config, FacetsCollector fc)</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.String</span></td>
        <td><span class="parametername">indexFieldName</span></td>
        <td></td>
      </tr>
      <tr>
        <td><a class="xref" href="Lucene.Net.Facet.Taxonomy.TaxonomyReader.html">TaxonomyReader</a></td>
        <td><span class="parametername">taxoReader</span></td>
        <td></td>
      </tr>
      <tr>
        <td><a class="xref" href="Lucene.Net.Facet.FacetsConfig.html">FacetsConfig</a></td>
        <td><span class="parametername">config</span></td>
        <td></td>
      </tr>
      <tr>
        <td><a class="xref" href="Lucene.Net.Facet.FacetsCollector.html">FacetsCollector</a></td>
        <td><span class="parametername">fc</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
</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-beta00007/websites/apidocs/apiSpec/new?filename=Lucene_Net_Facet_Taxonomy_FastTaxonomyFacetCounts.md&amp;value=---%0Auid%3A%20Lucene.Net.Facet.Taxonomy.FastTaxonomyFacetCounts%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/Shazwazza/lucenenet/blob/docs-update-jan2020/src/Lucene.Net.Facet/Taxonomy/FastTaxonomyFacetCounts.cs/#L33" 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="../../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../../styles/docfx.js"></script>
    <script type="text/javascript" src="../../styles/main.js"></script>
  </body>
</html>
