-
Notifications
You must be signed in to change notification settings - Fork 14
/
Copy patha00017_source.html
366 lines (364 loc) · 49 KB
/
a00017_source.html
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
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.16"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>tesseract: /tesseract/include/tesseract/ltrresultiterator.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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></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">tesseract
 <span id="projectnumber">5.0.0-alpha-619-ge9db</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.16 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('a00017_source.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</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 class="header">
<div class="headertitle">
<div class="title">ltrresultiterator.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="a00017.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// File: ltrresultiterator.h</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">// Description: Iterator for tesseract results in strict left-to-right</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">// order that avoids using tesseract internal data structures.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">// Author: Ray Smith</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">//</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">// (C) Copyright 2010, Google Inc.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">// Licensed under the Apache License, Version 2.0 (the "License");</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">// you may not use this file except in compliance with the License.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">// You may obtain a copy of the License at</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">// http://www.apache.org/licenses/LICENSE-2.0</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment">// Unless required by applicable law or agreed to in writing, software</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">// distributed under the License is distributed on an "AS IS" BASIS,</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment">// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment">// See the License for the specific language governing permissions and</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment">// limitations under the License.</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment">//</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment"></span> </div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#ifndef TESSERACT_CCMAIN_LTR_RESULT_ITERATOR_H_</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#define TESSERACT_CCMAIN_LTR_RESULT_ITERATOR_H_</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>  </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include "<a class="code" href="a00026.html">pageiterator.h</a>"</span> <span class="comment">// for PageIterator</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include "<a class="code" href="a00029.html">platform.h</a>"</span> <span class="comment">// for TESS_API</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include "<a class="code" href="a00032.html">publictypes.h</a>"</span> <span class="comment">// for PageIteratorLevel</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include "<a class="code" href="a00050.html">unichar.h</a>"</span> <span class="comment">// for StrongScriptDirection</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="keyword">class </span>BLOB_CHOICE_IT;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">class </span><a class="code" href="a02818.html">PAGE_RES</a>;</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">class </span><a class="code" href="a02830.html">WERD_RES</a>;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>  </div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keyword">namespace </span><a class="code" href="a01818.html">tesseract</a> {</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>  </div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keyword">class </span>Tesseract;</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>  </div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="comment">// Class to iterate over tesseract results, providing access to all levels</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment">// of the page hierarchy, without including any tesseract headers or having</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment">// to handle any tesseract structures.</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment">// WARNING! This class points to data held within the TessBaseAPI class, and</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment">// therefore can only be used while the TessBaseAPI class still exists and</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment">// has not been subjected to a call of Init, SetImage, Recognize, Clear, End</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="comment">// DetectOS, or anything else that changes the internal PAGE_RES.</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment">// See apitypes.h for the definition of PageIteratorLevel.</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment">// See also base class PageIterator, which contains the bulk of the interface.</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="comment">// LTRResultIterator adds text-specific methods for access to OCR output.</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  </div>
<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="a02454.html"> 47</a></span> <span class="keyword">class </span><a class="code" href="a00029.html#a86e51270628c53ce7e2c23b1c2b4490e">TESS_API</a> <a class="code" href="a02454.html">LTRResultIterator</a> : <span class="keyword">public</span> <a class="code" href="a02486.html">PageIterator</a> {</div>
<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="a02454.html#a70bfabaaec14a25c7abef6984759c8db"> 48</a></span>  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="a02458.html">ChoiceIterator</a>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  </div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  <span class="keyword">public</span>:</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  <span class="comment">// page_res and tesseract come directly from the BaseAPI.</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <span class="comment">// The rectangle parameters are copied indirectly from the Thresholder,</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  <span class="comment">// via the BaseAPI. They represent the coordinates of some rectangle in an</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  <span class="comment">// original image (in top-left-origin coordinates) and therefore the top-left</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <span class="comment">// needs to be added to any output boxes in order to specify coordinates</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <span class="comment">// in the original image. See TessBaseAPI::SetRectangle.</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  <span class="comment">// The scale and scaled_yres are in case the Thresholder scaled the image</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <span class="comment">// rectangle prior to thresholding. Any coordinates in tesseract's image</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  <span class="comment">// must be divided by scale before adding (rect_left, rect_top).</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="comment">// The scaled_yres indicates the effective resolution of the binary image</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="comment">// that tesseract has been given by the Thresholder.</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <span class="comment">// After the constructor, Begin has already been called.</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <a class="code" href="a02454.html">LTRResultIterator</a>(<a class="code" href="a02818.html">PAGE_RES</a>* page_res, <a class="code" href="a02658.html">Tesseract</a>* <a class="code" href="a01818.html">tesseract</a>, <span class="keywordtype">int</span> scale,</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <span class="keywordtype">int</span> scaled_yres, <span class="keywordtype">int</span> rect_left, <span class="keywordtype">int</span> rect_top,</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  <span class="keywordtype">int</span> rect_width, <span class="keywordtype">int</span> rect_height);</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  </div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  ~<a class="code" href="a02454.html">LTRResultIterator</a>() <span class="keyword">override</span>;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  </div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <span class="comment">// LTRResultIterators may be copied! This makes it possible to iterate over</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <span class="comment">// all the objects at a lower level, while maintaining an iterator to</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <span class="comment">// objects at a higher level. These constructors DO NOT CALL Begin, so</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="comment">// iterations will continue from the location of src.</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="comment">// TODO: For now the copy constructor and operator= only need the base class</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="comment">// versions, but if new data members are added, don't forget to add them!</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  </div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="comment">// ============= Moving around within the page ============.</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  </div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <span class="comment">// See PageIterator.</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  </div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="comment">// ============= Accessing data ==============.</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  </div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <span class="comment">// Returns the null terminated UTF-8 encoded text string for the current</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="comment">// object at the given level. Use delete [] to free after use.</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keywordtype">char</span>* GetUTF8Text(<a class="code" href="a01818.html#aa26c22b65cc9765a0e747120f4287fd7">PageIteratorLevel</a> level) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  </div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <span class="comment">// Set the string inserted at the end of each text line. "\n" by default.</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <span class="keywordtype">void</span> SetLineSeparator(<span class="keyword">const</span> <span class="keywordtype">char</span>* new_line);</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  </div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="comment">// Set the string inserted at the end of each paragraph. "\n" by default.</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <span class="keywordtype">void</span> SetParagraphSeparator(<span class="keyword">const</span> <span class="keywordtype">char</span>* new_para);</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  </div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="comment">// Returns the mean confidence of the current object at the given level.</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="comment">// The number should be interpreted as a percent probability. (0.0f-100.0f)</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  <span class="keywordtype">float</span> Confidence(<a class="code" href="a01818.html#aa26c22b65cc9765a0e747120f4287fd7">PageIteratorLevel</a> level) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  </div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  <span class="comment">// Returns the attributes of the current row.</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="keywordtype">void</span> RowAttributes(<span class="keywordtype">float</span>* row_height, <span class="keywordtype">float</span>* descenders,</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <span class="keywordtype">float</span>* ascenders) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  </div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  <span class="comment">// ============= Functions that refer to words only ============.</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  </div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <span class="comment">// Returns the font attributes of the current word. If iterating at a higher</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <span class="comment">// level object than words, eg textlines, then this will return the</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="comment">// attributes of the first word in that textline.</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <span class="comment">// The actual return value is a string representing a font name. It points</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  <span class="comment">// to an internal table and SHOULD NOT BE DELETED. Lifespan is the same as</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  <span class="comment">// the iterator itself, ie rendered invalid by various members of</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  <span class="comment">// TessBaseAPI, including Init, SetImage, End or deleting the TessBaseAPI.</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <span class="comment">// Pointsize is returned in printers points (1/72 inch.)</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* WordFontAttributes(<span class="keywordtype">bool</span>* is_bold, <span class="keywordtype">bool</span>* is_italic,</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <span class="keywordtype">bool</span>* is_underlined, <span class="keywordtype">bool</span>* is_monospace,</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  <span class="keywordtype">bool</span>* is_serif, <span class="keywordtype">bool</span>* is_smallcaps,</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <span class="keywordtype">int</span>* pointsize, <span class="keywordtype">int</span>* font_id) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  </div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <span class="comment">// Return the name of the language used to recognize this word.</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <span class="comment">// On error, nullptr. Do not delete this pointer.</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* WordRecognitionLanguage() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  </div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  <span class="comment">// Return the overall directionality of this word.</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  <a class="code" href="a00050.html#abc3119a959ecd5cffc1d9b9d57479dba">StrongScriptDirection</a> WordDirection() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  </div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="comment">// Returns true if the current word was found in a dictionary.</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <span class="keywordtype">bool</span> WordIsFromDictionary() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  </div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  <span class="comment">// Returns the number of blanks before the current word.</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  <span class="keywordtype">int</span> BlanksBeforeWord() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  </div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>  <span class="comment">// Returns true if the current word is numeric.</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  <span class="keywordtype">bool</span> WordIsNumeric() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  </div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>  <span class="comment">// Returns true if the word contains blamer information.</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <span class="keywordtype">bool</span> HasBlamerInfo() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  </div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <span class="comment">// Returns the pointer to ParamsTrainingBundle stored in the BlamerBundle</span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  <span class="comment">// of the current word.</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  <span class="keyword">const</span> <span class="keywordtype">void</span>* GetParamsTrainingBundle() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  </div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  <span class="comment">// Returns a pointer to the string with blamer information for this word.</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  <span class="comment">// Assumes that the word's blamer_bundle is not nullptr.</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* GetBlamerDebug() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  </div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  <span class="comment">// Returns a pointer to the string with misadaption information for this word.</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  <span class="comment">// Assumes that the word's blamer_bundle is not nullptr.</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* GetBlamerMisadaptionDebug() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  </div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  <span class="comment">// Returns true if a truth string was recorded for the current word.</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  <span class="keywordtype">bool</span> HasTruthString() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  </div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="comment">// Returns true if the given string is equivalent to the truth string for</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  <span class="comment">// the current word.</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  <span class="keywordtype">bool</span> EquivalentToTruth(<span class="keyword">const</span> <span class="keywordtype">char</span>* str) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  </div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <span class="comment">// Returns a null terminated UTF-8 encoded truth string for the current word.</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  <span class="comment">// Use delete [] to free after use.</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <span class="keywordtype">char</span>* WordTruthUTF8Text() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  </div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="comment">// Returns a null terminated UTF-8 encoded normalized OCR string for the</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <span class="comment">// current word. Use delete [] to free after use.</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  <span class="keywordtype">char</span>* WordNormedUTF8Text() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  </div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  <span class="comment">// Returns a pointer to serialized choice lattice.</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  <span class="comment">// Fills lattice_size with the number of bytes in lattice data.</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* WordLattice(<span class="keywordtype">int</span>* lattice_size) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  </div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <span class="comment">// ============= Functions that refer to symbols only ============.</span></div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  </div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <span class="comment">// Returns true if the current symbol is a superscript.</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  <span class="comment">// If iterating at a higher level object than symbols, eg words, then</span></div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <span class="comment">// this will return the attributes of the first symbol in that word.</span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  <span class="keywordtype">bool</span> SymbolIsSuperscript() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <span class="comment">// Returns true if the current symbol is a subscript.</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <span class="comment">// If iterating at a higher level object than symbols, eg words, then</span></div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  <span class="comment">// this will return the attributes of the first symbol in that word.</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  <span class="keywordtype">bool</span> SymbolIsSubscript() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  <span class="comment">// Returns true if the current symbol is a dropcap.</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  <span class="comment">// If iterating at a higher level object than symbols, eg words, then</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  <span class="comment">// this will return the attributes of the first symbol in that word.</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  <span class="keywordtype">bool</span> SymbolIsDropcap() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  </div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  <span class="keyword">protected</span>:</div>
<div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="a02454.html#ae1b5b360d5bf55c0cd0eb336de37ea8b"> 181</a></span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="a02454.html#ae1b5b360d5bf55c0cd0eb336de37ea8b">line_separator_</a>;</div>
<div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="a02454.html#a1c6e431ccea8aaad26d9e8d6b9ca2f60"> 182</a></span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="a02454.html#a1c6e431ccea8aaad26d9e8d6b9ca2f60">paragraph_separator_</a>;</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> };</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  </div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="comment">// Class to iterate over the classifier choices for a single RIL_SYMBOL.</span></div>
<div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="a02458.html"> 186</a></span> <span class="keyword">class </span><a class="code" href="a02458.html">ChoiceIterator</a> {</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <span class="keyword">public</span>:</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <span class="comment">// Construction is from a LTRResultIterator that points to the symbol of</span></div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  <span class="comment">// interest. The ChoiceIterator allows a one-shot iteration over the</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  <span class="comment">// choices for this symbol and after that is is useless.</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  <span class="keyword">explicit</span> <a class="code" href="a02458.html#a47a2f2fdad78720b4c1a0ccf09e802c1">ChoiceIterator</a>(<span class="keyword">const</span> <a class="code" href="a02454.html">LTRResultIterator</a>& result_it);</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  <a class="code" href="a02458.html#a67e30da1e05da880234e347787181898">~ChoiceIterator</a>();</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  </div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>  <span class="comment">// Moves to the next choice for the symbol and returns false if there</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  <span class="comment">// are none left.</span></div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  <span class="keywordtype">bool</span> <a class="code" href="a02458.html#a1038c9116c30e5dc1c85fa2e93d45259">Next</a>();</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  </div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  <span class="comment">// ============= Accessing data ==============.</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  </div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <span class="comment">// Returns the null terminated UTF-8 encoded text string for the current</span></div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  <span class="comment">// choice.</span></div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  <span class="comment">// NOTE: Unlike LTRResultIterator::GetUTF8Text, the return points to an</span></div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  <span class="comment">// internal structure and should NOT be delete[]ed to free after use.</span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="a02458.html#a20e1745221e932cda71d5b8994aee2eb">GetUTF8Text</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  </div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  <span class="comment">// Returns the confidence of the current choice depending on the used language</span></div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  <span class="comment">// data. If only LSTM traineddata is used the value range is 0.0f - 1.0f. All</span></div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  <span class="comment">// choices for one symbol should roughly add up to 1.0f.</span></div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  <span class="comment">// If only traineddata of the legacy engine is used, the number should be</span></div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  <span class="comment">// interpreted as a percent probability. (0.0f-100.0f) In this case</span></div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  <span class="comment">// probabilities won't add up to 100. Each one stands on its own.</span></div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  <span class="keywordtype">float</span> <a class="code" href="a02458.html#ae36a0f152f0755df2c0af377fe639094">Confidence</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  </div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  <span class="comment">// Returns a vector containing all timesteps, which belong to the currently</span></div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  <span class="comment">// selected symbol. A timestep is a vector containing pairs of symbols and</span></div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  <span class="comment">// floating point numbers. The number states the probability for the</span></div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  <span class="comment">// corresponding symbol.</span></div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  std::vector<std::vector<std::pair<const char*, float>>>* <a class="code" href="a02458.html#aac4a7fcb491d31a2a1fa7c2f9c86e8f1">Timesteps</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  </div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <span class="keyword">private</span>:</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  <span class="comment">// clears the remaining spaces out of the results and adapt the probabilities</span></div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  <span class="keywordtype">void</span> filterSpaces();</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <span class="comment">// Pointer to the WERD_RES object owned by the API.</span></div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  <a class="code" href="a02830.html">WERD_RES</a>* word_res_;</div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <span class="comment">// Iterator over the blob choices.</span></div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  BLOB_CHOICE_IT* choice_it_;</div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  std::vector<std::pair<const char*, float>>* LSTM_choices_ = <span class="keyword">nullptr</span>;</div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  std::vector<std::pair<const char*, float>>::iterator LSTM_choice_it_;</div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  </div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  <span class="keyword">const</span> <span class="keywordtype">int</span>* tstep_index_;</div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  <span class="comment">// regulates the rating granularity</span></div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  <span class="keywordtype">double</span> rating_coefficient_;</div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  <span class="comment">// leading blanks</span></div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  <span class="keywordtype">int</span> blanks_before_word_;</div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  <span class="comment">// true when there is lstm engine related trained data</span></div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  <span class="keywordtype">bool</span> oemLSTM_;</div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> };</div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  </div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> } <span class="comment">// namespace tesseract.</span></div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  </div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="preprocessor">#endif // TESSERACT_CCMAIN_LTR_RESULT_ITERATOR_H_</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aa02458_html"><div class="ttname"><a href="a02458.html">tesseract::ChoiceIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00186">ltrresultiterator.h:186</a></div></div>
<div class="ttc" id="aa02658_html"><div class="ttname"><a href="a02658.html">tesseract::Tesseract</a></div><div class="ttdef"><b>Definition:</b> <a href="a00224_source.html#l00172">tesseractclass.h:172</a></div></div>
<div class="ttc" id="aa02458_html_aac4a7fcb491d31a2a1fa7c2f9c86e8f1"><div class="ttname"><a href="a02458.html#aac4a7fcb491d31a2a1fa7c2f9c86e8f1">tesseract::ChoiceIterator::Timesteps</a></div><div class="ttdeci">std::vector< std::vector< std::pair< const char *, float > > > * Timesteps() const</div><div class="ttdef"><b>Definition:</b> <a href="a00149_source.html#l00470">ltrresultiterator.cpp:470</a></div></div>
<div class="ttc" id="aa02486_html"><div class="ttname"><a href="a02486.html">tesseract::PageIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00052">pageiterator.h:52</a></div></div>
<div class="ttc" id="aa00050_html_abc3119a959ecd5cffc1d9b9d57479dba"><div class="ttname"><a href="a00050.html#abc3119a959ecd5cffc1d9b9d57479dba">StrongScriptDirection</a></div><div class="ttdeci">StrongScriptDirection</div><div class="ttdef"><b>Definition:</b> <a href="a00050_source.html#l00043">unichar.h:43</a></div></div>
<div class="ttc" id="aa00029_html"><div class="ttname"><a href="a00029.html">platform.h</a></div></div>
<div class="ttc" id="aa02830_html"><div class="ttname"><a href="a02830.html">WERD_RES</a></div><div class="ttdef"><b>Definition:</b> <a href="a00374_source.html#l00160">pageres.h:160</a></div></div>
<div class="ttc" id="aa02458_html_a67e30da1e05da880234e347787181898"><div class="ttname"><a href="a02458.html#a67e30da1e05da880234e347787181898">tesseract::ChoiceIterator::~ChoiceIterator</a></div><div class="ttdeci">~ChoiceIterator()</div><div class="ttdef"><b>Definition:</b> <a href="a00149_source.html#l00412">ltrresultiterator.cpp:412</a></div></div>
<div class="ttc" id="aa02454_html_ae1b5b360d5bf55c0cd0eb336de37ea8b"><div class="ttname"><a href="a02454.html#ae1b5b360d5bf55c0cd0eb336de37ea8b">tesseract::LTRResultIterator::line_separator_</a></div><div class="ttdeci">const char * line_separator_</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00181">ltrresultiterator.h:181</a></div></div>
<div class="ttc" id="aa02454_html"><div class="ttname"><a href="a02454.html">tesseract::LTRResultIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00047">ltrresultiterator.h:47</a></div></div>
<div class="ttc" id="aa02454_html_a1c6e431ccea8aaad26d9e8d6b9ca2f60"><div class="ttname"><a href="a02454.html#a1c6e431ccea8aaad26d9e8d6b9ca2f60">tesseract::LTRResultIterator::paragraph_separator_</a></div><div class="ttdeci">const char * paragraph_separator_</div><div class="ttdef"><b>Definition:</b> <a href="a00017_source.html#l00182">ltrresultiterator.h:182</a></div></div>
<div class="ttc" id="aa02458_html_ae36a0f152f0755df2c0af377fe639094"><div class="ttname"><a href="a02458.html#ae36a0f152f0755df2c0af377fe639094">tesseract::ChoiceIterator::Confidence</a></div><div class="ttdeci">float Confidence() const</div><div class="ttdef"><b>Definition:</b> <a href="a00149_source.html#l00455">ltrresultiterator.cpp:455</a></div></div>
<div class="ttc" id="aa00032_html"><div class="ttname"><a href="a00032.html">publictypes.h</a></div></div>
<div class="ttc" id="aa01818_html_aa26c22b65cc9765a0e747120f4287fd7"><div class="ttname"><a href="a01818.html#aa26c22b65cc9765a0e747120f4287fd7">tesseract::PageIteratorLevel</a></div><div class="ttdeci">PageIteratorLevel</div><div class="ttdef"><b>Definition:</b> <a href="a00032_source.html#l00216">publictypes.h:216</a></div></div>
<div class="ttc" id="aa00026_html"><div class="ttname"><a href="a00026.html">pageiterator.h</a></div></div>
<div class="ttc" id="aa01818_html"><div class="ttname"><a href="a01818.html">tesseract</a></div><div class="ttdef"><b>Definition:</b> <a href="a00005_source.html#l00065">baseapi.h:65</a></div></div>
<div class="ttc" id="aa02818_html"><div class="ttname"><a href="a02818.html">PAGE_RES</a></div><div class="ttdef"><b>Definition:</b> <a href="a00374_source.html#l00073">pageres.h:73</a></div></div>
<div class="ttc" id="aa02458_html_a20e1745221e932cda71d5b8994aee2eb"><div class="ttname"><a href="a02458.html#a20e1745221e932cda71d5b8994aee2eb">tesseract::ChoiceIterator::GetUTF8Text</a></div><div class="ttdeci">const char * GetUTF8Text() const</div><div class="ttdef"><b>Definition:</b> <a href="a00149_source.html#l00437">ltrresultiterator.cpp:437</a></div></div>
<div class="ttc" id="aa00050_html"><div class="ttname"><a href="a00050.html">unichar.h</a></div></div>
<div class="ttc" id="aa00029_html_a86e51270628c53ce7e2c23b1c2b4490e"><div class="ttname"><a href="a00029.html#a86e51270628c53ce7e2c23b1c2b4490e">TESS_API</a></div><div class="ttdeci">#define TESS_API</div><div class="ttdef"><b>Definition:</b> <a href="a00029_source.html#l00054">platform.h:54</a></div></div>
<div class="ttc" id="aa02458_html_a1038c9116c30e5dc1c85fa2e93d45259"><div class="ttname"><a href="a02458.html#a1038c9116c30e5dc1c85fa2e93d45259">tesseract::ChoiceIterator::Next</a></div><div class="ttdeci">bool Next()</div><div class="ttdef"><b>Definition:</b> <a href="a00149_source.html#l00418">ltrresultiterator.cpp:418</a></div></div>
<div class="ttc" id="aa02458_html_a47a2f2fdad78720b4c1a0ccf09e802c1"><div class="ttname"><a href="a02458.html#a47a2f2fdad78720b4c1a0ccf09e802c1">tesseract::ChoiceIterator::ChoiceIterator</a></div><div class="ttdeci">ChoiceIterator(const LTRResultIterator &result_it)</div><div class="ttdef"><b>Definition:</b> <a href="a00149_source.html#l00376">ltrresultiterator.cpp:376</a></div></div>
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_00200a555532e7ec3afbcddd6091e65a.html">tesseract</a></li><li class="navelem"><a class="el" href="a00017.html">ltrresultiterator.h</a></li>
<li class="footer">Generated on Thu Jan 30 2020 14:22:19 for tesseract by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.16 </li>
</ul>
</div>
</body>
</html>