~ubuntu-branches/ubuntu/vivid/tesseract/vivid

« back to all changes in this revision

Viewing changes to doc/html/a00798.html

  • Committer: Package Import Robot
  • Author(s): Jeff Breidenbach
  • Date: 2014-02-03 11:10:20 UTC
  • mfrom: (1.3.1) (19.1.1 experimental)
  • Revision ID: package-import@ubuntu.com-20140203111020-igquodd7pjlp3uri
Tags: 3.03.01-1
* New upstream release, includes critical fix to PDF rendering
* Complete leptonlib transition (see bug #735509)
* Promote from experimental to unstable

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
2
<html xmlns="http://www.w3.org/1999/xhtml">
 
3
<head>
 
4
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
 
5
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
 
6
<title>tesseract: /usr/local/google/home/jbreiden/tesseract-ocr-read-only/ccstruct/statistc.h File Reference</title>
 
7
 
 
8
<link href="tabs.css" rel="stylesheet" type="text/css"/>
 
9
<link href="doxygen.css" rel="stylesheet" type="text/css" />
 
10
<link href="navtree.css" rel="stylesheet" type="text/css"/>
 
11
<script type="text/javascript" src="jquery.js"></script>
 
12
<script type="text/javascript" src="resize.js"></script>
 
13
<script type="text/javascript" src="navtree.js"></script>
 
14
<script type="text/javascript">
 
15
  $(document).ready(initResizable);
 
16
</script>
 
17
<link href="search/search.css" rel="stylesheet" type="text/css"/>
 
18
<script type="text/javascript" src="search/search.js"></script>
 
19
<script type="text/javascript">
 
20
  $(document).ready(function() { searchBox.OnSelectItem(0); });
 
21
</script>
 
22
 
 
23
</head>
 
24
<body>
 
25
<div id="top"><!-- do not remove this div! -->
 
26
 
 
27
 
 
28
<div id="titlearea">
 
29
<table cellspacing="0" cellpadding="0">
 
30
 <tbody>
 
31
 <tr style="height: 56px;">
 
32
  
 
33
  
 
34
  <td style="padding-left: 0.5em;">
 
35
   <div id="projectname">tesseract
 
36
   &#160;<span id="projectnumber">3.03</span>
 
37
   </div>
 
38
   
 
39
  </td>
 
40
  
 
41
  
 
42
  
 
43
 </tr>
 
44
 </tbody>
 
45
</table>
 
46
</div>
 
47
 
 
48
<!-- Generated by Doxygen 1.7.6.1 -->
 
49
<script type="text/javascript">
 
50
var searchBox = new SearchBox("searchBox", "search",false,'Search');
 
51
</script>
 
52
  <div id="navrow1" class="tabs">
 
53
    <ul class="tablist">
 
54
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
 
55
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
 
56
      <li><a href="modules.html"><span>Modules</span></a></li>
 
57
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
 
58
      <li><a href="annotated.html"><span>Classes</span></a></li>
 
59
      <li class="current"><a href="files.html"><span>Files</span></a></li>
 
60
      <li>
 
61
        <div id="MSearchBox" class="MSearchBoxInactive">
 
62
        <span class="left">
 
63
          <img id="MSearchSelect" src="search/mag_sel.png"
 
64
               onmouseover="return searchBox.OnSearchSelectShow()"
 
65
               onmouseout="return searchBox.OnSearchSelectHide()"
 
66
               alt=""/>
 
67
          <input type="text" id="MSearchField" value="Search" accesskey="S"
 
68
               onfocus="searchBox.OnSearchFieldFocus(true)" 
 
69
               onblur="searchBox.OnSearchFieldFocus(false)" 
 
70
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
 
71
          </span><span class="right">
 
72
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
 
73
          </span>
 
74
        </div>
 
75
      </li>
 
76
    </ul>
 
77
  </div>
 
78
  <div id="navrow2" class="tabs2">
 
79
    <ul class="tablist">
 
80
      <li><a href="files.html"><span>File&#160;List</span></a></li>
 
81
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
 
82
    </ul>
 
83
  </div>
 
84
</div>
 
85
<div id="side-nav" class="ui-resizable side-nav-resizable">
 
86
  <div id="nav-tree">
 
87
    <div id="nav-tree-contents">
 
88
    </div>
 
89
  </div>
 
90
  <div id="splitbar" style="-moz-user-select:none;" 
 
91
       class="ui-resizable-handle">
 
92
  </div>
 
93
</div>
 
94
<script type="text/javascript">
 
95
  initNavTree('a00798.html','');
 
96
</script>
 
97
<div id="doc-content">
 
98
<div class="header">
 
99
  <div class="summary">
 
100
<a href="#nested-classes">Classes</a> &#124;
 
101
<a href="#func-members">Functions</a>  </div>
 
102
  <div class="headertitle">
 
103
<div class="title">/usr/local/google/home/jbreiden/tesseract-ocr-read-only/ccstruct/statistc.h File Reference</div>  </div>
 
104
</div><!--header-->
 
105
<div class="contents">
 
106
<div class="textblock"><code>#include &lt;stdio.h&gt;</code><br/>
 
107
<code>#include &quot;<a class="el" href="a00831_source.html">host.h</a>&quot;</code><br/>
 
108
<code>#include &quot;<a class="el" href="a00834_source.html">kdpair.h</a>&quot;</code><br/>
 
109
<code>#include &quot;<a class="el" href="a01203_source.html">scrollview.h</a>&quot;</code><br/>
 
110
</div>
 
111
<p><a href="a00798_source.html">Go to the source code of this file.</a></p>
 
112
<table class="memberdecls">
 
113
<tr><td colspan="2"><h2><a name="nested-classes"></a>
 
114
Classes</h2></td></tr>
 
115
<tr><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00556.html">STATS</a></td></tr>
 
116
<tr><td colspan="2"><h2><a name="func-members"></a>
 
117
Functions</h2></td></tr>
 
118
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00798.html#ab531cf8bc727a6e03af3a6cc10b4cd7a">choose_nth_item</a> (<a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> index, float *array, <a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> <a class="el" href="a01043.html#acd4ea858d7133e40518e0832ff9d94b2">count</a>)</td></tr>
 
119
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00798.html#a71a0ba1133f24e41c7123bc460798744">choose_nth_item</a> (<a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> index, void *array, <a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> <a class="el" href="a01043.html#acd4ea858d7133e40518e0832ff9d94b2">count</a>, size_t size, int(*compar)(const void *, const void *))</td></tr>
 
120
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00798.html#ab483724220813ab89951f7c264dcdd26">swap_entries</a> (void *array, size_t size, <a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> index1, <a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> index2)</td></tr>
 
121
</table>
 
122
<hr/><h2>Function Documentation</h2>
 
123
<a class="anchor" id="ab531cf8bc727a6e03af3a6cc10b4cd7a"></a><!-- doxytag: member="statistc.h::choose_nth_item" ref="ab531cf8bc727a6e03af3a6cc10b4cd7a" args="(inT32 index, float *array, inT32 count)" -->
 
124
<div class="memitem">
 
125
<div class="memproto">
 
126
      <table class="memname">
 
127
        <tr>
 
128
          <td class="memname"><a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> <a class="el" href="a00798.html#a71a0ba1133f24e41c7123bc460798744">choose_nth_item</a> </td>
 
129
          <td>(</td>
 
130
          <td class="paramtype"><a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a>&#160;</td>
 
131
          <td class="paramname"><em>index</em>, </td>
 
132
        </tr>
 
133
        <tr>
 
134
          <td class="paramkey"></td>
 
135
          <td></td>
 
136
          <td class="paramtype">float *&#160;</td>
 
137
          <td class="paramname"><em>array</em>, </td>
 
138
        </tr>
 
139
        <tr>
 
140
          <td class="paramkey"></td>
 
141
          <td></td>
 
142
          <td class="paramtype"><a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a>&#160;</td>
 
143
          <td class="paramname"><em>count</em>&#160;</td>
 
144
        </tr>
 
145
        <tr>
 
146
          <td></td>
 
147
          <td>)</td>
 
148
          <td></td><td></td>
 
149
        </tr>
 
150
      </table>
 
151
</div>
 
152
<div class="memdoc">
 
153
 
 
154
<p>Definition at line <a class="el" href="a00797_source.html#l00640">640</a> of file <a class="el" href="a00797_source.html">statistc.cpp</a>.</p>
 
155
<div class="fragment"><pre class="fragment">                                                              {
 
156
  <a class="code" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> next_sample;             <span class="comment">// next one to do</span>
 
157
  <a class="code" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> next_lesser;             <span class="comment">// space for new</span>
 
158
  <a class="code" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> prev_greater;            <span class="comment">// last one saved</span>
 
159
  <a class="code" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> equal_count;             <span class="comment">// no of equal ones</span>
 
160
  <span class="keywordtype">float</span> pivot;                   <span class="comment">// proposed median</span>
 
161
  <span class="keywordtype">float</span> <a class="code" href="a00525.html">sample</a>;                  <span class="comment">// current sample</span>
 
162
 
 
163
  <span class="keywordflow">if</span> (<a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a> &lt;= 1)
 
164
    <span class="keywordflow">return</span> 0;
 
165
  <span class="keywordflow">if</span> (<a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a> == 2) {
 
166
    <span class="keywordflow">if</span> (array[0] &lt; array[1]) {
 
167
      <span class="keywordflow">return</span> index &gt;= 1 ? 1 : 0;
 
168
    }
 
169
    <span class="keywordflow">else</span> {
 
170
      <span class="keywordflow">return</span> index &gt;= 1 ? 0 : 1;
 
171
    }
 
172
  }
 
173
  <span class="keywordflow">else</span> {
 
174
    <span class="keywordflow">if</span> (index &lt; 0)
 
175
      index = 0;                 <span class="comment">// ensure legal</span>
 
176
    <span class="keywordflow">else</span> <span class="keywordflow">if</span> (index &gt;= <a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a>)
 
177
      index = <a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a> - 1;
 
178
    equal_count = (<a class="code" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a>) (rand() % <a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a>);
 
179
    pivot = array[equal_count];
 
180
                                 <span class="comment">// fill gap</span>
 
181
    array[equal_count] = array[0];
 
182
    next_lesser = 0;
 
183
    prev_greater = <a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a>;
 
184
    equal_count = 1;
 
185
    <span class="keywordflow">for</span> (next_sample = 1; next_sample &lt; prev_greater;) {
 
186
      sample = array[next_sample];
 
187
      <span class="keywordflow">if</span> (sample &lt; pivot) {
 
188
                                 <span class="comment">// shuffle</span>
 
189
        array[next_lesser++] = sample;
 
190
        next_sample++;
 
191
      }
 
192
      <span class="keywordflow">else</span> <span class="keywordflow">if</span> (sample &gt; pivot) {
 
193
        prev_greater--;
 
194
                                 <span class="comment">// juggle</span>
 
195
        array[next_sample] = array[prev_greater];
 
196
        array[prev_greater] = sample;
 
197
      }
 
198
      <span class="keywordflow">else</span> {
 
199
        equal_count++;
 
200
        next_sample++;
 
201
      }
 
202
    }
 
203
    <span class="keywordflow">for</span> (next_sample = next_lesser; next_sample &lt; prev_greater;)
 
204
      array[next_sample++] = pivot;
 
205
    <span class="keywordflow">if</span> (index &lt; next_lesser)
 
206
      <span class="keywordflow">return</span> <a class="code" href="a00797.html#ab531cf8bc727a6e03af3a6cc10b4cd7a">choose_nth_item</a> (index, array, next_lesser);
 
207
    <span class="keywordflow">else</span> <span class="keywordflow">if</span> (index &lt; prev_greater)
 
208
      <span class="keywordflow">return</span> next_lesser;        <span class="comment">// in equal bracket</span>
 
209
    <span class="keywordflow">else</span>
 
210
      <span class="keywordflow">return</span> <a class="code" href="a00797.html#ab531cf8bc727a6e03af3a6cc10b4cd7a">choose_nth_item</a> (index - prev_greater,
 
211
        array + prev_greater,
 
212
        <a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a> - prev_greater) + prev_greater;
 
213
  }
 
214
}
 
215
</pre></div>
 
216
</div>
 
217
</div>
 
218
<a class="anchor" id="a71a0ba1133f24e41c7123bc460798744"></a><!-- doxytag: member="statistc.h::choose_nth_item" ref="a71a0ba1133f24e41c7123bc460798744" args="(inT32 index, void *array, inT32 count, size_t size, int(*compar)(const void *, const void *))" -->
 
219
<div class="memitem">
 
220
<div class="memproto">
 
221
      <table class="memname">
 
222
        <tr>
 
223
          <td class="memname"><a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> <a class="el" href="a00798.html#a71a0ba1133f24e41c7123bc460798744">choose_nth_item</a> </td>
 
224
          <td>(</td>
 
225
          <td class="paramtype"><a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a>&#160;</td>
 
226
          <td class="paramname"><em>index</em>, </td>
 
227
        </tr>
 
228
        <tr>
 
229
          <td class="paramkey"></td>
 
230
          <td></td>
 
231
          <td class="paramtype">void *&#160;</td>
 
232
          <td class="paramname"><em>array</em>, </td>
 
233
        </tr>
 
234
        <tr>
 
235
          <td class="paramkey"></td>
 
236
          <td></td>
 
237
          <td class="paramtype"><a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a>&#160;</td>
 
238
          <td class="paramname"><em>count</em>, </td>
 
239
        </tr>
 
240
        <tr>
 
241
          <td class="paramkey"></td>
 
242
          <td></td>
 
243
          <td class="paramtype">size_t&#160;</td>
 
244
          <td class="paramname"><em>size</em>, </td>
 
245
        </tr>
 
246
        <tr>
 
247
          <td class="paramkey"></td>
 
248
          <td></td>
 
249
          <td class="paramtype">int(*)(const void *, const void *)&#160;</td>
 
250
          <td class="paramname"><em>compar</em>&#160;</td>
 
251
        </tr>
 
252
        <tr>
 
253
          <td></td>
 
254
          <td>)</td>
 
255
          <td></td><td></td>
 
256
        </tr>
 
257
      </table>
 
258
</div>
 
259
<div class="memdoc">
 
260
 
 
261
<p>Definition at line <a class="el" href="a00797_source.html#l00707">707</a> of file <a class="el" href="a00797_source.html">statistc.cpp</a>.</p>
 
262
<div class="fragment"><pre class="fragment">                                                               {
 
263
  <span class="keywordtype">int</span> result;                    <span class="comment">// of compar</span>
 
264
  <a class="code" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> next_sample;             <span class="comment">// next one to do</span>
 
265
  <a class="code" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> next_lesser;             <span class="comment">// space for new</span>
 
266
  <a class="code" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> prev_greater;            <span class="comment">// last one saved</span>
 
267
  <a class="code" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> equal_count;             <span class="comment">// no of equal ones</span>
 
268
  <a class="code" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a> pivot;                   <span class="comment">// proposed median</span>
 
269
 
 
270
  <span class="keywordflow">if</span> (<a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a> &lt;= 1)
 
271
    <span class="keywordflow">return</span> 0;
 
272
  <span class="keywordflow">if</span> (<a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a> == 2) {
 
273
    <span class="keywordflow">if</span> (compar (array, (<span class="keywordtype">char</span> *) array + size) &lt; 0) {
 
274
      <span class="keywordflow">return</span> index &gt;= 1 ? 1 : 0;
 
275
    }
 
276
    <span class="keywordflow">else</span> {
 
277
      <span class="keywordflow">return</span> index &gt;= 1 ? 0 : 1;
 
278
    }
 
279
  }
 
280
  <span class="keywordflow">if</span> (index &lt; 0)
 
281
    index = 0;                   <span class="comment">// ensure legal</span>
 
282
  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (index &gt;= <a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a>)
 
283
    index = <a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a> - 1;
 
284
  pivot = (<a class="code" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a>) (rand () % <a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a>);
 
285
  <a class="code" href="a00797.html#ab483724220813ab89951f7c264dcdd26">swap_entries</a> (array, size, pivot, 0);
 
286
  next_lesser = 0;
 
287
  prev_greater = <a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a>;
 
288
  equal_count = 1;
 
289
  <span class="keywordflow">for</span> (next_sample = 1; next_sample &lt; prev_greater;) {
 
290
    result =
 
291
      compar ((<span class="keywordtype">char</span> *) array + size * next_sample,
 
292
      (<span class="keywordtype">char</span> *) array + size * next_lesser);
 
293
    <span class="keywordflow">if</span> (result &lt; 0) {
 
294
      <a class="code" href="a00797.html#ab483724220813ab89951f7c264dcdd26">swap_entries</a> (array, size, next_lesser++, next_sample++);
 
295
      <span class="comment">// shuffle</span>
 
296
    }
 
297
    <span class="keywordflow">else</span> <span class="keywordflow">if</span> (result &gt; 0) {
 
298
      prev_greater--;
 
299
      <a class="code" href="a00797.html#ab483724220813ab89951f7c264dcdd26">swap_entries</a>(array, size, prev_greater, next_sample);
 
300
    }
 
301
    <span class="keywordflow">else</span> {
 
302
      equal_count++;
 
303
      next_sample++;
 
304
    }
 
305
  }
 
306
  <span class="keywordflow">if</span> (index &lt; next_lesser)
 
307
    <span class="keywordflow">return</span> <a class="code" href="a00797.html#ab531cf8bc727a6e03af3a6cc10b4cd7a">choose_nth_item</a> (index, array, next_lesser, size, compar);
 
308
  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (index &lt; prev_greater)
 
309
    <span class="keywordflow">return</span> next_lesser;          <span class="comment">// in equal bracket</span>
 
310
  <span class="keywordflow">else</span>
 
311
    <span class="keywordflow">return</span> <a class="code" href="a00797.html#ab531cf8bc727a6e03af3a6cc10b4cd7a">choose_nth_item</a> (index - prev_greater,
 
312
      (<span class="keywordtype">char</span> *) array + size * prev_greater,
 
313
      <a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a> - prev_greater, size,
 
314
      compar) + prev_greater;
 
315
}
 
316
</pre></div>
 
317
</div>
 
318
</div>
 
319
<a class="anchor" id="ab483724220813ab89951f7c264dcdd26"></a><!-- doxytag: member="statistc.h::swap_entries" ref="ab483724220813ab89951f7c264dcdd26" args="(void *array, size_t size, inT32 index1, inT32 index2)" -->
 
320
<div class="memitem">
 
321
<div class="memproto">
 
322
      <table class="memname">
 
323
        <tr>
 
324
          <td class="memname">void <a class="el" href="a00798.html#ab483724220813ab89951f7c264dcdd26">swap_entries</a> </td>
 
325
          <td>(</td>
 
326
          <td class="paramtype">void *&#160;</td>
 
327
          <td class="paramname"><em>array</em>, </td>
 
328
        </tr>
 
329
        <tr>
 
330
          <td class="paramkey"></td>
 
331
          <td></td>
 
332
          <td class="paramtype">size_t&#160;</td>
 
333
          <td class="paramname"><em>size</em>, </td>
 
334
        </tr>
 
335
        <tr>
 
336
          <td class="paramkey"></td>
 
337
          <td></td>
 
338
          <td class="paramtype"><a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a>&#160;</td>
 
339
          <td class="paramname"><em>index1</em>, </td>
 
340
        </tr>
 
341
        <tr>
 
342
          <td class="paramkey"></td>
 
343
          <td></td>
 
344
          <td class="paramtype"><a class="el" href="a00831.html#aba1f582fd0168f3ff9225d8c90fa9eb8">inT32</a>&#160;</td>
 
345
          <td class="paramname"><em>index2</em>&#160;</td>
 
346
        </tr>
 
347
        <tr>
 
348
          <td></td>
 
349
          <td>)</td>
 
350
          <td></td><td></td>
 
351
        </tr>
 
352
      </table>
 
353
</div>
 
354
<div class="memdoc">
 
355
 
 
356
<p>Definition at line <a class="el" href="a00797_source.html#l00768">768</a> of file <a class="el" href="a00797_source.html">statistc.cpp</a>.</p>
 
357
<div class="fragment"><pre class="fragment">                                {
 
358
  <span class="keywordtype">char</span> tmp;
 
359
  <span class="keywordtype">char</span> *ptr1;                    <span class="comment">// to entries</span>
 
360
  <span class="keywordtype">char</span> *ptr2;
 
361
  <span class="keywordtype">size_t</span> <a class="code" href="a01042.html#acd4ea858d7133e40518e0832ff9d94b2">count</a>;                  <span class="comment">// of bytes</span>
 
362
 
 
363
  ptr1 = <span class="keyword">reinterpret_cast&lt;</span><span class="keywordtype">char</span>*<span class="keyword">&gt;</span>(array) + index1 * size;
 
364
  ptr2 = <span class="keyword">reinterpret_cast&lt;</span><span class="keywordtype">char</span>*<span class="keyword">&gt;</span>(array) + index2 * size;
 
365
  <span class="keywordflow">for</span> (count = 0; count &lt; size; count++) {
 
366
    tmp = *ptr1;
 
367
    *ptr1++ = *ptr2;
 
368
    *ptr2++ = tmp;               <span class="comment">// tedious!</span>
 
369
  }
 
370
}
 
371
</pre></div>
 
372
</div>
 
373
</div>
 
374
</div><!-- contents -->
 
375
</div>
 
376
<!-- window showing the filter options -->
 
377
<div id="MSearchSelectWindow"
 
378
     onmouseover="return searchBox.OnSearchSelectShow()"
 
379
     onmouseout="return searchBox.OnSearchSelectHide()"
 
380
     onkeydown="return searchBox.OnSearchSelectKey(event)">
 
381
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>
 
382
 
 
383
<!-- iframe showing the search results (closed by default) -->
 
384
<div id="MSearchResultsWindow">
 
385
<iframe src="javascript:void(0)" frameborder="0" 
 
386
        name="MSearchResults" id="MSearchResults">
 
387
</iframe>
 
388
</div>
 
389
 
 
390
  <div id="nav-path" class="navpath">
 
391
    <ul>
 
392
      <li class="navelem"><a class="el" href="a00798.html">statistc.h</a>      </li>
 
393
 
 
394
    <li class="footer">Generated on Mon Feb 3 2014 10:59:11 for tesseract by
 
395
    <a href="http://www.doxygen.org/index.html">
 
396
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.6.1 </li>
 
397
   </ul>
 
398
 </div>
 
399
 
 
400
 
 
401
</body>
 
402
</html>