<!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.Index.DocInverter 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_index.html">Index</a></li><li class="navelem"><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_inverter.html">DocInverter</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="class_lucene_1_1_net_1_1_index_1_1_doc_inverter-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Lucene.Net.Index.DocInverter Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>This is a <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer.html">DocFieldConsumer</a> that inverts each field, separately, from a Document, and accepts a InvertedTermsConsumer to process those terms.  
 <a href="class_lucene_1_1_net_1_1_index_1_1_doc_inverter.html#details">More...</a></p>

<p>Inherits <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer.html">Lucene.Net.Index.DocFieldConsumer</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:a9de8a1fdcd38f0b39d3d07243f9320d1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_inverter.html#a9de8a1fdcd38f0b39d3d07243f9320d1">DocInverter</a> (<a class="el" href="class_lucene_1_1_net_1_1_index_1_1_inverted_doc_consumer.html">InvertedDocConsumer</a> consumer, <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_inverted_doc_end_consumer.html">InvertedDocEndConsumer</a> endConsumer)</td></tr>
<tr class="separator:a9de8a1fdcd38f0b39d3d07243f9320d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a616c9ab09af3412d2c21504f83dec721"><td class="memItemLeft" align="right" valign="top">override void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_inverter.html#a616c9ab09af3412d2c21504f83dec721">Flush</a> (IDictionary&lt; <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer_per_thread.html">DocFieldConsumerPerThread</a>, ICollection&lt; <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer_per_field.html">DocFieldConsumerPerField</a> &gt;&gt; threadsAndFields, <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_segment_write_state.html">SegmentWriteState</a> state)</td></tr>
<tr class="memdesc:a616c9ab09af3412d2c21504f83dec721"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_documents_writer.html" title="This class accepts multiple added documents and directly writes a single segment file. It does this more efficiently than creating a single segment per document (with DocumentWriter) and doing standard merges on those segments.">DocumentsWriter</a> decides to create a new segment  <a href="#a616c9ab09af3412d2c21504f83dec721"></a><br/></td></tr>
<tr class="separator:a616c9ab09af3412d2c21504f83dec721"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c399bc11798073febe74af8d84afe0c"><td class="memItemLeft" align="right" valign="top">override void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_inverter.html#a8c399bc11798073febe74af8d84afe0c">CloseDocStore</a> (<a class="el" href="class_lucene_1_1_net_1_1_index_1_1_segment_write_state.html">SegmentWriteState</a> state)</td></tr>
<tr class="memdesc:a8c399bc11798073febe74af8d84afe0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_documents_writer.html" title="This class accepts multiple added documents and directly writes a single segment file. It does this more efficiently than creating a single segment per document (with DocumentWriter) and doing standard merges on those segments.">DocumentsWriter</a> decides to close the doc stores  <a href="#a8c399bc11798073febe74af8d84afe0c"></a><br/></td></tr>
<tr class="separator:a8c399bc11798073febe74af8d84afe0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa1e5bced8d9cb548318b1537875531c"><td class="memItemLeft" align="right" valign="top">override void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_inverter.html#aaa1e5bced8d9cb548318b1537875531c">Abort</a> ()</td></tr>
<tr class="memdesc:aaa1e5bced8d9cb548318b1537875531c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when an aborting exception is hit  <a href="#aaa1e5bced8d9cb548318b1537875531c"></a><br/></td></tr>
<tr class="separator:aaa1e5bced8d9cb548318b1537875531c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a7ebc9a60252b2fbe18abb2101cf7b7"><td class="memItemLeft" align="right" valign="top">override bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_inverter.html#a0a7ebc9a60252b2fbe18abb2101cf7b7">FreeRAM</a> ()</td></tr>
<tr class="memdesc:a0a7ebc9a60252b2fbe18abb2101cf7b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_documents_writer.html" title="This class accepts multiple added documents and directly writes a single segment file. It does this more efficiently than creating a single segment per document (with DocumentWriter) and doing standard merges on those segments.">DocumentsWriter</a> is using too much RAM. The consumer should free RAM, if possible, returning true if any RAM was in fact freed.  <a href="#a0a7ebc9a60252b2fbe18abb2101cf7b7"></a><br/></td></tr>
<tr class="separator:a0a7ebc9a60252b2fbe18abb2101cf7b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7376823f2b5599a913ce46a44c76f676"><td class="memItemLeft" align="right" valign="top">override <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer_per_thread.html">DocFieldConsumerPerThread</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_inverter.html#a7376823f2b5599a913ce46a44c76f676">AddThread</a> (<a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_processor_per_thread.html">DocFieldProcessorPerThread</a> docFieldProcessorPerThread)</td></tr>
<tr class="memdesc:a7376823f2b5599a913ce46a44c76f676"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a new thread  <a href="#a7376823f2b5599a913ce46a44c76f676"></a><br/></td></tr>
<tr class="separator:a7376823f2b5599a913ce46a44c76f676"><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>This is a <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer.html">DocFieldConsumer</a> that inverts each field, separately, from a Document, and accepts a InvertedTermsConsumer to process those terms. </p>

<p>Definition at line <a class="el" href="_doc_inverter_8cs_source.html#l00029">29</a> of file <a class="el" href="_doc_inverter_8cs_source.html">DocInverter.cs</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a9de8a1fdcd38f0b39d3d07243f9320d1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Lucene.Net.Index.DocInverter.DocInverter </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_inverted_doc_consumer.html">InvertedDocConsumer</a>&#160;</td>
          <td class="paramname"><em>consumer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_inverted_doc_end_consumer.html">InvertedDocEndConsumer</a>&#160;</td>
          <td class="paramname"><em>endConsumer</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="_doc_inverter_8cs_source.html#l00035">35</a> of file <a class="el" href="_doc_inverter_8cs_source.html">DocInverter.cs</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="aaa1e5bced8d9cb548318b1537875531c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override void Lucene.Net.Index.DocInverter.Abort </td>
          <td>(</td>
          <td class="paramname"></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>Called when an aborting exception is hit </p>

<p>Implements <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer.html#aa192152faf22897d9344d9a46f794f7d">Lucene.Net.Index.DocFieldConsumer</a>.</p>

<p>Definition at line <a class="el" href="_doc_inverter_8cs_source.html#l00081">81</a> of file <a class="el" href="_doc_inverter_8cs_source.html">DocInverter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a7376823f2b5599a913ce46a44c76f676"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer_per_thread.html">DocFieldConsumerPerThread</a> Lucene.Net.Index.DocInverter.AddThread </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_processor_per_thread.html">DocFieldProcessorPerThread</a>&#160;</td>
          <td class="paramname"><em>docFieldProcessorPerThread</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>Add a new thread </p>

<p>Implements <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer.html#aa0a56b87a2bdb99506144abc97040e6b">Lucene.Net.Index.DocFieldConsumer</a>.</p>

<p>Definition at line <a class="el" href="_doc_inverter_8cs_source.html#l00092">92</a> of file <a class="el" href="_doc_inverter_8cs_source.html">DocInverter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a8c399bc11798073febe74af8d84afe0c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override void Lucene.Net.Index.DocInverter.CloseDocStore </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_segment_write_state.html">SegmentWriteState</a>&#160;</td>
          <td class="paramname"><em>state</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>Called when <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_documents_writer.html" title="This class accepts multiple added documents and directly writes a single segment file. It does this more efficiently than creating a single segment per document (with DocumentWriter) and doing standard merges on those segments.">DocumentsWriter</a> decides to close the doc stores </p>

<p>Implements <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer.html#a3fbf4ced5d85f4562031e4b53966d3a9">Lucene.Net.Index.DocFieldConsumer</a>.</p>

<p>Definition at line <a class="el" href="_doc_inverter_8cs_source.html#l00075">75</a> of file <a class="el" href="_doc_inverter_8cs_source.html">DocInverter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a616c9ab09af3412d2c21504f83dec721"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override void Lucene.Net.Index.DocInverter.Flush </td>
          <td>(</td>
          <td class="paramtype">IDictionary&lt; <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer_per_thread.html">DocFieldConsumerPerThread</a>, ICollection&lt; <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer_per_field.html">DocFieldConsumerPerField</a> &gt;&gt;&#160;</td>
          <td class="paramname"><em>threadsAndFields</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_lucene_1_1_net_1_1_index_1_1_segment_write_state.html">SegmentWriteState</a>&#160;</td>
          <td class="paramname"><em>state</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>Called when <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_documents_writer.html" title="This class accepts multiple added documents and directly writes a single segment file. It does this more efficiently than creating a single segment per document (with DocumentWriter) and doing standard merges on those segments.">DocumentsWriter</a> decides to create a new segment </p>

<p>Implements <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer.html#a73baf3411c46fd0c8d3ee03077a6c9be">Lucene.Net.Index.DocFieldConsumer</a>.</p>

<p>Definition at line <a class="el" href="_doc_inverter_8cs_source.html#l00048">48</a> of file <a class="el" href="_doc_inverter_8cs_source.html">DocInverter.cs</a>.</p>

</div>
</div>
<a class="anchor" id="a0a7ebc9a60252b2fbe18abb2101cf7b7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override bool Lucene.Net.Index.DocInverter.FreeRAM </td>
          <td>(</td>
          <td class="paramname"></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>Called when <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_documents_writer.html" title="This class accepts multiple added documents and directly writes a single segment file. It does this more efficiently than creating a single segment per document (with DocumentWriter) and doing standard merges on those segments.">DocumentsWriter</a> is using too much RAM. The consumer should free RAM, if possible, returning true if any RAM was in fact freed. </p>

<p>Implements <a class="el" href="class_lucene_1_1_net_1_1_index_1_1_doc_field_consumer.html#a70c8516745c63359f487c4805d8ec78b">Lucene.Net.Index.DocFieldConsumer</a>.</p>

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

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>core/Index/<a class="el" href="_doc_inverter_8cs_source.html">DocInverter.cs</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Jan 3 2013 02:12:50 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>
