This file is indexed.

/usr/share/doc/pocketsphinx/html/ngram__search_8h_source.html is in pocketsphinx-doc 0.8.0+real5prealpha-1ubuntu2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
<!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.11"/>
<title>PocketSphinx: src/libpocketsphinx/ngram_search.h Source File</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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</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="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">PocketSphinx
   &#160;<span id="projectnumber">5prealpha</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('ngram__search_8h_source.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="headertitle">
<div class="title">ngram_search.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="ngram__search_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/* -*- c-basic-offset: 4; indent-tabs-mode: nil -*- */</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">/* ====================================================================</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"> * Copyright (c) 2008 Carnegie Mellon University.  All rights</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> * reserved.</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment"> * are met:</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment"> * 1. Redistributions of source code must retain the above copyright</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment"> *    notice, this list of conditions and the following disclaimer. </span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment"> * 2. Redistributions in binary form must reproduce the above copyright</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment"> *    notice, this list of conditions and the following disclaimer in</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment"> *    the documentation and/or other materials provided with the</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment"> *    distribution.</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment"> * This work was supported in part by funding from the Defense Advanced </span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment"> * Research Projects Agency and the National Science Foundation of the </span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment"> * United States of America, and the CMU Sphinx Speech Consortium.</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY CARNEGIE MELLON UNIVERSITY ``AS IS&#39;&#39; AND </span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment"> * ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, </span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="comment"> * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="comment"> * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment"> * NOR ITS EMPLOYEES BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT </span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, </span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY </span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT </span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE </span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="comment"> * ====================================================================</span></div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#ifndef __NGRAM_SEARCH_H__</span></div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#define __NGRAM_SEARCH_H__</span></div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment">/* SphinxBase headers. */</span></div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#include &lt;sphinxbase/cmd_ln.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#include &lt;sphinxbase/logmath.h&gt;</span></div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#include &lt;sphinxbase/ngram_model.h&gt;</span></div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">#include &lt;sphinxbase/listelem_alloc.h&gt;</span></div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor">#include &lt;sphinxbase/err.h&gt;</span></div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="comment">/* Local headers. */</span></div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pocketsphinx__internal_8h.html">pocketsphinx_internal.h</a>&quot;</span></div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="hmm_8h.html">hmm.h</a>&quot;</span></div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structchan__s.html">   64</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structchan__s.html">chan_s</a> {</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structchan__s.html#a742d6a125ac468b95a1ddd880a956e35">   65</a></span>&#160;    <a class="code" href="structhmm__t.html">hmm_t</a> <a class="code" href="structchan__s.html#a742d6a125ac468b95a1ddd880a956e35">hmm</a>;                  </div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structchan__s.html#a260b68eff64150d0ae9ce4db7feb1300">   68</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="structchan__s.html">chan_s</a> *<a class="code" href="structchan__s.html#a260b68eff64150d0ae9ce4db7feb1300">next</a>;        </div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structchan__s.html#a52e85d037ca3a8b21ff1eed1d469ca15">   71</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="structchan__s.html">chan_s</a> *<a class="code" href="structchan__s.html#a52e85d037ca3a8b21ff1eed1d469ca15">alt</a>;         </div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structchan__s.html#a33da51d8524073abc792519d0738ca0b">   73</a></span>&#160;    int32    <a class="code" href="structchan__s.html#a33da51d8524073abc792519d0738ca0b">ciphone</a>;           </div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <span class="keyword">union </span>{</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structchan__s.html#a136796f6a13c0d6989120f9aa25b85f1">   75</a></span>&#160;        int32 <a class="code" href="structchan__s.html#a136796f6a13c0d6989120f9aa25b85f1">penult_phn_wid</a>;   </div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structchan__s.html#acf84a2fa662e7ff626769e7d8152a608">   79</a></span>&#160;        int32 <a class="code" href="structchan__s.html#acf84a2fa662e7ff626769e7d8152a608">rc_id</a>;            </div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    } info;</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;} <a class="code" href="ngram__search_8h.html#a2c5740fe4792d870b73f4100b32e9324">chan_t</a>;</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="structroot__chan__s.html">   90</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structroot__chan__s.html">root_chan_s</a> {</div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="structroot__chan__s.html#a9d4d92ffa8b4079202ddebe3ba0eb290">   91</a></span>&#160;    <a class="code" href="structhmm__t.html">hmm_t</a> <a class="code" href="structroot__chan__s.html#a9d4d92ffa8b4079202ddebe3ba0eb290">hmm</a>;                  </div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="structroot__chan__s.html#ae0f0b90a7cb2fcb54cd7b30502dd497e">   94</a></span>&#160;    <a class="code" href="structchan__s.html">chan_t</a> *<a class="code" href="structroot__chan__s.html#ae0f0b90a7cb2fcb54cd7b30502dd497e">next</a>;               </div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;    int32  <a class="code" href="structchan__s.html#a136796f6a13c0d6989120f9aa25b85f1">penult_phn_wid</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="structroot__chan__s.html#af5bb41f0c9a03211ab90919f65be1564">   97</a></span>&#160;    int32  <a class="code" href="structroot__chan__s.html#af5bb41f0c9a03211ab90919f65be1564">this_phn_wid</a>;        </div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="structroot__chan__s.html#ad67c37bf4183f518acd7760c09a806f6">  100</a></span>&#160;    int16    <a class="code" href="structroot__chan__s.html#ad67c37bf4183f518acd7760c09a806f6">ciphone</a>;           </div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="structroot__chan__s.html#a0c0cf22caf4c97879af86865764f1675">  102</a></span>&#160;    int16    <a class="code" href="structroot__chan__s.html#a0c0cf22caf4c97879af86865764f1675">ci2phone</a>;          </div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;} <a class="code" href="ngram__search_8h.html#aab8eee3f73f666d0e12c5b355a651cff">root_chan_t</a>;</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structbptbl__s.html">  109</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structbptbl__s.html">bptbl_s</a> {</div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="structbptbl__s.html#ae52081dde905cf6e7d988cdeb4c9b8b3">  110</a></span>&#160;    <a class="code" href="hmm_8h.html#ac9c9bae34d05f32736ae1743316737ef">frame_idx_t</a>  <a class="code" href="structbptbl__s.html#ae52081dde905cf6e7d988cdeb4c9b8b3">frame</a>;         </div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="structbptbl__s.html#a4948439666e1e2204a6d1c6d9cfd1cd0">  111</a></span>&#160;    uint8    <a class="code" href="structbptbl__s.html#a4948439666e1e2204a6d1c6d9cfd1cd0">valid</a>;             </div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="structbptbl__s.html#acdc7410a4069418879aa022f9b61c13d">  112</a></span>&#160;    uint8    <a class="code" href="structbptbl__s.html#acdc7410a4069418879aa022f9b61c13d">refcnt</a>;            </div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="structbptbl__s.html#a143ff0891fafd471000df7c73123b8a7">  113</a></span>&#160;    int32    <a class="code" href="structbptbl__s.html#a143ff0891fafd471000df7c73123b8a7">wid</a>;               </div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="structbptbl__s.html#a4ca45ebc4a1ac18fc0596195e7e03bc8">  114</a></span>&#160;    int32    <a class="code" href="structbptbl__s.html#a4ca45ebc4a1ac18fc0596195e7e03bc8">bp</a>;                </div><div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="structbptbl__s.html#aa5643c0c19ce4d39d51ddf7376f4d508">  115</a></span>&#160;    int32    <a class="code" href="structbptbl__s.html#aa5643c0c19ce4d39d51ddf7376f4d508">score</a>;             </div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="structbptbl__s.html#abf9e4bcf1927aa09fb2b30c59e99f551">  116</a></span>&#160;    int32    <a class="code" href="structbptbl__s.html#abf9e4bcf1927aa09fb2b30c59e99f551">s_idx</a>;             </div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="structbptbl__s.html#a91247e4f807cf780afe8f5ac45e720b8">  117</a></span>&#160;    int32    <a class="code" href="structbptbl__s.html#a91247e4f807cf780afe8f5ac45e720b8">real_wid</a>;          </div><div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="structbptbl__s.html#a83784e3b0121bc365d485151ab277920">  118</a></span>&#160;    int32    <a class="code" href="structbptbl__s.html#a83784e3b0121bc365d485151ab277920">prev_real_wid</a>;     </div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="structbptbl__s.html#aa7704ba76d3dcde6b8a24855362a4289">  119</a></span>&#160;    int16    <a class="code" href="structbptbl__s.html#aa7704ba76d3dcde6b8a24855362a4289">last_phone</a>;        </div><div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="structbptbl__s.html#a27b8e54bb7552e6afc15e4f44f42e3b7">  120</a></span>&#160;    int16    <a class="code" href="structbptbl__s.html#a27b8e54bb7552e6afc15e4f44f42e3b7">last2_phone</a>;       </div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;} <a class="code" href="ngram__search_8h.html#a81093c091a82066374627744595840e6">bptbl_t</a>;</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;</div><div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="structbptbl__seg__s.html">  126</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structbptbl__seg__s.html">bptbl_seg_s</a> {</div><div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="structbptbl__seg__s.html#ac21f715b189c7e452385252bfcee47fe">  127</a></span>&#160;    <a class="code" href="structps__seg__s.html">ps_seg_t</a> <a class="code" href="structbptbl__seg__s.html#ac21f715b189c7e452385252bfcee47fe">base</a>;  </div><div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="structbptbl__seg__s.html#a81e3d422fb2307c1a83e9490525dce7f">  128</a></span>&#160;    int32 *<a class="code" href="structbptbl__seg__s.html#a81e3d422fb2307c1a83e9490525dce7f">bpidx</a>;   </div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="structbptbl__seg__s.html#a8d1f0aa7dd09e2d6321a00b68ab6a051">  129</a></span>&#160;    int16 <a class="code" href="structbptbl__seg__s.html#a8d1f0aa7dd09e2d6321a00b68ab6a051">n_bpidx</a>;  </div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="structbptbl__seg__s.html#a1649196a2c03fb61b31624086ee998b5">  130</a></span>&#160;    int16 <a class="code" href="structbptbl__seg__s.html#a1649196a2c03fb61b31624086ee998b5">cur</a>;      </div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;} <a class="code" href="ngram__search_8h.html#a89d7d2a948a3cc2d55c77120cbd35e0d">bptbl_seg_t</a>;</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;<span class="comment"> * Candidates words for entering their last phones.  Cleared and rebuilt in each</span></div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<span class="comment"> * frame.</span></div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;<span class="comment"> * NOTE: candidates can only be multi-phone, real dictionary words.</span></div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="structlastphn__cand__s.html">  138</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structlastphn__cand__s.html">lastphn_cand_s</a> {</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;    int32 wid;</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;    int32 score;</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;    int32 bp;</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    int32 <a class="code" href="structchan__s.html#a260b68eff64150d0ae9ce4db7feb1300">next</a>;                 <span class="comment">/* next candidate starting at the same frame */</span></div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;} <a class="code" href="structlastphn__cand__s.html">lastphn_cand_t</a>;</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;<span class="comment"> * Since the same instance of a word (i.e., &lt;word,start-frame&gt;) reaches its last</span></div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="comment"> * phone several times, we can compute its best BP and LM transition score info</span></div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<span class="comment"> * just the first time and cache it for future occurrences.  Structure for such</span></div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;<span class="comment"> * a cache.</span></div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="structlast__ltrans__t.html">  151</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    int32 sf;                   <span class="comment">/* Start frame */</span></div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;    int32 dscr;                 <span class="comment">/* Delta-score upon entering last phone */</span></div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;    int32 bp;                   <span class="comment">/* Best BP */</span></div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;} <a class="code" href="structlast__ltrans__t.html">last_ltrans_t</a>;</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;<span class="preprocessor">#define CAND_SF_ALLOCSIZE       32</span></div><div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="structcand__sf__t.html">  158</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;    int32 bp_ef;</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;    int32 cand;</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;} <a class="code" href="structcand__sf__t.html">cand_sf_t</a>;</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<span class="comment"> * Structure for reorganizing the BP table entries in the current frame according</span></div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="comment"> * to distinct right context ci-phones.  Each entry contains the best BP entry for</span></div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;<span class="comment"> * a given right context.  Each successor word will pick up the correct entry based</span></div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;<span class="comment"> * on its first ci-phone.</span></div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="structbestbp__rc__s.html">  169</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structbestbp__rc__s.html">bestbp_rc_s</a> {</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;    int32 score;</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;    int32 path;                 <span class="comment">/* BP table index corresponding to this entry */</span></div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;    int32 lc;                   <span class="comment">/* right most ci-phone of above BP entry word */</span></div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;} <a class="code" href="structbestbp__rc__s.html">bestbp_rc_t</a>;</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="preprocessor">#define NO_BP           -1</span></div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="structngram__search__stats__s.html">  180</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structngram__search__stats__s.html">ngram_search_stats_s</a> {</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;    int32 n_phone_eval;</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;    int32 n_root_chan_eval;</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;    int32 n_nonroot_chan_eval;</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;    int32 n_last_chan_eval;</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;    int32 n_word_lastchan_eval;</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    int32 n_lastphn_cand_utt;</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;    int32 n_fwdflat_chan;</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;    int32 n_fwdflat_words;</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;    int32 n_fwdflat_word_transition;</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;    int32 n_senone_active_utt;</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;} <a class="code" href="ngram__search_8h.html#ae68375016e7d208d22042a7dd4a0f37c">ngram_search_stats_t</a>;</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;</div><div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="structngram__search__s.html">  197</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structngram__search__s.html">ngram_search_s</a> {</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;    <a class="code" href="structps__search__s.html">ps_search_t</a> base;</div><div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a6127a6d8fb53832e67456c11aa6ad9c4">  199</a></span>&#160;    ngram_model_t *<a class="code" href="structngram__search__s.html#a6127a6d8fb53832e67456c11aa6ad9c4">lmset</a>;  </div><div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="structngram__search__s.html#acfbdd34e3dadbaa384818402f1dd59bf">  200</a></span>&#160;    <a class="code" href="structhmm__context__t.html">hmm_context_t</a> *<a class="code" href="structngram__search__s.html#acfbdd34e3dadbaa384818402f1dd59bf">hmmctx</a>; </div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;    <span class="comment">/* Flags to quickly indicate which passes are enabled. */</span></div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;    uint8 fwdtree;</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;    uint8 fwdflat;</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;    uint8 bestpath;</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    <span class="comment">/* State of procesing. */</span></div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;    uint8 done;</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    <span class="comment">/* Allocators */</span></div><div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="structngram__search__s.html#abe9fe60f6e48b9a6e3d41856bb1dc109">  211</a></span>&#160;    listelem_alloc_t *<a class="code" href="structngram__search__s.html#abe9fe60f6e48b9a6e3d41856bb1dc109">chan_alloc</a>; </div><div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a576470858bfa44c671f0e677902ab424">  212</a></span>&#160;    listelem_alloc_t *<a class="code" href="structngram__search__s.html#a576470858bfa44c671f0e677902ab424">root_chan_alloc</a>; </div><div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a21600dc2e23744f0be9c64a4db8d7e50">  213</a></span>&#160;    listelem_alloc_t *<a class="code" href="structngram__search__s.html#a21600dc2e23744f0be9c64a4db8d7e50">latnode_alloc</a>; </div><div class="line"><a name="l00231"></a><span class="lineno"><a class="line" href="structngram__search__s.html#ae1b0a51cfcddc1e4b6ac94fa1e48887a">  231</a></span>&#160;    <a class="code" href="structroot__chan__s.html">root_chan_t</a> *<a class="code" href="structngram__search__s.html#ae1b0a51cfcddc1e4b6ac94fa1e48887a">root_chan</a>;  </div><div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="structngram__search__s.html#abc8a67e3f64adc470c78dfdd23be4126">  232</a></span>&#160;    int32 <a class="code" href="structngram__search__s.html#abc8a67e3f64adc470c78dfdd23be4126">n_root_chan_alloc</a>; </div><div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a297d8bdb856617490ee8ccd99df70e68">  233</a></span>&#160;    int32 <a class="code" href="structngram__search__s.html#a297d8bdb856617490ee8ccd99df70e68">n_root_chan</a>;       </div><div class="line"><a name="l00234"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a043723786367f5026dce99c261f7086d">  234</a></span>&#160;    int32 <a class="code" href="structngram__search__s.html#a043723786367f5026dce99c261f7086d">n_nonroot_chan</a>;    </div><div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a4b2b42349e9e3df7e93b4a7d6994f63f">  235</a></span>&#160;    int32 <a class="code" href="structngram__search__s.html#a4b2b42349e9e3df7e93b4a7d6994f63f">max_nonroot_chan</a>;  </div><div class="line"><a name="l00236"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a1ffa3c9100252122ae8a2a713c50b527">  236</a></span>&#160;    <a class="code" href="structroot__chan__s.html">root_chan_t</a> *<a class="code" href="structngram__search__s.html#a1ffa3c9100252122ae8a2a713c50b527">rhmm_1ph</a>;   </div><div class="line"><a name="l00246"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a79deb7295a261cd82d2a6b48cb119e77">  246</a></span>&#160;    <a class="code" href="structchan__s.html">chan_t</a> **<a class="code" href="structngram__search__s.html#a79deb7295a261cd82d2a6b48cb119e77">word_chan</a>;</div><div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="structngram__search__s.html#aeb4c98851bf9b239ca607ca59f59ff4c">  247</a></span>&#160;    bitvec_t *<a class="code" href="structngram__search__s.html#aeb4c98851bf9b239ca607ca59f59ff4c">word_active</a>;      </div><div class="line"><a name="l00263"></a><span class="lineno"><a class="line" href="structngram__search__s.html#ab251bb3d0ddd33dd99ed390b61e481f2">  263</a></span>&#160;    int32 *<a class="code" href="structngram__search__s.html#ab251bb3d0ddd33dd99ed390b61e481f2">homophone_set</a>;</div><div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a1157923e0060b947e05caa819c8abe2c">  264</a></span>&#160;    int32 *<a class="code" href="structngram__search__s.html#a1157923e0060b947e05caa819c8abe2c">single_phone_wid</a>; </div><div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a9168184c862d6f63bd7926e6581b25d9">  265</a></span>&#160;    int32 <a class="code" href="structngram__search__s.html#a9168184c862d6f63bd7926e6581b25d9">n_1ph_words</a>;       </div><div class="line"><a name="l00266"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a988672d895f1ee61dbf790b2065df4df">  266</a></span>&#160;    int32 <a class="code" href="structngram__search__s.html#a988672d895f1ee61dbf790b2065df4df">n_1ph_LMwords</a>;     </div><div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a83731bf0e2234e632c5e78f2321f5b2d">  275</a></span>&#160;    <a class="code" href="structchan__s.html">chan_t</a> ***<a class="code" href="structngram__search__s.html#a83731bf0e2234e632c5e78f2321f5b2d">active_chan_list</a>;</div><div class="line"><a name="l00276"></a><span class="lineno"><a class="line" href="structngram__search__s.html#ac33f60894871671ec5c2173ca56d600f">  276</a></span>&#160;    int32 n_active_chan[2];  </div><div class="line"><a name="l00287"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a5056573bf95990cc28c97a56cd76ce9a">  287</a></span>&#160;    int32 **<a class="code" href="structngram__search__s.html#a5056573bf95990cc28c97a56cd76ce9a">active_word_list</a>;</div><div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a5c864f1fe331fc95c04e0d87a5bdf9ee">  288</a></span>&#160;    int32 n_active_word[2];  </div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;    <span class="comment">/*</span></div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;<span class="comment">     * FIXME: Document all of these bits.</span></div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="comment">     */</span></div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;    <a class="code" href="structlastphn__cand__s.html">lastphn_cand_t</a> *lastphn_cand;</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;    int32 n_lastphn_cand;</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;    <a class="code" href="structlast__ltrans__t.html">last_ltrans_t</a> *last_ltrans;      <span class="comment">/* one per word */</span></div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;    int32 cand_sf_alloc;</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;    <a class="code" href="structcand__sf__t.html">cand_sf_t</a> *cand_sf;</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;    <a class="code" href="structbestbp__rc__s.html">bestbp_rc_t</a> *bestbp_rc;</div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;</div><div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;    <a class="code" href="structbptbl__s.html">bptbl_t</a> *bp_table;       <span class="comment">/* Forward pass lattice */</span></div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;    int32 bpidx;             <span class="comment">/* First free BPTable entry */</span></div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;    int32 bp_table_size;</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;    int32 *bscore_stack;     <span class="comment">/* Score stack for all possible right contexts */</span></div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;    int32 bss_head;          <span class="comment">/* First free BScoreStack entry */</span></div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;    int32 bscore_stack_size;</div><div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a38ea5de504b3d7ad2390a3f8966d502f">  307</a></span>&#160;    int32 <a class="code" href="structngram__search__s.html#a38ea5de504b3d7ad2390a3f8966d502f">n_frame_alloc</a>; </div><div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a5255e56d28c239a4e1d9b1721e8a2f8d">  308</a></span>&#160;    int32 <a class="code" href="structngram__search__s.html#a5255e56d28c239a4e1d9b1721e8a2f8d">n_frame</a>;       </div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;    int32 *bp_table_idx; <span class="comment">/* First BPTable entry for each frame */</span></div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;    int32 *word_lat_idx; <span class="comment">/* BPTable index for any word in current frame;</span></div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<span class="comment">                            cleared before each frame */</span></div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    <span class="comment">/*</span></div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="comment">     * Flat lexicon (2nd pass) search stuff.</span></div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="comment">     */</span></div><div class="line"><a name="l00316"></a><span class="lineno"><a class="line" href="structngram__search__s.html#aa54544457c363ccccb87fc7ec63a5f3e">  316</a></span>&#160;    <a class="code" href="structps__latnode__s.html">ps_latnode_t</a> **<a class="code" href="structngram__search__s.html#aa54544457c363ccccb87fc7ec63a5f3e">frm_wordlist</a>;   </div><div class="line"><a name="l00317"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a774f1640c5ece856f4bef98d98e7c959">  317</a></span>&#160;    int32 *<a class="code" href="structngram__search__s.html#a774f1640c5ece856f4bef98d98e7c959">fwdflat_wordlist</a>;    </div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;    bitvec_t *expand_word_flag;</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;    int32 *expand_word_list;</div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;    int32 n_expand_words;</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    int32 min_ef_width;</div><div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;    int32 max_sf_win;</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;    float32 fwdflat_fwdtree_lw_ratio;</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;</div><div class="line"><a name="l00325"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a150d99157e2f37a6f0dbb4b02682d9c3">  325</a></span>&#160;    int32 <a class="code" href="structngram__search__s.html#a150d99157e2f37a6f0dbb4b02682d9c3">best_score</a>; </div><div class="line"><a name="l00326"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a81ee45f3c184568e2b5f8b79c58e0b9e">  326</a></span>&#160;    int32 <a class="code" href="structngram__search__s.html#a81ee45f3c184568e2b5f8b79c58e0b9e">last_phone_best_score</a>; </div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;    int32 renormalized;</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    <span class="comment">/*</span></div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;<span class="comment">     * DAG (3rd pass) search stuff.</span></div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;<span class="comment">     */</span></div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;    float32 bestpath_fwdtree_lw_ratio;</div><div class="line"><a name="l00333"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a1e3d4b67e4b11c6c11ebe16552d53d2d">  333</a></span>&#160;    float32 <a class="code" href="structngram__search__s.html#a1e3d4b67e4b11c6c11ebe16552d53d2d">ascale</a>; </div><div class="line"><a name="l00335"></a><span class="lineno"><a class="line" href="structngram__search__s.html#a5758d167fbb48e824a6a58186620e06d">  335</a></span>&#160;    <a class="code" href="structngram__search__stats__s.html">ngram_search_stats_t</a> <a class="code" href="structngram__search__s.html#a5758d167fbb48e824a6a58186620e06d">st</a>; </div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;    ptmr_t fwdtree_perf;</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;    ptmr_t fwdflat_perf;</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;    ptmr_t bestpath_perf;</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;    int32 n_tot_frame;</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;    <span class="comment">/* A collection of beam widths. */</span></div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;    int32 beam;</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;    int32 dynamic_beam;</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;    int32 pbeam;</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;    int32 wbeam;</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;    int32 lpbeam;</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;    int32 lponlybeam;</div><div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;    int32 fwdflatbeam;</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;    int32 fwdflatwbeam;</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;    int32 fillpen;</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;    int32 silpen;</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;    int32 wip;</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;    int32 nwpen;</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;    int32 pip;</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;    int32 maxwpf;</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;    int32 maxhmmpf;</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;};</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structngram__search__s.html">ngram_search_s</a> <a class="code" href="structngram__search__s.html">ngram_search_t</a>;</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;</div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;<a class="code" href="structps__search__s.html">ps_search_t</a> *<a class="code" href="ngram__search_8h.html#a04f80b377c847026254fb85596e2f43c">ngram_search_init</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name,</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;                               ngram_model_t *lm,</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;                               cmd_ln_t *config,</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;                               <a class="code" href="structacmod__s.html">acmod_t</a> *acmod,</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;                               <a class="code" href="structdict__t.html">dict_t</a> *dict,</div><div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;                               <a class="code" href="structdict2pid__t.html">dict2pid_t</a> *d2p);</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;<span class="keywordtype">void</span> <a class="code" href="ngram__search_8h.html#a9bafaa4af5a9a4f9e76a8daf54ac4a11">ngram_search_free</a>(<a class="code" href="structps__search__s.html">ps_search_t</a> *ngs);</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;</div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;<span class="keywordtype">int</span> <a class="code" href="ngram__search_8h.html#a7772e007b7d7fdf437c87aeb08b59c71">ngram_search_mark_bptable</a>(<a class="code" href="structngram__search__s.html">ngram_search_t</a> *ngs, <span class="keywordtype">int</span> frame_idx);</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;<span class="keywordtype">void</span> <a class="code" href="ngram__search_8h.html#ae36649be6f5a2190e759e7ed13bd7b6b">ngram_search_save_bp</a>(<a class="code" href="structngram__search__s.html">ngram_search_t</a> *ngs, <span class="keywordtype">int</span> frame_idx, int32 w,</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;                          int32 score, int32 path, int32 rc);</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;</div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;<span class="keywordtype">void</span> <a class="code" href="ngram__search_8h.html#a1ddcc1a9cb3e164ceb2140097ed23a3e">ngram_search_alloc_all_rc</a>(<a class="code" href="structngram__search__s.html">ngram_search_t</a> *ngs, int32 w);</div><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;<span class="keywordtype">void</span> <a class="code" href="ngram__search_8h.html#a15477192481dffcb29e9c4167eff6c3c">ngram_search_free_all_rc</a>(<a class="code" href="structngram__search__s.html">ngram_search_t</a> *ngs, int32 w);</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;<span class="keywordtype">int</span> <a class="code" href="ngram__search_8h.html#ac6a01bb08e7b8d1deb39763a98148cb0">ngram_search_find_exit</a>(<a class="code" href="structngram__search__s.html">ngram_search_t</a> *ngs, <span class="keywordtype">int</span> frame_idx, int32 *out_best_score, int32 *out_is_final);</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;<span class="keywordtype">char</span> <span class="keyword">const</span> *<a class="code" href="ngram__search_8h.html#aee393a136f8f7e8b98161e6eed7b1dd9">ngram_search_bp_hyp</a>(<a class="code" href="structngram__search__s.html">ngram_search_t</a> *ngs, <span class="keywordtype">int</span> bpidx);</div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;<span class="keywordtype">void</span> <a class="code" href="ngram__search_8h.html#a2fa760c99f77eb075157304f4359941e">ngram_compute_seg_scores</a>(<a class="code" href="structngram__search__s.html">ngram_search_t</a> *ngs, float32 lwf);</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;</div><div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;<a class="code" href="structps__lattice__s.html">ps_lattice_t</a> *<a class="code" href="ngram__search_8h.html#ac30e7dec4bbfeee9f5163abf4bbd1014">ngram_search_lattice</a>(<a class="code" href="structps__search__s.html">ps_search_t</a> *search);</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;int32 <a class="code" href="ngram__search_8h.html#a25a80e488425b2bd4e24eb753c9295a5">ngram_search_exit_score</a>(<a class="code" href="structngram__search__s.html">ngram_search_t</a> *ngs, <a class="code" href="structbptbl__s.html">bptbl_t</a> *pbe, <span class="keywordtype">int</span> rcphone);</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;</div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;<span class="keywordtype">void</span> <a class="code" href="ngram__search_8h.html#a0e681022d3fa0e63da066aad123245e7">ngram_search_set_lm</a>(ngram_model_t *lm);</div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;</div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* __NGRAM_SEARCH_H__ */</span><span class="preprocessor"></span></div><div class="ttc" id="structchan__s_html_a742d6a125ac468b95a1ddd880a956e35"><div class="ttname"><a href="structchan__s.html#a742d6a125ac468b95a1ddd880a956e35">chan_s::hmm</a></div><div class="ttdeci">hmm_t hmm</div><div class="ttdoc">Basic HMM structure. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00065">ngram_search.h:65</a></div></div>
<div class="ttc" id="pocketsphinx__internal_8h_html"><div class="ttname"><a href="pocketsphinx__internal_8h.html">pocketsphinx_internal.h</a></div><div class="ttdoc">Internal implementation of PocketSphinx decoder. </div></div>
<div class="ttc" id="structngram__search__s_html_a38ea5de504b3d7ad2390a3f8966d502f"><div class="ttname"><a href="structngram__search__s.html#a38ea5de504b3d7ad2390a3f8966d502f">ngram_search_s::n_frame_alloc</a></div><div class="ttdeci">int32 n_frame_alloc</div><div class="ttdoc">Number of frames allocated in bp_table_idx and friends. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00307">ngram_search.h:307</a></div></div>
<div class="ttc" id="structbptbl__s_html_a143ff0891fafd471000df7c73123b8a7"><div class="ttname"><a href="structbptbl__s.html#a143ff0891fafd471000df7c73123b8a7">bptbl_s::wid</a></div><div class="ttdeci">int32 wid</div><div class="ttdoc">Word index. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00113">ngram_search.h:113</a></div></div>
<div class="ttc" id="ngram__search_8h_html_a2c5740fe4792d870b73f4100b32e9324"><div class="ttname"><a href="ngram__search_8h.html#a2c5740fe4792d870b73f4100b32e9324">chan_t</a></div><div class="ttdeci">struct chan_s chan_t</div><div class="ttdoc">Lexical tree node data type. </div></div>
<div class="ttc" id="ngram__search_8h_html_ac6a01bb08e7b8d1deb39763a98148cb0"><div class="ttname"><a href="ngram__search_8h.html#ac6a01bb08e7b8d1deb39763a98148cb0">ngram_search_find_exit</a></div><div class="ttdeci">int ngram_search_find_exit(ngram_search_t *ngs, int frame_idx, int32 *out_best_score, int32 *out_is_final)</div><div class="ttdoc">Find the best word exit for the current frame in the backpointer table. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8c_source.html#l00506">ngram_search.c:506</a></div></div>
<div class="ttc" id="structps__search__s_html"><div class="ttname"><a href="structps__search__s.html">ps_search_s</a></div><div class="ttdoc">Base structure for search module. </div><div class="ttdef"><b>Definition:</b> <a href="pocketsphinx__internal_8h_source.html#l00098">pocketsphinx_internal.h:98</a></div></div>
<div class="ttc" id="ngram__search_8h_html_ac30e7dec4bbfeee9f5163abf4bbd1014"><div class="ttname"><a href="ngram__search_8h.html#ac30e7dec4bbfeee9f5163abf4bbd1014">ngram_search_lattice</a></div><div class="ttdeci">ps_lattice_t * ngram_search_lattice(ps_search_t *search)</div><div class="ttdoc">Construct a word lattice from the current hypothesis. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8c_source.html#l01218">ngram_search.c:1218</a></div></div>
<div class="ttc" id="structngram__search__s_html_a043723786367f5026dce99c261f7086d"><div class="ttname"><a href="structngram__search__s.html#a043723786367f5026dce99c261f7086d">ngram_search_s::n_nonroot_chan</a></div><div class="ttdeci">int32 n_nonroot_chan</div><div class="ttdoc">Number of valid non-root channels. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00234">ngram_search.h:234</a></div></div>
<div class="ttc" id="ngram__search_8h_html_a0e681022d3fa0e63da066aad123245e7"><div class="ttname"><a href="ngram__search_8h.html#a0e681022d3fa0e63da066aad123245e7">ngram_search_set_lm</a></div><div class="ttdeci">void ngram_search_set_lm(ngram_model_t *lm)</div><div class="ttdoc">Sets the global language model. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8c_source.html#l01406">ngram_search.c:1406</a></div></div>
<div class="ttc" id="structroot__chan__s_html_ae0f0b90a7cb2fcb54cd7b30502dd497e"><div class="ttname"><a href="structroot__chan__s.html#ae0f0b90a7cb2fcb54cd7b30502dd497e">root_chan_s::next</a></div><div class="ttdeci">chan_t * next</div><div class="ttdoc">first descendant of this channel </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00094">ngram_search.h:94</a></div></div>
<div class="ttc" id="structngram__search__s_html_abe9fe60f6e48b9a6e3d41856bb1dc109"><div class="ttname"><a href="structngram__search__s.html#abe9fe60f6e48b9a6e3d41856bb1dc109">ngram_search_s::chan_alloc</a></div><div class="ttdeci">listelem_alloc_t * chan_alloc</div><div class="ttdoc">For chan_t. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00211">ngram_search.h:211</a></div></div>
<div class="ttc" id="structhmm__t_html"><div class="ttname"><a href="structhmm__t.html">hmm_t</a></div><div class="ttdoc">An individual HMM among the HMM search space. </div></div>
<div class="ttc" id="structbptbl__s_html_ae52081dde905cf6e7d988cdeb4c9b8b3"><div class="ttname"><a href="structbptbl__s.html#ae52081dde905cf6e7d988cdeb4c9b8b3">bptbl_s::frame</a></div><div class="ttdeci">frame_idx_t frame</div><div class="ttdoc">start or end frame </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00110">ngram_search.h:110</a></div></div>
<div class="ttc" id="ngram__search_8h_html_aab8eee3f73f666d0e12c5b355a651cff"><div class="ttname"><a href="ngram__search_8h.html#aab8eee3f73f666d0e12c5b355a651cff">root_chan_t</a></div><div class="ttdeci">struct root_chan_s root_chan_t</div><div class="ttdoc">Lexical tree node data type for the first phone (root) of each dynamic HMM tree structure. </div></div>
<div class="ttc" id="structngram__search__s_html_acfbdd34e3dadbaa384818402f1dd59bf"><div class="ttname"><a href="structngram__search__s.html#acfbdd34e3dadbaa384818402f1dd59bf">ngram_search_s::hmmctx</a></div><div class="ttdeci">hmm_context_t * hmmctx</div><div class="ttdoc">HMM context. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00200">ngram_search.h:200</a></div></div>
<div class="ttc" id="structbptbl__s_html_a27b8e54bb7552e6afc15e4f44f42e3b7"><div class="ttname"><a href="structbptbl__s.html#a27b8e54bb7552e6afc15e4f44f42e3b7">bptbl_s::last2_phone</a></div><div class="ttdeci">int16 last2_phone</div><div class="ttdoc">next-to-last phone of this word </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00120">ngram_search.h:120</a></div></div>
<div class="ttc" id="ngram__search_8h_html_a15477192481dffcb29e9c4167eff6c3c"><div class="ttname"><a href="ngram__search_8h.html#a15477192481dffcb29e9c4167eff6c3c">ngram_search_free_all_rc</a></div><div class="ttdeci">void ngram_search_free_all_rc(ngram_search_t *ngs, int32 w)</div><div class="ttdoc">Allocate last phone channels for all possible right contexts for word w. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8c_source.html#l00650">ngram_search.c:650</a></div></div>
<div class="ttc" id="structngram__search__s_html_aeb4c98851bf9b239ca607ca59f59ff4c"><div class="ttname"><a href="structngram__search__s.html#aeb4c98851bf9b239ca607ca59f59ff4c">ngram_search_s::word_active</a></div><div class="ttdeci">bitvec_t * word_active</div><div class="ttdoc">array of active flags for all words. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00247">ngram_search.h:247</a></div></div>
<div class="ttc" id="ngram__search_8h_html_a89d7d2a948a3cc2d55c77120cbd35e0d"><div class="ttname"><a href="ngram__search_8h.html#a89d7d2a948a3cc2d55c77120cbd35e0d">bptbl_seg_t</a></div><div class="ttdeci">struct bptbl_seg_s bptbl_seg_t</div><div class="ttdoc">Segmentation &quot;iterator&quot; for backpointer table results. </div></div>
<div class="ttc" id="ngram__search_8h_html_ae36649be6f5a2190e759e7ed13bd7b6b"><div class="ttname"><a href="ngram__search_8h.html#ae36649be6f5a2190e759e7ed13bd7b6b">ngram_search_save_bp</a></div><div class="ttdeci">void ngram_search_save_bp(ngram_search_t *ngs, int frame_idx, int32 w, int32 score, int32 path, int32 rc)</div><div class="ttdoc">Enter a word in the backpointer table. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8c_source.html#l00383">ngram_search.c:383</a></div></div>
<div class="ttc" id="ngram__search_8h_html_a1ddcc1a9cb3e164ceb2140097ed23a3e"><div class="ttname"><a href="ngram__search_8h.html#a1ddcc1a9cb3e164ceb2140097ed23a3e">ngram_search_alloc_all_rc</a></div><div class="ttdeci">void ngram_search_alloc_all_rc(ngram_search_t *ngs, int32 w)</div><div class="ttdoc">Allocate last phone channels for all possible right contexts for word w. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8c_source.html#l00601">ngram_search.c:601</a></div></div>
<div class="ttc" id="hmm_8h_html"><div class="ttname"><a href="hmm_8h.html">hmm.h</a></div><div class="ttdoc">Implementation of HMM base structure. </div></div>
<div class="ttc" id="structcand__sf__t_html"><div class="ttname"><a href="structcand__sf__t.html">cand_sf_t</a></div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00158">ngram_search.h:158</a></div></div>
<div class="ttc" id="structroot__chan__s_html_ad67c37bf4183f518acd7760c09a806f6"><div class="ttname"><a href="structroot__chan__s.html#ad67c37bf4183f518acd7760c09a806f6">root_chan_s::ciphone</a></div><div class="ttdeci">int16 ciphone</div><div class="ttdoc">first ciphone of this node; all words rooted at this node begin with this ciphone ...</div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00100">ngram_search.h:100</a></div></div>
<div class="ttc" id="structngram__search__s_html_a5056573bf95990cc28c97a56cd76ce9a"><div class="ttname"><a href="structngram__search__s.html#a5056573bf95990cc28c97a56cd76ce9a">ngram_search_s::active_word_list</a></div><div class="ttdeci">int32 ** active_word_list</div><div class="ttdoc">Array of active multi-phone words for current and next frame. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00287">ngram_search.h:287</a></div></div>
<div class="ttc" id="structchan__s_html_a260b68eff64150d0ae9ce4db7feb1300"><div class="ttname"><a href="structchan__s.html#a260b68eff64150d0ae9ce4db7feb1300">chan_s::next</a></div><div class="ttdeci">struct chan_s * next</div><div class="ttdoc">first descendant of this channel; or, in the case of the last phone of a word, the next alternative r...</div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00068">ngram_search.h:68</a></div></div>
<div class="ttc" id="structngram__search__stats__s_html"><div class="ttname"><a href="structngram__search__stats__s.html">ngram_search_stats_s</a></div><div class="ttdoc">Various statistics for profiling. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00180">ngram_search.h:180</a></div></div>
<div class="ttc" id="structngram__search__s_html_a1157923e0060b947e05caa819c8abe2c"><div class="ttname"><a href="structngram__search__s.html#a1157923e0060b947e05caa819c8abe2c">ngram_search_s::single_phone_wid</a></div><div class="ttdeci">int32 * single_phone_wid</div><div class="ttdoc">list of single-phone word ids </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00264">ngram_search.h:264</a></div></div>
<div class="ttc" id="structngram__search__s_html_abc8a67e3f64adc470c78dfdd23be4126"><div class="ttname"><a href="structngram__search__s.html#abc8a67e3f64adc470c78dfdd23be4126">ngram_search_s::n_root_chan_alloc</a></div><div class="ttdeci">int32 n_root_chan_alloc</div><div class="ttdoc">Number of root_chan allocated. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00232">ngram_search.h:232</a></div></div>
<div class="ttc" id="structroot__chan__s_html_a0c0cf22caf4c97879af86865764f1675"><div class="ttname"><a href="structroot__chan__s.html#a0c0cf22caf4c97879af86865764f1675">root_chan_s::ci2phone</a></div><div class="ttdeci">int16 ci2phone</div><div class="ttdoc">second ciphone of this node; one root HMM for each unique right context </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00102">ngram_search.h:102</a></div></div>
<div class="ttc" id="structbptbl__s_html_a4ca45ebc4a1ac18fc0596195e7e03bc8"><div class="ttname"><a href="structbptbl__s.html#a4ca45ebc4a1ac18fc0596195e7e03bc8">bptbl_s::bp</a></div><div class="ttdeci">int32 bp</div><div class="ttdoc">Back Pointer. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00114">ngram_search.h:114</a></div></div>
<div class="ttc" id="structchan__s_html_a136796f6a13c0d6989120f9aa25b85f1"><div class="ttname"><a href="structchan__s.html#a136796f6a13c0d6989120f9aa25b85f1">chan_s::penult_phn_wid</a></div><div class="ttdeci">int32 penult_phn_wid</div><div class="ttdoc">list of words whose last phone follows this one; this field indicates the first of the list; the rest...</div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00075">ngram_search.h:75</a></div></div>
<div class="ttc" id="structlast__ltrans__t_html"><div class="ttname"><a href="structlast__ltrans__t.html">last_ltrans_t</a></div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00151">ngram_search.h:151</a></div></div>
<div class="ttc" id="structchan__s_html_acf84a2fa662e7ff626769e7d8152a608"><div class="ttname"><a href="structchan__s.html#acf84a2fa662e7ff626769e7d8152a608">chan_s::rc_id</a></div><div class="ttdeci">int32 rc_id</div><div class="ttdoc">right-context id for last phone of words </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00079">ngram_search.h:79</a></div></div>
<div class="ttc" id="structngram__search__s_html"><div class="ttname"><a href="structngram__search__s.html">ngram_search_s</a></div><div class="ttdoc">N-Gram search module structure. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00197">ngram_search.h:197</a></div></div>
<div class="ttc" id="ngram__search_8h_html_a7772e007b7d7fdf437c87aeb08b59c71"><div class="ttname"><a href="ngram__search_8h.html#a7772e007b7d7fdf437c87aeb08b59c71">ngram_search_mark_bptable</a></div><div class="ttdeci">int ngram_search_mark_bptable(ngram_search_t *ngs, int frame_idx)</div><div class="ttdoc">Record the current frame&amp;#39;s index in the backpointer table. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8c_source.html#l00329">ngram_search.c:329</a></div></div>
<div class="ttc" id="structngram__search__s_html_a4b2b42349e9e3df7e93b4a7d6994f63f"><div class="ttname"><a href="structngram__search__s.html#a4b2b42349e9e3df7e93b4a7d6994f63f">ngram_search_s::max_nonroot_chan</a></div><div class="ttdeci">int32 max_nonroot_chan</div><div class="ttdoc">Maximum possible number of non-root channels. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00235">ngram_search.h:235</a></div></div>
<div class="ttc" id="structngram__search__s_html_a81ee45f3c184568e2b5f8b79c58e0b9e"><div class="ttname"><a href="structngram__search__s.html#a81ee45f3c184568e2b5f8b79c58e0b9e">ngram_search_s::last_phone_best_score</a></div><div class="ttdeci">int32 last_phone_best_score</div><div class="ttdoc">Best Viterbi path score for last phone. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00326">ngram_search.h:326</a></div></div>
<div class="ttc" id="structbptbl__s_html_a91247e4f807cf780afe8f5ac45e720b8"><div class="ttname"><a href="structbptbl__s.html#a91247e4f807cf780afe8f5ac45e720b8">bptbl_s::real_wid</a></div><div class="ttdeci">int32 real_wid</div><div class="ttdoc">wid of this or latest predecessor real word </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00117">ngram_search.h:117</a></div></div>
<div class="ttc" id="structngram__search__s_html_a1ffa3c9100252122ae8a2a713c50b527"><div class="ttname"><a href="structngram__search__s.html#a1ffa3c9100252122ae8a2a713c50b527">ngram_search_s::rhmm_1ph</a></div><div class="ttdeci">root_chan_t * rhmm_1ph</div><div class="ttdoc">Root HMMs for single-phone words. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00236">ngram_search.h:236</a></div></div>
<div class="ttc" id="ngram__search_8h_html_a9bafaa4af5a9a4f9e76a8daf54ac4a11"><div class="ttname"><a href="ngram__search_8h.html#a9bafaa4af5a9a4f9e76a8daf54ac4a11">ngram_search_free</a></div><div class="ttdeci">void ngram_search_free(ps_search_t *ngs)</div><div class="ttdoc">Finalize the N-Gram search module. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8c_source.html#l00289">ngram_search.c:289</a></div></div>
<div class="ttc" id="structbptbl__s_html_a83784e3b0121bc365d485151ab277920"><div class="ttname"><a href="structbptbl__s.html#a83784e3b0121bc365d485151ab277920">bptbl_s::prev_real_wid</a></div><div class="ttdeci">int32 prev_real_wid</div><div class="ttdoc">wid of second-last real word </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00118">ngram_search.h:118</a></div></div>
<div class="ttc" id="structngram__search__s_html_a21600dc2e23744f0be9c64a4db8d7e50"><div class="ttname"><a href="structngram__search__s.html#a21600dc2e23744f0be9c64a4db8d7e50">ngram_search_s::latnode_alloc</a></div><div class="ttdeci">listelem_alloc_t * latnode_alloc</div><div class="ttdoc">For latnode_t. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00213">ngram_search.h:213</a></div></div>
<div class="ttc" id="structhmm__context__t_html"><div class="ttname"><a href="structhmm__context__t.html">hmm_context_t</a></div><div class="ttdoc">Shared information between a set of HMMs. </div></div>
<div class="ttc" id="structbptbl__seg__s_html"><div class="ttname"><a href="structbptbl__seg__s.html">bptbl_seg_s</a></div><div class="ttdoc">Segmentation &quot;iterator&quot; for backpointer table results. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00126">ngram_search.h:126</a></div></div>
<div class="ttc" id="structbptbl__s_html_acdc7410a4069418879aa022f9b61c13d"><div class="ttname"><a href="structbptbl__s.html#acdc7410a4069418879aa022f9b61c13d">bptbl_s::refcnt</a></div><div class="ttdeci">uint8 refcnt</div><div class="ttdoc">Reference count (number of successors) </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00112">ngram_search.h:112</a></div></div>
<div class="ttc" id="structngram__search__s_html_aa54544457c363ccccb87fc7ec63a5f3e"><div class="ttname"><a href="structngram__search__s.html#aa54544457c363ccccb87fc7ec63a5f3e">ngram_search_s::frm_wordlist</a></div><div class="ttdeci">ps_latnode_t ** frm_wordlist</div><div class="ttdoc">List of active words in each frame. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00316">ngram_search.h:316</a></div></div>
<div class="ttc" id="structps__latnode__s_html"><div class="ttname"><a href="structps__latnode__s.html">ps_latnode_s</a></div><div class="ttdoc">DAG nodes. </div><div class="ttdef"><b>Definition:</b> <a href="ps__lattice__internal_8h_source.html#l00113">ps_lattice_internal.h:113</a></div></div>
<div class="ttc" id="structroot__chan__s_html"><div class="ttname"><a href="structroot__chan__s.html">root_chan_s</a></div><div class="ttdoc">Lexical tree node data type for the first phone (root) of each dynamic HMM tree structure. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00090">ngram_search.h:90</a></div></div>
<div class="ttc" id="structchan__s_html"><div class="ttname"><a href="structchan__s.html">chan_s</a></div><div class="ttdoc">Lexical tree node data type. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00064">ngram_search.h:64</a></div></div>
<div class="ttc" id="structroot__chan__s_html_a9d4d92ffa8b4079202ddebe3ba0eb290"><div class="ttname"><a href="structroot__chan__s.html#a9d4d92ffa8b4079202ddebe3ba0eb290">root_chan_s::hmm</a></div><div class="ttdeci">hmm_t hmm</div><div class="ttdoc">Basic HMM structure. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00091">ngram_search.h:91</a></div></div>
<div class="ttc" id="structroot__chan__s_html_af5bb41f0c9a03211ab90919f65be1564"><div class="ttname"><a href="structroot__chan__s.html#af5bb41f0c9a03211ab90919f65be1564">root_chan_s::this_phn_wid</a></div><div class="ttdeci">int32 this_phn_wid</div><div class="ttdoc">list of words consisting of this single phone; actually the first of the list, like penult_phn_wid; -...</div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00097">ngram_search.h:97</a></div></div>
<div class="ttc" id="ngram__search_8h_html_aee393a136f8f7e8b98161e6eed7b1dd9"><div class="ttname"><a href="ngram__search_8h.html#aee393a136f8f7e8b98161e6eed7b1dd9">ngram_search_bp_hyp</a></div><div class="ttdeci">char const * ngram_search_bp_hyp(ngram_search_t *ngs, int bpidx)</div><div class="ttdoc">Backtrace from a given backpointer index to obtain a word hypothesis. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8c_source.html#l00553">ngram_search.c:553</a></div></div>
<div class="ttc" id="structbptbl__seg__s_html_a1649196a2c03fb61b31624086ee998b5"><div class="ttname"><a href="structbptbl__seg__s.html#a1649196a2c03fb61b31624086ee998b5">bptbl_seg_s::cur</a></div><div class="ttdeci">int16 cur</div><div class="ttdoc">Current position in bpidx. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00130">ngram_search.h:130</a></div></div>
<div class="ttc" id="structngram__search__s_html_a83731bf0e2234e632c5e78f2321f5b2d"><div class="ttname"><a href="structngram__search__s.html#a83731bf0e2234e632c5e78f2321f5b2d">ngram_search_s::active_chan_list</a></div><div class="ttdeci">chan_t *** active_chan_list</div><div class="ttdoc">Array of active channels for current and next frame. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00275">ngram_search.h:275</a></div></div>
<div class="ttc" id="structdict__t_html"><div class="ttname"><a href="structdict__t.html">dict_t</a></div><div class="ttdoc">a structure for a dictionary. </div><div class="ttdef"><b>Definition:</b> <a href="dict_8h_source.html#l00076">dict.h:76</a></div></div>
<div class="ttc" id="structchan__s_html_a52e85d037ca3a8b21ff1eed1d469ca15"><div class="ttname"><a href="structchan__s.html#a52e85d037ca3a8b21ff1eed1d469ca15">chan_s::alt</a></div><div class="ttdeci">struct chan_s * alt</div><div class="ttdoc">sibling; i.e., next descendant of parent HMM </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00071">ngram_search.h:71</a></div></div>
<div class="ttc" id="structps__lattice__s_html"><div class="ttname"><a href="structps__lattice__s.html">ps_lattice_s</a></div><div class="ttdoc">Word graph structure used in bestpath/nbest search. </div><div class="ttdef"><b>Definition:</b> <a href="ps__lattice__internal_8h_source.html#l00061">ps_lattice_internal.h:61</a></div></div>
<div class="ttc" id="ngram__search_8h_html_a81093c091a82066374627744595840e6"><div class="ttname"><a href="ngram__search_8h.html#a81093c091a82066374627744595840e6">bptbl_t</a></div><div class="ttdeci">struct bptbl_s bptbl_t</div><div class="ttdoc">Back pointer table (forward pass lattice; actually a tree) </div></div>
<div class="ttc" id="structbptbl__seg__s_html_a8d1f0aa7dd09e2d6321a00b68ab6a051"><div class="ttname"><a href="structbptbl__seg__s.html#a8d1f0aa7dd09e2d6321a00b68ab6a051">bptbl_seg_s::n_bpidx</a></div><div class="ttdeci">int16 n_bpidx</div><div class="ttdoc">Number of backpointer IDs. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00129">ngram_search.h:129</a></div></div>
<div class="ttc" id="structngram__search__s_html_a150d99157e2f37a6f0dbb4b02682d9c3"><div class="ttname"><a href="structngram__search__s.html#a150d99157e2f37a6f0dbb4b02682d9c3">ngram_search_s::best_score</a></div><div class="ttdeci">int32 best_score</div><div class="ttdoc">Best Viterbi path score. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00325">ngram_search.h:325</a></div></div>
<div class="ttc" id="structbptbl__s_html"><div class="ttname"><a href="structbptbl__s.html">bptbl_s</a></div><div class="ttdoc">Back pointer table (forward pass lattice; actually a tree) </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00109">ngram_search.h:109</a></div></div>
<div class="ttc" id="structngram__search__s_html_a988672d895f1ee61dbf790b2065df4df"><div class="ttname"><a href="structngram__search__s.html#a988672d895f1ee61dbf790b2065df4df">ngram_search_s::n_1ph_LMwords</a></div><div class="ttdeci">int32 n_1ph_LMwords</div><div class="ttdoc">Number single phone dict words also in LM; these come first in single_phone_wid. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00266">ngram_search.h:266</a></div></div>
<div class="ttc" id="ngram__search_8h_html_a2fa760c99f77eb075157304f4359941e"><div class="ttname"><a href="ngram__search_8h.html#a2fa760c99f77eb075157304f4359941e">ngram_compute_seg_scores</a></div><div class="ttdeci">void ngram_compute_seg_scores(ngram_search_t *ngs, float32 lwf)</div><div class="ttdoc">Compute language and acoustic scores for backpointer table entries. </div></div>
<div class="ttc" id="structngram__search__s_html_ae1b0a51cfcddc1e4b6ac94fa1e48887a"><div class="ttname"><a href="structngram__search__s.html#ae1b0a51cfcddc1e4b6ac94fa1e48887a">ngram_search_s::root_chan</a></div><div class="ttdeci">root_chan_t * root_chan</div><div class="ttdoc">Search structure of HMM instances. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00231">ngram_search.h:231</a></div></div>
<div class="ttc" id="ngram__search_8h_html_a04f80b377c847026254fb85596e2f43c"><div class="ttname"><a href="ngram__search_8h.html#a04f80b377c847026254fb85596e2f43c">ngram_search_init</a></div><div class="ttdeci">ps_search_t * ngram_search_init(const char *name, ngram_model_t *lm, cmd_ln_t *config, acmod_t *acmod, dict_t *dict, dict2pid_t *d2p)</div><div class="ttdoc">Initialize the N-Gram search module. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8c_source.html#l00140">ngram_search.c:140</a></div></div>
<div class="ttc" id="ngram__search_8h_html_a25a80e488425b2bd4e24eb753c9295a5"><div class="ttname"><a href="ngram__search_8h.html#a25a80e488425b2bd4e24eb753c9295a5">ngram_search_exit_score</a></div><div class="ttdeci">int32 ngram_search_exit_score(ngram_search_t *ngs, bptbl_t *pbe, int rcphone)</div><div class="ttdoc">Get the exit score for a backpointer entry with a given right context. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8c_source.html#l00663">ngram_search.c:663</a></div></div>
<div class="ttc" id="structbptbl__s_html_abf9e4bcf1927aa09fb2b30c59e99f551"><div class="ttname"><a href="structbptbl__s.html#abf9e4bcf1927aa09fb2b30c59e99f551">bptbl_s::s_idx</a></div><div class="ttdeci">int32 s_idx</div><div class="ttdoc">Start of BScoreStack for various right contexts. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00116">ngram_search.h:116</a></div></div>
<div class="ttc" id="hmm_8h_html_ac9c9bae34d05f32736ae1743316737ef"><div class="ttname"><a href="hmm_8h.html#ac9c9bae34d05f32736ae1743316737ef">frame_idx_t</a></div><div class="ttdeci">int32 frame_idx_t</div><div class="ttdoc">Type for frame index values. </div><div class="ttdef"><b>Definition:</b> <a href="hmm_8h_source.html#l00064">hmm.h:64</a></div></div>
<div class="ttc" id="structngram__search__s_html_a5255e56d28c239a4e1d9b1721e8a2f8d"><div class="ttname"><a href="structngram__search__s.html#a5255e56d28c239a4e1d9b1721e8a2f8d">ngram_search_s::n_frame</a></div><div class="ttdeci">int32 n_frame</div><div class="ttdoc">Number of frames actually present. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00308">ngram_search.h:308</a></div></div>
<div class="ttc" id="structngram__search__s_html_a6127a6d8fb53832e67456c11aa6ad9c4"><div class="ttname"><a href="structngram__search__s.html#a6127a6d8fb53832e67456c11aa6ad9c4">ngram_search_s::lmset</a></div><div class="ttdeci">ngram_model_t * lmset</div><div class="ttdoc">Set of language models. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00199">ngram_search.h:199</a></div></div>
<div class="ttc" id="structbptbl__s_html_a4948439666e1e2204a6d1c6d9cfd1cd0"><div class="ttname"><a href="structbptbl__s.html#a4948439666e1e2204a6d1c6d9cfd1cd0">bptbl_s::valid</a></div><div class="ttdeci">uint8 valid</div><div class="ttdoc">For absolute pruning. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00111">ngram_search.h:111</a></div></div>
<div class="ttc" id="structngram__search__s_html_a9168184c862d6f63bd7926e6581b25d9"><div class="ttname"><a href="structngram__search__s.html#a9168184c862d6f63bd7926e6581b25d9">ngram_search_s::n_1ph_words</a></div><div class="ttdeci">int32 n_1ph_words</div><div class="ttdoc">Number single phone words in dict (total) </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00265">ngram_search.h:265</a></div></div>
<div class="ttc" id="structngram__search__s_html_a576470858bfa44c671f0e677902ab424"><div class="ttname"><a href="structngram__search__s.html#a576470858bfa44c671f0e677902ab424">ngram_search_s::root_chan_alloc</a></div><div class="ttdeci">listelem_alloc_t * root_chan_alloc</div><div class="ttdoc">For root_chan_t. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00212">ngram_search.h:212</a></div></div>
<div class="ttc" id="structchan__s_html_a33da51d8524073abc792519d0738ca0b"><div class="ttname"><a href="structchan__s.html#a33da51d8524073abc792519d0738ca0b">chan_s::ciphone</a></div><div class="ttdeci">int32 ciphone</div><div class="ttdoc">ciphone for this node </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00073">ngram_search.h:73</a></div></div>
<div class="ttc" id="structbptbl__seg__s_html_a81e3d422fb2307c1a83e9490525dce7f"><div class="ttname"><a href="structbptbl__seg__s.html#a81e3d422fb2307c1a83e9490525dce7f">bptbl_seg_s::bpidx</a></div><div class="ttdeci">int32 * bpidx</div><div class="ttdoc">Sequence of backpointer IDs. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00128">ngram_search.h:128</a></div></div>
<div class="ttc" id="structngram__search__s_html_a5758d167fbb48e824a6a58186620e06d"><div class="ttname"><a href="structngram__search__s.html#a5758d167fbb48e824a6a58186620e06d">ngram_search_s::st</a></div><div class="ttdeci">ngram_search_stats_t st</div><div class="ttdoc">Various statistics for profiling. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00335">ngram_search.h:335</a></div></div>
<div class="ttc" id="structngram__search__s_html_a79deb7295a261cd82d2a6b48cb119e77"><div class="ttname"><a href="structngram__search__s.html#a79deb7295a261cd82d2a6b48cb119e77">ngram_search_s::word_chan</a></div><div class="ttdeci">chan_t ** word_chan</div><div class="ttdoc">Channels associated with a given word (only used for right contexts, single-phone words in fwdtree se...</div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00246">ngram_search.h:246</a></div></div>
<div class="ttc" id="structngram__search__s_html_a774f1640c5ece856f4bef98d98e7c959"><div class="ttname"><a href="structngram__search__s.html#a774f1640c5ece856f4bef98d98e7c959">ngram_search_s::fwdflat_wordlist</a></div><div class="ttdeci">int32 * fwdflat_wordlist</div><div class="ttdoc">List of active word IDs for utterance. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00317">ngram_search.h:317</a></div></div>
<div class="ttc" id="structbptbl__s_html_aa5643c0c19ce4d39d51ddf7376f4d508"><div class="ttname"><a href="structbptbl__s.html#aa5643c0c19ce4d39d51ddf7376f4d508">bptbl_s::score</a></div><div class="ttdeci">int32 score</div><div class="ttdoc">Score (best among all right contexts) </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00115">ngram_search.h:115</a></div></div>
<div class="ttc" id="structbestbp__rc__s_html"><div class="ttname"><a href="structbestbp__rc__s.html">bestbp_rc_s</a></div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00169">ngram_search.h:169</a></div></div>
<div class="ttc" id="structngram__search__s_html_a297d8bdb856617490ee8ccd99df70e68"><div class="ttname"><a href="structngram__search__s.html#a297d8bdb856617490ee8ccd99df70e68">ngram_search_s::n_root_chan</a></div><div class="ttdeci">int32 n_root_chan</div><div class="ttdoc">Number of valid root_chan. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00233">ngram_search.h:233</a></div></div>
<div class="ttc" id="structps__seg__s_html"><div class="ttname"><a href="structps__seg__s.html">ps_seg_s</a></div><div class="ttdoc">Base structure for hypothesis segmentation iterator. </div><div class="ttdef"><b>Definition:</b> <a href="pocketsphinx__internal_8h_source.html#l00178">pocketsphinx_internal.h:178</a></div></div>
<div class="ttc" id="structngram__search__s_html_ab251bb3d0ddd33dd99ed390b61e481f2"><div class="ttname"><a href="structngram__search__s.html#ab251bb3d0ddd33dd99ed390b61e481f2">ngram_search_s::homophone_set</a></div><div class="ttdeci">int32 * homophone_set</div><div class="ttdoc">Each node in the HMM tree structure may point to a set of words whose last phone would follow that no...</div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00263">ngram_search.h:263</a></div></div>
<div class="ttc" id="structbptbl__seg__s_html_ac21f715b189c7e452385252bfcee47fe"><div class="ttname"><a href="structbptbl__seg__s.html#ac21f715b189c7e452385252bfcee47fe">bptbl_seg_s::base</a></div><div class="ttdeci">ps_seg_t base</div><div class="ttdoc">Base structure. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00127">ngram_search.h:127</a></div></div>
<div class="ttc" id="structngram__search__s_html_a1e3d4b67e4b11c6c11ebe16552d53d2d"><div class="ttname"><a href="structngram__search__s.html#a1e3d4b67e4b11c6c11ebe16552d53d2d">ngram_search_s::ascale</a></div><div class="ttdeci">float32 ascale</div><div class="ttdoc">Acoustic score scale for posterior probabilities. </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00333">ngram_search.h:333</a></div></div>
<div class="ttc" id="structacmod__s_html"><div class="ttname"><a href="structacmod__s.html">acmod_s</a></div><div class="ttdoc">Acoustic model structure. </div><div class="ttdef"><b>Definition:</b> <a href="acmod_8h_source.html#l00148">acmod.h:148</a></div></div>
<div class="ttc" id="structdict2pid__t_html"><div class="ttname"><a href="structdict2pid__t.html">dict2pid_t</a></div><div class="ttdoc">Building composite triphone (as well as word internal triphones) with the dictionary. </div><div class="ttdef"><b>Definition:</b> <a href="dict2pid_8h_source.html#l00084">dict2pid.h:84</a></div></div>
<div class="ttc" id="structlastphn__cand__s_html"><div class="ttname"><a href="structlastphn__cand__s.html">lastphn_cand_s</a></div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00138">ngram_search.h:138</a></div></div>
<div class="ttc" id="ngram__search_8h_html_ae68375016e7d208d22042a7dd4a0f37c"><div class="ttname"><a href="ngram__search_8h.html#ae68375016e7d208d22042a7dd4a0f37c">ngram_search_stats_t</a></div><div class="ttdeci">struct ngram_search_stats_s ngram_search_stats_t</div><div class="ttdoc">Various statistics for profiling. </div></div>
<div class="ttc" id="structbptbl__s_html_aa7704ba76d3dcde6b8a24855362a4289"><div class="ttname"><a href="structbptbl__s.html#aa7704ba76d3dcde6b8a24855362a4289">bptbl_s::last_phone</a></div><div class="ttdeci">int16 last_phone</div><div class="ttdoc">last phone of this word </div><div class="ttdef"><b>Definition:</b> <a href="ngram__search_8h_source.html#l00119">ngram_search.h:119</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_8d034a1e03e98d9b7ac467250bbebdea.html">libpocketsphinx</a></li><li class="navelem"><a class="el" href="ngram__search_8h.html">ngram_search.h</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>