[ti-machine-learning/ti-machine-learning.git] / debian / ti-timl / usr / src / timl / doc / html / timlUtil_8h_source.html
diff --git a/debian/ti-timl/usr/src/timl/doc/html/timlUtil_8h_source.html b/debian/ti-timl/usr/src/timl/doc/html/timlUtil_8h_source.html
--- /dev/null
@@ -0,0 +1,573 @@
+<!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.6"/>
+<title>TIML: timlUtil.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="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">TIML
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
+ <li><a href="modules.html"><span>Modules</span></a></li>
+ <li><a href="annotated.html"><span>Data Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Pages</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_4f218e5c1c68a8760266841df915118e.html">src</a></li><li class="navelem"><a class="el" href="dir_e5def28db4ba0142cedf1af2d851f321.html">common</a></li><li class="navelem"><a class="el" href="dir_3548040f51d72c8ca49dee5213e206f2.html">util</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">timlUtil.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="timlUtil_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> <span class="preprocessor">#ifndef TIMLUTIL_H_</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="preprocessor"></span><span class="preprocessor">#define TIMLUTIL_H_</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="preprocessor"></span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> </div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">/******************************************************************************/</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">/* Copyright (C) 2015 Texas Instruments Incorporated - http://www.ti.com/</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * modification, are permitted provided that the following conditions</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * are met:</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment"> * notice, this list of conditions and the following disclaimer.</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="comment"> * Redistributions in binary form must reproduce the above copyright</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment"> * notice, this list of conditions and the following disclaimer in the</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="comment"> * documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="comment"> * Neither the name of Texas Instruments Incorporated nor the names of</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="comment"> * its contributors may be used to endorse or promote products derived</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="comment"> * from this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="comment"> * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment"> ******************************************************************************/</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment"> * INCLUDES</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="comment"> ******************************************************************************/</span></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="preprocessor">#include <stdlib.h></span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="preprocessor">#include <stdio.h></span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="preprocessor">#include <stdint.h></span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor">#include <stdbool.h></span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="preprocessor">#include <float.h></span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="preprocessor">#include <string.h></span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="preprocessor">#include <math.h></span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="preprocessor">#include <time.h></span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor">#include <dirent.h></span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="preprocessor">#include <omp.h></span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor">#include <unistd.h></span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="preprocessor">#include <libgen.h></span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="preprocessor">#include "jpeglib.h"</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor">#include "cblas.h"</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment"> * DEFINES</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="comment"> ******************************************************************************/</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="preprocessor">#define TIML_UTIL_MAX_STR 100</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="preprocessor"></span><span class="preprocessor">#define TIML_UTIL_PI 3.14159265358979323846</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="preprocessor"></span><span class="preprocessor">#define ERROR_UTIL_OFFSET 3000</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="preprocessor"></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">/*******************************************************************************</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="comment"> * ENUM DEFINITIONS</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="comment"> ******************************************************************************/</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  ERROR_UTIL_NULL_PTR = ERROR_UTIL_OFFSET,</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  ERROR_UTIL_MNIST_TRAINING_DATA_READING,</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  ERROR_UTIL_MNIST_TRAINING_DATA_ALLOCATION,</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  ERROR_UTIL_MNIST_TRAINING_LABEL_READING,</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  ERROR_UTIL_MNIST_TRAINING_LABEL_ALLOCATION,</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  ERROR_UTIL_MNIST_TESTING_DATA_READING,</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  ERROR_UTIL_MNIST_TESTING_DATA_ALLOCATION,</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  ERROR_UTIL_MNIST_TESTING_LABEL_READING,</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  ERROR_UTIL_MNIST_TESTING_LABEL_ALLOCATION,</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  ERROR_UTIL_CIFAR10_TRAINING_READING,</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  ERROR_UTIL_CIFAR10_TRAINING_ALLOCATION,</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  ERROR_UTIL_CIFAR10_TESTING_READING,</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  ERROR_UTIL_CIFAR10_TESTING_ALLOCATION,</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  ERROR_UTIL_CIFAR100_TRAINING_READING,</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  ERROR_UTIL_CIFAR100_TRAINING_ALLOCATION,</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  ERROR_UTIL_CIFAR100_TESTING_READING,</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  ERROR_UTIL_CIFAR100_TESTING_ALLOCATION,</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  ERROR_UTIL_READ_FLOAT_MATRIX,</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  ERROR_UTIL_READ_INT_MATRIX,</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  ERROR_UTIL_READ_FLOAT_VECTOR,</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  ERROR_UTIL_READ_INT_VECTOR,</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  ERROR_UTIL_WRITE_FLOAT_MATRIX,</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  ERROR_UTIL_WRITE_INT_MATRIX,</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  ERROR_UTIL_WRITE_FLOAT_VECTOR,</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  ERROR_UTIL_WRITE_INT_VECTOR,</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  ERROR_UTIL_MALLOC,</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  ERROR_UTIL_JPEG_READING</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> } timlUtilError;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  Util_Sigmoid,</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  Util_Softmax,</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  Util_Softplus,</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  Util_Relu,</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  Util_Nrelu,</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  Util_Tanh,</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  Util_Linear</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> } timlUtilActivationType;</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  Util_CrossEntropy, Util_MSE</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> } timlUtilCostFunctionType;</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="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  Util_Conv2D, Util_Corr2D</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> } timlUtilConvType;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
+<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="group__util.html#ga8e44b2a87636024736da04ae5a53c1c9"> 132</a></span> <span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="group__util.html#gga8e44b2a87636024736da04ae5a53c1c9a7a706ba3c48e3e4f1302c8fc5af3bb50"> 133</a></span>  <a class="code" href="group__util.html#gga8e44b2a87636024736da04ae5a53c1c9a7a706ba3c48e3e4f1302c8fc5af3bb50">Util_ParamsLevel1</a>, </div>
+<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="group__util.html#gga8e44b2a87636024736da04ae5a53c1c9a2cddbb23ea76ecaee590b53dab026432"> 134</a></span>  <a class="code" href="group__util.html#gga8e44b2a87636024736da04ae5a53c1c9a2cddbb23ea76ecaee590b53dab026432">Util_ParamsLevel2</a>, </div>
+<div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="group__util.html#gga8e44b2a87636024736da04ae5a53c1c9adfa1c162a9ac296e6e94e6a03b5ccef5"> 135</a></span>  <a class="code" href="group__util.html#gga8e44b2a87636024736da04ae5a53c1c9adfa1c162a9ac296e6e94e6a03b5ccef5">Util_ParamsLevel3</a> </div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> } <a class="code" href="group__util.html#ga8e44b2a87636024736da04ae5a53c1c9">timlUtilParamsLevel</a>;</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div>
+<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="group__util.html#ga62247c3acaa170e3a75f9887ec21106f"> 138</a></span> <span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="group__util.html#gga62247c3acaa170e3a75f9887ec21106fabaf43a2a2db7a39b88ca28b3fbdb9f8d"> 139</a></span>  <a class="code" href="group__util.html#gga62247c3acaa170e3a75f9887ec21106fabaf43a2a2db7a39b88ca28b3fbdb9f8d">Util_AllocatorLevel1</a>, </div>
+<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="group__util.html#gga62247c3acaa170e3a75f9887ec21106fa852397275a536af52c736403647721c3"> 140</a></span>  <a class="code" href="group__util.html#gga62247c3acaa170e3a75f9887ec21106fa852397275a536af52c736403647721c3">Util_AllocatorLevel2</a>, </div>
+<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="group__util.html#gga62247c3acaa170e3a75f9887ec21106faaa6f2cd7843572787572085b7bef172b"> 141</a></span>  <a class="code" href="group__util.html#gga62247c3acaa170e3a75f9887ec21106faaa6f2cd7843572787572085b7bef172b">Util_AllocatorLevel3</a> </div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> } <a class="code" href="group__util.html#ga62247c3acaa170e3a75f9887ec21106f">timlUtilAllocatorLevel</a>;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> </div>
+<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="group__util.html#ga898df2504b88d834c373082f2aa9f537"> 144</a></span> <span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="group__util.html#gga898df2504b88d834c373082f2aa9f537ae92f4e5d3672f4d40cb213ac3a2210b3"> 145</a></span>  <a class="code" href="group__util.html#gga898df2504b88d834c373082f2aa9f537ae92f4e5d3672f4d40cb213ac3a2210b3">Util_CenterCrop</a>, </div>
+<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="group__util.html#gga898df2504b88d834c373082f2aa9f537ac82205e1f2c21d90dbcccd0e8a7d0dc8"> 146</a></span>  <a class="code" href="group__util.html#gga898df2504b88d834c373082f2aa9f537ac82205e1f2c21d90dbcccd0e8a7d0dc8">Util_RandomCrop</a> </div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> } <a class="code" href="group__util.html#ga898df2504b88d834c373082f2aa9f537">timlUtilCropType</a>;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div>
+<div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="group__util.html#ga5405b012e02035f4d864e0e38d516764"> 149</a></span> <span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="group__util.html#gga5405b012e02035f4d864e0e38d516764abfa2a07e6c5c6e74add533dfc9b548dd"> 150</a></span>  <a class="code" href="group__util.html#gga5405b012e02035f4d864e0e38d516764abfa2a07e6c5c6e74add533dfc9b548dd">Util_Mirror</a>, </div>
+<div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="group__util.html#gga5405b012e02035f4d864e0e38d516764aa4b22e60f0d512a27496c274c01adab6"> 151</a></span>  <a class="code" href="group__util.html#gga5405b012e02035f4d864e0e38d516764aa4b22e60f0d512a27496c274c01adab6">Util_NoMirror</a>, </div>
+<div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="group__util.html#gga5405b012e02035f4d864e0e38d516764a8ece193f7f7681a69b4b286983583cfc"> 152</a></span>  <a class="code" href="group__util.html#gga5405b012e02035f4d864e0e38d516764a8ece193f7f7681a69b4b286983583cfc">Util_RandomMirror</a> </div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> } <a class="code" href="group__util.html#ga5405b012e02035f4d864e0e38d516764">timlUtilMirrorType</a>;</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> </div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  Util_Constant, Util_Gaussian, Util_Uniform, Util_Xavier</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> } timlUtilInitializerType;</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  Util_Train, Util_Test, Util_Debug</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> } timlUtilPhase;</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> </div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> </div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="comment"> * STRUCTURE DEFINITIONS</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="comment"> ******************************************************************************/</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> </div>
+<div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="structtimlUtilImage.html"> 170</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <span class="keywordtype">float</span> *data;</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <span class="keywordtype">int</span> row;</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  <span class="keywordtype">int</span> col;</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  <span class="keywordtype">int</span> channel;</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> } <a class="code" href="structtimlUtilImage.html">timlUtilImage</a>;</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> </div>
+<div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="structtimlUtilInitializer.html"> 177</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  timlUtilInitializerType type;</div>
+<div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="structtimlUtilInitializer.html#aa9fc114a6fbec1070ecf87c3e147dd67"> 179</a></span>  <span class="keywordtype">float</span> <a class="code" href="structtimlUtilInitializer.html#aa9fc114a6fbec1070ecf87c3e147dd67">val</a>; </div>
+<div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="structtimlUtilInitializer.html#a2771e09d4ead50b451ed38e6cba99150"> 180</a></span>  <span class="keywordtype">float</span> <a class="code" href="structtimlUtilInitializer.html#a2771e09d4ead50b451ed38e6cba99150">min</a>; </div>
+<div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="structtimlUtilInitializer.html#adeb987a00803c1c7218954618f1f56cc"> 181</a></span>  <span class="keywordtype">float</span> <a class="code" href="structtimlUtilInitializer.html#adeb987a00803c1c7218954618f1f56cc">max</a>; </div>
+<div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="structtimlUtilInitializer.html#a9c842edeeceb0c66a29f08d1fadebce8"> 182</a></span>  <span class="keywordtype">float</span> <a class="code" href="structtimlUtilInitializer.html#a9c842edeeceb0c66a29f08d1fadebce8">mean</a>; </div>
+<div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="structtimlUtilInitializer.html#a37e42634a42df16a5f460b266bce968a"> 183</a></span>  <span class="keywordtype">float</span> <a class="code" href="structtimlUtilInitializer.html#a37e42634a42df16a5f460b266bce968a">std</a>; </div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> } <a class="code" href="structtimlUtilInitializer.html">timlUtilInitializer</a>;</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> </div>
+<div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="structtimlUtilImageSet.html"> 186</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <span class="keywordtype">float</span> *data;</div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <span class="keywordtype">int</span> *label;</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  <span class="keywordtype">int</span> row;</div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  <span class="keywordtype">int</span> col;</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  <span class="keywordtype">int</span> channel;</div>
+<div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="structtimlUtilImageSet.html#ade6b3b453d8ae460ff3f83cb3fb2abec"> 192</a></span>  <span class="keywordtype">int</span> <a class="code" href="structtimlUtilImageSet.html#ade6b3b453d8ae460ff3f83cb3fb2abec">num</a>; </div>
+<div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="structtimlUtilImageSet.html#afb9385a310c68071907dea070fcf37e2"> 193</a></span>  <span class="keywordtype">float</span> *<a class="code" href="structtimlUtilImageSet.html#afb9385a310c68071907dea070fcf37e2">mean</a>; </div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> } <a class="code" href="structtimlUtilImageSet.html">timlUtilImageSet</a>;</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> </div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="comment"> * DATABASE READ FUNCTIONS</span></div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="comment"> ******************************************************************************/</span></div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> </div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga218c4e1b952545e65e70b46fc087c0fa">timlUtilReadMNIST</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *path, <a class="code" href="structtimlUtilImageSet.html">timlUtilImageSet</a> *training, <a class="code" href="structtimlUtilImageSet.html">timlUtilImageSet</a> *testing);</div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga518889e2bee0ffe2a0bab1a2a509afeb">timlUtilReadCIFAR10</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *path, <a class="code" href="structtimlUtilImageSet.html">timlUtilImageSet</a> *training, <a class="code" href="structtimlUtilImageSet.html">timlUtilImageSet</a> *testing);</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> </div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="comment"> * TIMING FUNCTIONS</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="comment"> ******************************************************************************/</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="keywordtype">long</span> <a class="code" href="group__util.html#gad332b3fc9cca905cb073bb950c27d9a3">timlUtilDiffTime</a>(<span class="keyword">struct</span> timespec start, <span class="keyword">struct</span> timespec end);</div>
+<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> </div>
+<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> </div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="comment"> * RANDOM FUNCTIONS</span></div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="comment"> ******************************************************************************/</span></div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> </div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga7b7056163efcce74e844159113ad7670">timlUtilRandDiscreteUniformRNG</a>(<span class="keywordtype">int</span> a, <span class="keywordtype">int</span> b);</div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> </div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga33ca8bcccfd95381c34a7822dd3d5e03">timlUtilRandContinuousUniformRNG</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">int</span> dim, <span class="keywordtype">float</span> a, <span class="keywordtype">float</span> b);</div>
+<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> </div>
+<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#gab0d103f2a7348ee3f7be2468cb06a374">timlUtilRandNormalRNG</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">int</span> dim, <span class="keywordtype">float</span> mean, <span class="keywordtype">float</span> std);</div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> </div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga33f6226602545ae82fb9eb9dc4e2d0f4">timlUtilRandPerm</a>(<span class="keywordtype">int</span> *array, <span class="keywordtype">int</span> n);</div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> </div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> </div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="comment"> * IO FUNCTIONS</span></div>
+<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="comment"> ******************************************************************************/</span></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> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga032c2a840544aee29ac1b36494bdfc6b">timlUtilFread</a>(<span class="keywordtype">void</span>* ptr, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> nmemb, FILE *fp);</div>
+<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> </div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#gad27678810eff89cf1f813631d762b298">timlUtilFwrite</a>(<span class="keyword">const</span> <span class="keywordtype">void</span> *ptr, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> nmemb, FILE *fp);</div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> </div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> </div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="comment"> * CONV FUNCTIONS</span></div>
+<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="comment"> ******************************************************************************/</span></div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> </div>
+<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#gafdc65cff28dd8132ee12d7e4fff6b344">timlUtilConv2Valid</a>(<span class="keywordtype">float</span> *a, <span class="keywordtype">float</span> *b, <span class="keywordtype">float</span> *c, <span class="keywordtype">int</span> aRow, <span class="keywordtype">int</span> aCol, <span class="keywordtype">int</span> bRow, <span class="keywordtype">int</span> bCol);</div>
+<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> </div>
+<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga825fca95dc612cb50cca8d3b42fce451">timlUtilConv2Full</a>(<span class="keywordtype">float</span> *a, <span class="keywordtype">float</span> *b, <span class="keywordtype">float</span> *c, <span class="keywordtype">int</span> aRow, <span class="keywordtype">int</span> aCol, <span class="keywordtype">int</span> bRow, <span class="keywordtype">int</span> bCol);</div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> </div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga76c854493ff6e686e70caf0e0f330694">timlUtilCorr2Full</a>(<span class="keywordtype">float</span> *a, <span class="keywordtype">float</span> *b, <span class="keywordtype">float</span> *c, <span class="keywordtype">int</span> aRow, <span class="keywordtype">int</span> aCol, <span class="keywordtype">int</span> bRow, <span class="keywordtype">int</span> bCol);</div>
+<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> </div>
+<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga823c056e72e3c9738ba07232a759dd93">timlUtilConv2ImageReshapeBack</a>(<span class="keywordtype">float</span>* x, <span class="keywordtype">float</span>* xReshape, <span class="keywordtype">int</span> *index, <span class="keywordtype">int</span> prevChannel, <span class="keywordtype">int</span> xDim, <span class="keywordtype">int</span> indexDim, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> </div>
+<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga5bed0ba528735cfa363c12de22b30fae">timlUtilConv2ImageReshapeIndex</a>(<span class="keywordtype">int</span> *index, <span class="keywordtype">int</span> aRow, <span class="keywordtype">int</span> aCol, <span class="keywordtype">int</span> bRow, <span class="keywordtype">int</span> bCol, <span class="keywordtype">int</span> padUp, <span class="keywordtype">int</span> padDown, <span class="keywordtype">int</span> padLeft, <span class="keywordtype">int</span> padRight, <span class="keywordtype">int</span> strideX, <span class="keywordtype">int</span> strideY, timlUtilConvType type);</div>
+<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> </div>
+<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga1a6a5d975df7c8d4ef7ca184cbb98293">timlUtilConv2ImageReshape</a>(<span class="keywordtype">float</span>* xReshape, <span class="keywordtype">float</span>* x, <span class="keywordtype">int</span> *index, <span class="keywordtype">int</span> prevChannel, <span class="keywordtype">int</span> xDim, <span class="keywordtype">int</span> indexDim, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> </div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> </div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="comment"> * IMAGE READ FUNCTIONS</span></div>
+<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="comment"> ******************************************************************************/</span></div>
+<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> </div>
+<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <a class="code" href="structtimlUtilImage.html">timlUtilImage</a> <a class="code" href="group__util.html#ga6e186bf4e96a71fd1bc88aa79a7fd7f9">timlUtilReadJPEG</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name);</div>
+<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> </div>
+<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga4e3a2beb9a301e6c71f5c1df09d6099e">timlUtilReadFixedSizeJPEG</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keywordtype">float</span> *data, <span class="keywordtype">int</span> row, <span class="keywordtype">int</span> col, <span class="keywordtype">int</span> channel);</div>
+<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> </div>
+<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="keywordtype">char</span>** <a class="code" href="group__util.html#ga3cb2f6d77b727af3d819f75c6918c327">timlUtilScanJPEG</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *dirName, <span class="keywordtype">int</span> *imageNum);</div>
+<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> </div>
+<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> </div>
+<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="comment"> * BLAS FUNCTIONS</span></div>
+<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <span class="comment"> ******************************************************************************/</span></div>
+<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> </div>
+<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#ga365f20b5c810059087f2d24964ec7fdd">timlUtilBLASdgemm</a>(<span class="keyword">const</span> <span class="keyword">enum</span> CBLAS_TRANSPOSE TransA, <span class="keyword">const</span> <span class="keyword">enum</span> CBLAS_TRANSPOSE TransB, <span class="keyword">const</span> <span class="keywordtype">int</span> M, <span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">int</span> K, <span class="keyword">const</span> <span class="keywordtype">double</span> alpha, <span class="keyword">const</span> <span class="keywordtype">double</span>* A, <span class="keyword">const</span> <span class="keywordtype">double</span>* B, <span class="keyword">const</span> <span class="keywordtype">double</span> beta, <span class="keywordtype">double</span>* C, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> </div>
+<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#ga3cd3b5eb20373a30eb06e1db3f27e105">timlUtilBLASsgemm</a>(<span class="keyword">const</span> <span class="keyword">enum</span> CBLAS_TRANSPOSE TransA, <span class="keyword">const</span> <span class="keyword">enum</span> CBLAS_TRANSPOSE TransB, <span class="keyword">const</span> <span class="keywordtype">int</span> M, <span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">int</span> K, <span class="keyword">const</span> <span class="keywordtype">float</span> alpha, <span class="keyword">const</span> <span class="keywordtype">float</span>* A, <span class="keyword">const</span> <span class="keywordtype">float</span>* B, <span class="keyword">const</span> <span class="keywordtype">float</span> beta, <span class="keywordtype">float</span>* C, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> </div>
+<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#ga7f200e1630837f410457f12228a3f8e3">timlUtilBLASdgemv</a>(<span class="keyword">const</span> <span class="keyword">enum</span> CBLAS_TRANSPOSE TransA, <span class="keyword">const</span> <span class="keywordtype">int</span> M, <span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">double</span> alpha, <span class="keyword">const</span> <span class="keywordtype">double</span>* A, <span class="keyword">const</span> <span class="keywordtype">double</span>* x, <span class="keyword">const</span> <span class="keywordtype">double</span> beta, <span class="keywordtype">double</span>* y, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> </div>
+<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#ga916c002835a135384e25aa4eabe8fece">timlUtilBLASsgemv</a>(<span class="keyword">const</span> <span class="keyword">enum</span> CBLAS_TRANSPOSE TransA, <span class="keyword">const</span> <span class="keywordtype">int</span> M, <span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">float</span> alpha, <span class="keyword">const</span> <span class="keywordtype">float</span>* A, <span class="keyword">const</span> <span class="keywordtype">float</span>* x, <span class="keyword">const</span> <span class="keywordtype">float</span> beta, <span class="keywordtype">float</span>* y, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> </div>
+<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#gace6d95139cce2b66d468b65916d92103">timlUtilBLASsaxpy</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">float</span> alpha, <span class="keyword">const</span> <span class="keywordtype">float</span>* X, <span class="keywordtype">float</span>* Y, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> </div>
+<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#ga67a8b8821e100476544c39ebe3f7d88a">timlUtilBLASdaxpy</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">double</span> alpha, <span class="keyword">const</span> <span class="keywordtype">double</span>* X, <span class="keywordtype">double</span>* Y, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> </div>
+<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#gae2c99812143fb0697fad81b04c62545d">timlUtilBLASscopy</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">float</span>* X, <span class="keywordtype">float</span>* Y, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> </div>
+<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#ga242d2f4bb422b71fa05aec4b8568bdc4">timlUtilBLASdcopy</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">double</span>* X, <span class="keywordtype">double</span>* Y, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> </div>
+<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#gacdd02957d16d4ba4951f35c0e7fc5b30">timlUtilBLASsger</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> M, <span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">float</span> alpha, <span class="keywordtype">float</span> *x, <span class="keywordtype">float</span> *y, <span class="keywordtype">float</span> *A, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> </div>
+<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#ga22f1d9ebb3a5745c3583860b42c8590a">timlUtilBLASdger</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> M, <span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">double</span> alpha, <span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> *y, <span class="keywordtype">double</span> *A, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> </div>
+<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#ga336682df712eb1342b16a00731b55e2c">timlUtilBLASdscal</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">double</span> alpha, <span class="keywordtype">double</span> *X, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> </div>
+<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#ga7f2ccf0e4a749d484cd40b64d14a0bdb">timlUtilBLASsscal</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">float</span> alpha, <span class="keywordtype">float</span> *X, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div>
+<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> </div>
+<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="comment"> * BLAS AUX FUNCTIONS</span></div>
+<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="comment"> ******************************************************************************/</span></div>
+<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> </div>
+<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga4c8737cc28dfcafb340a06869cb06c6d">timlUtilVectorResetFloat</a>(<span class="keywordtype">float</span> *a, <span class="keywordtype">int</span> m, <span class="keywordtype">float</span> val, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> </div>
+<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga105ed091f1ed14bc4542117639799727">timlUtilVectorResetInt</a>(<span class="keywordtype">int</span> *a, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> val, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> </div>
+<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="keywordtype">float</span> <a class="code" href="group__util.html#ga50c739176cce0504f24f414d1abe03de">timlUtilVectorSumFloat</a>(<span class="keywordtype">float</span> *a, <span class="keywordtype">int</span> m);</div>
+<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> </div>
+<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#gadbfd41f459cef267ff705fbed1a684de">timlUtilVectorSortFloat</a>(<span class="keywordtype">float</span> *a, <span class="keywordtype">int</span> n);</div>
+<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> </div>
+<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga7adedb39838d1a724329c2f05e70d2bc">timlUtilVectorSortIndexFloat</a>(<span class="keywordtype">float</span> *a, <span class="keywordtype">int</span> *index, <span class="keywordtype">int</span> n);</div>
+<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> </div>
+<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="keywordtype">float</span> <a class="code" href="group__util.html#ga80375ed4d8c895a5373c0ea5bea7c90c">timlUtilVectorMaxFloat</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> inc);</div>
+<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> </div>
+<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga2e09d42235ce01dc8d951cac92ccce28">timlUtilVectorMaxIndexFloat</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> inc);</div>
+<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> </div>
+<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga4cbc9e168ae6fe4be792e5700078fbfd">timlUtilElementWiseMultiply</a>(<span class="keywordtype">float</span> *a, <span class="keyword">const</span> <span class="keywordtype">float</span> *b, <span class="keyword">const</span> <span class="keywordtype">float</span> *c, <span class="keywordtype">int</span> dim, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> </div>
+<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga158d5bed50c9d1aa04f3437ba4e4746c">timlUtilSubtract</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">float</span> y, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> </div>
+<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> </div>
+<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="comment"> * CNN AUX FUNCTIONS</span></div>
+<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="comment"> ******************************************************************************/</span></div>
+<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> </div>
+<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga0e3ab1684d55ae10ec96b1b7a58c2d0f">timlUtilSigmoid</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">float</span> *y, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> </div>
+<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#gac4ce5d2a827d4d0bddb092604dc22555">timlUtilSigmoidDerivative</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">float</span> *y, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> </div>
+<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#gaf61206d55b45c89e3382ed9684ef2c79">timlUtilRelu</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">float</span> *y, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> </div>
+<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#gadcb6e562a1ddebb9589dc326c6e85db3">timlUtilReluDerivative</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">float</span> *y, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> </div>
+<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="comment">//int timlUtilSoftmaxDerivative(float *x, float *y, int n);</span></div>
+<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> </div>
+<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga680fe5b84f1ce4712c74fc9c01b5dc82">timlUtilTanhDerivative</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">float</span> *y, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> </div>
+<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="keywordtype">float</span> <a class="code" href="group__util.html#gac8848759ff2638e9b54beef8f82748ae">timlUtilMultinomialCrossEntropy</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">int</span> label, <span class="keywordtype">int</span> n);</div>
+<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> </div>
+<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="keywordtype">float</span> <a class="code" href="group__util.html#ga8e17bdb2dd7b9e8f25d1a93c8d470a97">timlUtilMeanSqaureError</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">int</span> label, <span class="keywordtype">int</span> n);</div>
+<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> </div>
+<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga223537dde56b8c21a9455ff8a635f71f">timlUtilSoftmax</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">float</span> *y, <span class="keywordtype">int</span> row, <span class="keywordtype">int</span> col, <span class="keywordtype">int</span> channel, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> </div>
+<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga64e5197e9d131870e97cd510b3f499ac">timlUtilClassifyAccuracy</a>(<span class="keywordtype">int</span> *label, <span class="keywordtype">int</span> topN, <span class="keywordtype">int</span> num, <span class="keywordtype">int</span> *trueLabel);</div>
+<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> </div>
+<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#ga6bc3609f73f6674134821cc002d7081f">timlUtilTransform</a>(<span class="keywordtype">float</span> *dataOut, <span class="keywordtype">float</span> *dataIn, <span class="keywordtype">float</span> *dataHost, <span class="keywordtype">int</span> channel, <span class="keywordtype">int</span> row, <span class="keywordtype">int</span> col, <span class="keywordtype">int</span> rowOffset, <span class="keywordtype">int</span> colOffset, <span class="keywordtype">int</span> rowIn, <span class="keywordtype">int</span> colIn, <span class="keywordtype">float</span> scale, <span class="keywordtype">float</span> *mean, <a class="code" href="group__util.html#ga5405b012e02035f4d864e0e38d516764">timlUtilMirrorType</a> mirrorType, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> </div>
+<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#gac9523e1013f8e3853568eb2e67b54a58">timlUtilMaxPooling</a>(<span class="keywordtype">float</span> *outputMap, <span class="keywordtype">int</span> *maxIndex, <span class="keywordtype">float</span> *inputMap, <span class="keywordtype">int</span> row, <span class="keywordtype">int</span> col, <span class="keywordtype">int</span> channel, <span class="keywordtype">int</span> prevRow, <span class="keywordtype">int</span> prevCol, <span class="keywordtype">int</span> scaleRow, <span class="keywordtype">int</span> scaleCol, <span class="keywordtype">int</span> padUp, <span class="keywordtype">int</span> padLeft, <span class="keywordtype">int</span> strideX, <span class="keywordtype">int</span> strideY, timlUtilPhase phase, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> </div>
+<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#gae073107f6b111717bac95417ff80c85c">timlUtilUndoMaxPooling</a>(<span class="keywordtype">float</span> *prevDelta, <span class="keywordtype">int</span> * maxIndex, <span class="keywordtype">float</span> *delta, <span class="keywordtype">int</span> dim, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> </div>
+<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga8d4338ebfb64ecb3ec88094aebd65e40">timlUtilMeanPooling</a>(<span class="keywordtype">float</span> *outputMap, <span class="keywordtype">float</span> *inputMap, <span class="keywordtype">int</span> row, <span class="keywordtype">int</span> col, <span class="keywordtype">int</span> channel, <span class="keywordtype">int</span> prevRow, <span class="keywordtype">int</span> prevCol, <span class="keywordtype">int</span> scaleRow, <span class="keywordtype">int</span> scaleCol, <span class="keywordtype">int</span> padUp, <span class="keywordtype">int</span> padLeft, <span class="keywordtype">int</span> strideX, <span class="keywordtype">int</span> strideY, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> </div>
+<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga47ba59c5e11f31931e3fae5717b93450">timlUtilUndoMeanPooling</a>(<span class="keywordtype">float</span> *prevDelta, <span class="keywordtype">float</span> *delta, <span class="keywordtype">int</span> row, <span class="keywordtype">int</span> col, <span class="keywordtype">int</span> channel, <span class="keywordtype">int</span> prevRow, <span class="keywordtype">int</span> prevCol, <span class="keywordtype">int</span> scaleRow, <span class="keywordtype">int</span> scaleCol, <span class="keywordtype">int</span> padUp, <span class="keywordtype">int</span> padLeft, <span class="keywordtype">int</span> strideX, <span class="keywordtype">int</span> strideY, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> </div>
+<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga1d68b304f7ad43899cf5a2762a0a49fc">timlUtilLocalContrastNormalize</a>(<span class="keywordtype">float</span> *inputMap, <span class="keywordtype">float</span> *outputMap, <span class="keywordtype">float</span> *denom, <span class="keywordtype">int</span> row, <span class="keywordtype">int</span> col, <span class="keywordtype">int</span> channel, <span class="keywordtype">int</span> N, <span class="keywordtype">float</span> alpha, <span class="keywordtype">float</span> beta, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> </div>
+<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga684bafa4cb678d451ec1aa5127007470">timlUtilLocalContrastUnnormalize</a>(<span class="keywordtype">float</span> *prevDelta, <span class="keywordtype">float</span> *prevFeatureMap, <span class="keywordtype">float</span> *delta, <span class="keywordtype">float</span> *featureMap, <span class="keywordtype">float</span> *denom, <span class="keywordtype">int</span> row, <span class="keywordtype">int</span> col, <span class="keywordtype">int</span> channel, <span class="keywordtype">int</span> N, <span class="keywordtype">float</span> alpha, <span class="keywordtype">float</span> beta, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> </div>
+<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga4b2ab842a2212e924deb9f60bf1b703e">timlUtilMasking</a>(<span class="keywordtype">float</span> *inputMap, <span class="keywordtype">float</span> *outputMap, <span class="keywordtype">int</span> *mask, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> *randomVector, <span class="keywordtype">int</span> dim, <span class="keywordtype">float</span> prob, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> </div>
+<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga7e53789a132ed94665d66a10dd9ff76c">timlUtilUnmasking</a>(<span class="keywordtype">float</span> *inputDelta, <span class="keywordtype">float</span> *outputDelta, <span class="keywordtype">int</span> *mask, <span class="keywordtype">int</span> dim, <span class="keywordtype">float</span> prob, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> </div>
+<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga26bb1805bd3475719324718c12cd5a0f">timlUtilTanh</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">float</span> *y, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> deviceId, <span class="keywordtype">int</span> threadId);</div>
+<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> </div>
+<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> </div>
+<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="comment">/*******************************************************************************</span></div>
+<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="comment"> * MISC FUNCTIONS</span></div>
+<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="comment"> *</span></div>
+<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="comment"> ******************************************************************************/</span></div>
+<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> </div>
+<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga432784c912b542452d7236cf72d184fe">timlUtilMalloc</a>(<span class="keywordtype">void</span>** devPtr, <span class="keywordtype">size_t</span> size);</div>
+<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> </div>
+<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="keywordtype">void</span> <a class="code" href="group__util.html#ga234f6573583aca626c49e10b1f5b57d2">timlUtilFree</a>(<span class="keywordtype">void</span>* ptr);</div>
+<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> </div>
+<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> uint32_t <a class="code" href="group__util.html#ga16f8b9181ff6ce6d4b1f655a5eb4738e">timlUtilReverseEndian32</a>(<span class="keyword">register</span> uint32_t i);</div>
+<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> </div>
+<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="keywordtype">int</span> <a class="code" href="group__util.html#ga71557afaf0c3d8359920380558dd92fb">timlUtilElementWiseFunction</a>(<span class="keywordtype">float</span> *x, <span class="keywordtype">float</span> *y, <span class="keywordtype">int</span> n, <span class="keywordtype">float</span> (*fun)(<span class="keywordtype">float</span>));</div>
+<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> </div>
+<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="preprocessor">#endif </span><span class="comment">/* TIMLUTIL_H_ */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="group__util_html_ga3cb2f6d77b727af3d819f75c6918c327"><div class="ttname"><a href="group__util.html#ga3cb2f6d77b727af3d819f75c6918c327">timlUtilScanJPEG</a></div><div class="ttdeci">char ** timlUtilScanJPEG(const char *dirName, int *imageNum)</div><div class="ttdoc">Return an array of jpg image names in the directory. </div><div class="ttdef"><b>Definition:</b> timlUtilScanJPEG.c:57</div></div>
+<div class="ttc" id="structtimlUtilImageSet_html"><div class="ttname"><a href="structtimlUtilImageSet.html">timlUtilImageSet</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:186</div></div>
+<div class="ttc" id="group__util_html_ga8d4338ebfb64ecb3ec88094aebd65e40"><div class="ttname"><a href="group__util.html#ga8d4338ebfb64ecb3ec88094aebd65e40">timlUtilMeanPooling</a></div><div class="ttdeci">int timlUtilMeanPooling(float *outputMap, float *inputMap, int row, int col, int channel, int prevRow, int prevCol, int scaleRow, int scaleCol, int padUp, int padLeft, int strideX, int strideY, int deviceId, int threadId)</div><div class="ttdoc">Mean pooling. </div><div class="ttdef"><b>Definition:</b> timlUtilMeanPooling.c:73</div></div>
+<div class="ttc" id="group__util_html_ga684bafa4cb678d451ec1aa5127007470"><div class="ttname"><a href="group__util.html#ga684bafa4cb678d451ec1aa5127007470">timlUtilLocalContrastUnnormalize</a></div><div class="ttdeci">int timlUtilLocalContrastUnnormalize(float *prevDelta, float *prevFeatureMap, float *delta, float *featureMap, float *denom, int row, int col, int channel, int N, float alpha, float beta, int deviceId, int threadId)</div><div class="ttdoc">Local contrast unnormalization. </div><div class="ttdef"><b>Definition:</b> timlUtilLocalContrastUnnormalize.c:71</div></div>
+<div class="ttc" id="group__util_html_gace6d95139cce2b66d468b65916d92103"><div class="ttname"><a href="group__util.html#gace6d95139cce2b66d468b65916d92103">timlUtilBLASsaxpy</a></div><div class="ttdeci">void timlUtilBLASsaxpy(const int N, const float alpha, const float *X, float *Y, int deviceId, int threadId)</div><div class="ttdoc">Float vector addition Y = alpha * X + Y. </div><div class="ttdef"><b>Definition:</b> timlUtilBLAS.c:130</div></div>
+<div class="ttc" id="group__util_html_ga4cbc9e168ae6fe4be792e5700078fbfd"><div class="ttname"><a href="group__util.html#ga4cbc9e168ae6fe4be792e5700078fbfd">timlUtilElementWiseMultiply</a></div><div class="ttdeci">int timlUtilElementWiseMultiply(float *a, const float *b, const float *c, int dim, int deviceId, int threadId)</div><div class="ttdoc">Element wise multiply c = a.*b. </div><div class="ttdef"><b>Definition:</b> timlUtilElementWiseMultiply.c:64</div></div>
+<div class="ttc" id="group__util_html_ga4e3a2beb9a301e6c71f5c1df09d6099e"><div class="ttname"><a href="group__util.html#ga4e3a2beb9a301e6c71f5c1df09d6099e">timlUtilReadFixedSizeJPEG</a></div><div class="ttdeci">int timlUtilReadFixedSizeJPEG(const char *name, float *data, int row, int col, int channel)</div><div class="ttdoc">Read a jpg image with known size information to avoid frequent allocation and deallocation of data...</div><div class="ttdef"><b>Definition:</b> timlUtilReadFixedSizeJPEG.c:60</div></div>
+<div class="ttc" id="group__util_html_gga5405b012e02035f4d864e0e38d516764aa4b22e60f0d512a27496c274c01adab6"><div class="ttname"><a href="group__util.html#gga5405b012e02035f4d864e0e38d516764aa4b22e60f0d512a27496c274c01adab6">Util_NoMirror</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:151</div></div>
+<div class="ttc" id="group__util_html_gad27678810eff89cf1f813631d762b298"><div class="ttname"><a href="group__util.html#gad27678810eff89cf1f813631d762b298">timlUtilFwrite</a></div><div class="ttdeci">int timlUtilFwrite(const void *ptr, size_t size, size_t nmemb, FILE *fp)</div><div class="ttdoc">Write to a binar file. </div><div class="ttdef"><b>Definition:</b> timlUtilFwrite.c:62</div></div>
+<div class="ttc" id="group__util_html_gga5405b012e02035f4d864e0e38d516764a8ece193f7f7681a69b4b286983583cfc"><div class="ttname"><a href="group__util.html#gga5405b012e02035f4d864e0e38d516764a8ece193f7f7681a69b4b286983583cfc">Util_RandomMirror</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:152</div></div>
+<div class="ttc" id="group__util_html_gae2c99812143fb0697fad81b04c62545d"><div class="ttname"><a href="group__util.html#gae2c99812143fb0697fad81b04c62545d">timlUtilBLASscopy</a></div><div class="ttdeci">void timlUtilBLASscopy(const int N, const float *X, float *Y, int deviceId, int threadId)</div><div class="ttdoc">Float vector copy Y = X. </div><div class="ttdef"><b>Definition:</b> timlUtilBLAS.c:160</div></div>
+<div class="ttc" id="group__util_html_ga234f6573583aca626c49e10b1f5b57d2"><div class="ttname"><a href="group__util.html#ga234f6573583aca626c49e10b1f5b57d2">timlUtilFree</a></div><div class="ttdeci">void timlUtilFree(void *ptr)</div><div class="ttdoc">Free pointer. </div><div class="ttdef"><b>Definition:</b> timlUtilFree.c:60</div></div>
+<div class="ttc" id="group__util_html_ga8e44b2a87636024736da04ae5a53c1c9"><div class="ttname"><a href="group__util.html#ga8e44b2a87636024736da04ae5a53c1c9">timlUtilParamsLevel</a></div><div class="ttdeci">timlUtilParamsLevel</div><div class="ttdef"><b>Definition:</b> timlUtil.h:132</div></div>
+<div class="ttc" id="group__util_html_ga1d68b304f7ad43899cf5a2762a0a49fc"><div class="ttname"><a href="group__util.html#ga1d68b304f7ad43899cf5a2762a0a49fc">timlUtilLocalContrastNormalize</a></div><div class="ttdeci">int timlUtilLocalContrastNormalize(float *inputMap, float *outputMap, float *denom, int row, int col, int channel, int N, float alpha, float beta, int deviceId, int threadId)</div><div class="ttdoc">Local contrast normalization. </div><div class="ttdef"><b>Definition:</b> timlUtilLocalContrastNormalize.c:69</div></div>
+<div class="ttc" id="group__util_html_ga105ed091f1ed14bc4542117639799727"><div class="ttname"><a href="group__util.html#ga105ed091f1ed14bc4542117639799727">timlUtilVectorResetInt</a></div><div class="ttdeci">int timlUtilVectorResetInt(int *a, int m, int val, int deviceId, int threadId)</div><div class="ttdoc">Reset an int vector. </div><div class="ttdef"><b>Definition:</b> timlUtilVectorResetInt.c:63</div></div>
+<div class="ttc" id="group__util_html_ga218c4e1b952545e65e70b46fc087c0fa"><div class="ttname"><a href="group__util.html#ga218c4e1b952545e65e70b46fc087c0fa">timlUtilReadMNIST</a></div><div class="ttdeci">int timlUtilReadMNIST(const char *path, timlUtilImageSet *training, timlUtilImageSet *testing)</div><div class="ttdoc">Read MNIST database from binary files. </div><div class="ttdef"><b>Definition:</b> timlUtilReadMNIST.c:69</div></div>
+<div class="ttc" id="group__util_html_gga898df2504b88d834c373082f2aa9f537ac82205e1f2c21d90dbcccd0e8a7d0dc8"><div class="ttname"><a href="group__util.html#gga898df2504b88d834c373082f2aa9f537ac82205e1f2c21d90dbcccd0e8a7d0dc8">Util_RandomCrop</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:146</div></div>
+<div class="ttc" id="group__util_html_ga6e186bf4e96a71fd1bc88aa79a7fd7f9"><div class="ttname"><a href="group__util.html#ga6e186bf4e96a71fd1bc88aa79a7fd7f9">timlUtilReadJPEG</a></div><div class="ttdeci">timlUtilImage timlUtilReadJPEG(const char *name)</div><div class="ttdoc">read a jpg image </div><div class="ttdef"><b>Definition:</b> timlUtilReadJPEG.c:54</div></div>
+<div class="ttc" id="group__util_html_ga33f6226602545ae82fb9eb9dc4e2d0f4"><div class="ttname"><a href="group__util.html#ga33f6226602545ae82fb9eb9dc4e2d0f4">timlUtilRandPerm</a></div><div class="ttdeci">int timlUtilRandPerm(int *array, int n)</div><div class="ttdoc">Random permute an array. </div><div class="ttdef"><b>Definition:</b> timlUtilRandPerm.c:57</div></div>
+<div class="ttc" id="group__util_html_ga26bb1805bd3475719324718c12cd5a0f"><div class="ttname"><a href="group__util.html#ga26bb1805bd3475719324718c12cd5a0f">timlUtilTanh</a></div><div class="ttdeci">int timlUtilTanh(float *x, float *y, int n, int deviceId, int threadId)</div><div class="ttdoc">Tanh. </div><div class="ttdef"><b>Definition:</b> timlUtilTanh.c:63</div></div>
+<div class="ttc" id="structtimlUtilImage_html"><div class="ttname"><a href="structtimlUtilImage.html">timlUtilImage</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:170</div></div>
+<div class="ttc" id="group__util_html_ga518889e2bee0ffe2a0bab1a2a509afeb"><div class="ttname"><a href="group__util.html#ga518889e2bee0ffe2a0bab1a2a509afeb">timlUtilReadCIFAR10</a></div><div class="ttdeci">int timlUtilReadCIFAR10(const char *path, timlUtilImageSet *training, timlUtilImageSet *testing)</div><div class="ttdoc">Read CIFA10 database from binary files. </div><div class="ttdef"><b>Definition:</b> timlUtilReadCIFAR10.c:69</div></div>
+<div class="ttc" id="structtimlUtilImageSet_html_afb9385a310c68071907dea070fcf37e2"><div class="ttname"><a href="structtimlUtilImageSet.html#afb9385a310c68071907dea070fcf37e2">timlUtilImageSet::mean</a></div><div class="ttdeci">float * mean</div><div class="ttdef"><b>Definition:</b> timlUtil.h:193</div></div>
+<div class="ttc" id="group__util_html_gadbfd41f459cef267ff705fbed1a684de"><div class="ttname"><a href="group__util.html#gadbfd41f459cef267ff705fbed1a684de">timlUtilVectorSortFloat</a></div><div class="ttdeci">int timlUtilVectorSortFloat(float *a, int n)</div><div class="ttdoc">Sort an array in descending order. </div><div class="ttdef"><b>Definition:</b> timlUtilVectorSortFloat.c:63</div></div>
+<div class="ttc" id="group__util_html_ga4b2ab842a2212e924deb9f60bf1b703e"><div class="ttname"><a href="group__util.html#ga4b2ab842a2212e924deb9f60bf1b703e">timlUtilMasking</a></div><div class="ttdeci">int timlUtilMasking(float *inputMap, float *outputMap, int *mask, unsigned int *randomVector, int dim, float prob, int deviceId, int threadId)</div><div class="ttdoc">Masking feature maps. </div><div class="ttdef"><b>Definition:</b> timlUtilMasking.c:66</div></div>
+<div class="ttc" id="group__util_html_ga71557afaf0c3d8359920380558dd92fb"><div class="ttname"><a href="group__util.html#ga71557afaf0c3d8359920380558dd92fb">timlUtilElementWiseFunction</a></div><div class="ttdeci">int timlUtilElementWiseFunction(float *x, float *y, int n, float(*fun)(float))</div><div class="ttdoc">Apply a function on each element of the array. </div><div class="ttdef"><b>Definition:</b> timlUtilElementWiseFunction.c:59</div></div>
+<div class="ttc" id="group__util_html_ga76c854493ff6e686e70caf0e0f330694"><div class="ttname"><a href="group__util.html#ga76c854493ff6e686e70caf0e0f330694">timlUtilCorr2Full</a></div><div class="ttdeci">int timlUtilCorr2Full(float *a, float *b, float *c, int aRow, int aCol, int bRow, int bCol)</div><div class="ttdoc">conv2(a, rot90(b,2), 'valid') </div><div class="ttdef"><b>Definition:</b> timlUtilCorr2Full.c:62</div></div>
+<div class="ttc" id="group__util_html_ga1a6a5d975df7c8d4ef7ca184cbb98293"><div class="ttname"><a href="group__util.html#ga1a6a5d975df7c8d4ef7ca184cbb98293">timlUtilConv2ImageReshape</a></div><div class="ttdeci">int timlUtilConv2ImageReshape(float *xReshape, float *x, int *index, int prevChannel, int xDim, int indexDim, int deviceId, int threadId)</div><div class="ttdoc">Reshape feature maps to a format that turns 2d convolution to GEMM operation. </div><div class="ttdef"><b>Definition:</b> timlUtilConv2ImageReshape.c:66</div></div>
+<div class="ttc" id="group__util_html_gac8848759ff2638e9b54beef8f82748ae"><div class="ttname"><a href="group__util.html#gac8848759ff2638e9b54beef8f82748ae">timlUtilMultinomialCrossEntropy</a></div><div class="ttdeci">float timlUtilMultinomialCrossEntropy(float *x, int label, int n)</div><div class="ttdoc">Calculate the mutlinomial cross entropy between x and label. </div><div class="ttdef"><b>Definition:</b> timlUtilMultinomialCrossEntropy.c:61</div></div>
+<div class="ttc" id="group__util_html_ga898df2504b88d834c373082f2aa9f537"><div class="ttname"><a href="group__util.html#ga898df2504b88d834c373082f2aa9f537">timlUtilCropType</a></div><div class="ttdeci">timlUtilCropType</div><div class="ttdef"><b>Definition:</b> timlUtil.h:144</div></div>
+<div class="ttc" id="group__util_html_gga5405b012e02035f4d864e0e38d516764abfa2a07e6c5c6e74add533dfc9b548dd"><div class="ttname"><a href="group__util.html#gga5405b012e02035f4d864e0e38d516764abfa2a07e6c5c6e74add533dfc9b548dd">Util_Mirror</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:150</div></div>
+<div class="ttc" id="group__util_html_ga032c2a840544aee29ac1b36494bdfc6b"><div class="ttname"><a href="group__util.html#ga032c2a840544aee29ac1b36494bdfc6b">timlUtilFread</a></div><div class="ttdeci">int timlUtilFread(void *ptr, size_t size, size_t nmemb, FILE *fp)</div><div class="ttdoc">Read binary file. </div><div class="ttdef"><b>Definition:</b> timlUtilFread.c:62</div></div>
+<div class="ttc" id="group__util_html_ga242d2f4bb422b71fa05aec4b8568bdc4"><div class="ttname"><a href="group__util.html#ga242d2f4bb422b71fa05aec4b8568bdc4">timlUtilBLASdcopy</a></div><div class="ttdeci">void timlUtilBLASdcopy(const int N, const double *X, double *Y, int deviceId, int threadId)</div><div class="ttdoc">Double vector copy Y = X. </div><div class="ttdef"><b>Definition:</b> timlUtilBLAS.c:178</div></div>
+<div class="ttc" id="group__util_html_ga16f8b9181ff6ce6d4b1f655a5eb4738e"><div class="ttname"><a href="group__util.html#ga16f8b9181ff6ce6d4b1f655a5eb4738e">timlUtilReverseEndian32</a></div><div class="ttdeci">uint32_t timlUtilReverseEndian32(register uint32_t i)</div><div class="ttdoc">Reverse the 32 bit endian pattern. </div><div class="ttdef"><b>Definition:</b> timlUtilReverseEndian32.c:56</div></div>
+<div class="ttc" id="group__util_html_ga22f1d9ebb3a5745c3583860b42c8590a"><div class="ttname"><a href="group__util.html#ga22f1d9ebb3a5745c3583860b42c8590a">timlUtilBLASdger</a></div><div class="ttdeci">void timlUtilBLASdger(const int M, const int N, const double alpha, double *x, double *y, double *A, int deviceId, int threadId)</div><div class="ttdoc">Double vector outer product A = alpha*x*y' + A; x: M y: N. </div><div class="ttdef"><b>Definition:</b> timlUtilBLAS.c:193</div></div>
+<div class="ttc" id="group__util_html_gaf61206d55b45c89e3382ed9684ef2c79"><div class="ttname"><a href="group__util.html#gaf61206d55b45c89e3382ed9684ef2c79">timlUtilRelu</a></div><div class="ttdeci">int timlUtilRelu(float *x, float *y, int n, int deviceId, int threadId)</div><div class="ttdoc">Rectified linear unit. </div><div class="ttdef"><b>Definition:</b> timlUtilRelu.c:62</div></div>
+<div class="ttc" id="group__util_html_ga7f200e1630837f410457f12228a3f8e3"><div class="ttname"><a href="group__util.html#ga7f200e1630837f410457f12228a3f8e3">timlUtilBLASdgemv</a></div><div class="ttdeci">void timlUtilBLASdgemv(const enum CBLAS_TRANSPOSE TransA, const int M, const int N, const double alpha, const double *A, const double *x, const double beta, double *y, int deviceId, int threadId)</div><div class="ttdoc">Double general matrix vector multiplication y = alpha * op(A) * x + beta * y op(A): M*N...</div><div class="ttdef"><b>Definition:</b> timlUtilBLAS.c:98</div></div>
+<div class="ttc" id="group__util_html_gga898df2504b88d834c373082f2aa9f537ae92f4e5d3672f4d40cb213ac3a2210b3"><div class="ttname"><a href="group__util.html#gga898df2504b88d834c373082f2aa9f537ae92f4e5d3672f4d40cb213ac3a2210b3">Util_CenterCrop</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:145</div></div>
+<div class="ttc" id="group__util_html_ga64e5197e9d131870e97cd510b3f499ac"><div class="ttname"><a href="group__util.html#ga64e5197e9d131870e97cd510b3f499ac">timlUtilClassifyAccuracy</a></div><div class="ttdeci">int timlUtilClassifyAccuracy(int *label, int topN, int num, int *trueLabel)</div><div class="ttdoc">Calculate the classification accuracy. </div><div class="ttdef"><b>Definition:</b> timlUtilClassifyAccuracy.c:59</div></div>
+<div class="ttc" id="structtimlUtilInitializer_html_a9c842edeeceb0c66a29f08d1fadebce8"><div class="ttname"><a href="structtimlUtilInitializer.html#a9c842edeeceb0c66a29f08d1fadebce8">timlUtilInitializer::mean</a></div><div class="ttdeci">float mean</div><div class="ttdef"><b>Definition:</b> timlUtil.h:182</div></div>
+<div class="ttc" id="group__util_html_ga5bed0ba528735cfa363c12de22b30fae"><div class="ttname"><a href="group__util.html#ga5bed0ba528735cfa363c12de22b30fae">timlUtilConv2ImageReshapeIndex</a></div><div class="ttdeci">int timlUtilConv2ImageReshapeIndex(int *index, int aRow, int aCol, int bRow, int bCol, int padUp, int padDown, int padLeft, int padRight, int strideX, int strideY, timlUtilConvType type)</div><div class="ttdoc">Create a reshaping index matrix. </div><div class="ttdef"><b>Definition:</b> timlUtilConv2ImageReshapeIndex.c:72</div></div>
+<div class="ttc" id="group__util_html_ga2e09d42235ce01dc8d951cac92ccce28"><div class="ttname"><a href="group__util.html#ga2e09d42235ce01dc8d951cac92ccce28">timlUtilVectorMaxIndexFloat</a></div><div class="ttdeci">int timlUtilVectorMaxIndexFloat(float *x, int n, int inc)</div><div class="ttdoc">Return the max value index in the array. </div><div class="ttdef"><b>Definition:</b> timlUtilVectorMaxIndexFloat.c:61</div></div>
+<div class="ttc" id="group__util_html_ga432784c912b542452d7236cf72d184fe"><div class="ttname"><a href="group__util.html#ga432784c912b542452d7236cf72d184fe">timlUtilMalloc</a></div><div class="ttdeci">int timlUtilMalloc(void **devPtr, size_t size)</div><div class="ttdoc">memory allocation </div><div class="ttdef"><b>Definition:</b> timlUtilMalloc.c:60</div></div>
+<div class="ttc" id="group__util_html_gac4ce5d2a827d4d0bddb092604dc22555"><div class="ttname"><a href="group__util.html#gac4ce5d2a827d4d0bddb092604dc22555">timlUtilSigmoidDerivative</a></div><div class="ttdeci">int timlUtilSigmoidDerivative(float *x, float *y, int n, int deviceId, int threadId)</div><div class="ttdoc">Sigmoid derivative. </div><div class="ttdef"><b>Definition:</b> timlUtilSigmoidDerivative.c:63</div></div>
+<div class="ttc" id="group__util_html_gafdc65cff28dd8132ee12d7e4fff6b344"><div class="ttname"><a href="group__util.html#gafdc65cff28dd8132ee12d7e4fff6b344">timlUtilConv2Valid</a></div><div class="ttdeci">int timlUtilConv2Valid(float *a, float *b, float *c, int aRow, int aCol, int bRow, int bCol)</div><div class="ttdoc">conv2(a, b, 'valid') </div><div class="ttdef"><b>Definition:</b> timlUtilConv2Valid.c:62</div></div>
+<div class="ttc" id="group__util_html_ga7b7056163efcce74e844159113ad7670"><div class="ttname"><a href="group__util.html#ga7b7056163efcce74e844159113ad7670">timlUtilRandDiscreteUniformRNG</a></div><div class="ttdeci">int timlUtilRandDiscreteUniformRNG(int a, int b)</div><div class="ttdoc">Discrete uniform random number generator in [a, b]. </div><div class="ttdef"><b>Definition:</b> timlUtilRandDiscreteUniformRNG.c:57</div></div>
+<div class="ttc" id="group__util_html_ga7f2ccf0e4a749d484cd40b64d14a0bdb"><div class="ttname"><a href="group__util.html#ga7f2ccf0e4a749d484cd40b64d14a0bdb">timlUtilBLASsscal</a></div><div class="ttdeci">void timlUtilBLASsscal(const int N, const float alpha, float *X, int deviceId, int threadId)</div><div class="ttdoc">Float vector scaling x = alpha * x. </div><div class="ttdef"><b>Definition:</b> timlUtilBLAS.c:238</div></div>
+<div class="ttc" id="group__util_html_ga3cd3b5eb20373a30eb06e1db3f27e105"><div class="ttname"><a href="group__util.html#ga3cd3b5eb20373a30eb06e1db3f27e105">timlUtilBLASsgemm</a></div><div class="ttdeci">void timlUtilBLASsgemm(const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_TRANSPOSE TransB, const int M, const int N, const int K, const float alpha, const float *A, const float *B, const float beta, float *C, int deviceId, int threadId)</div><div class="ttdoc">Float general matrix matrix multiplication C = alpha * op(A) * op(B) + beta * C op(A) : M*K op(B) : K...</div><div class="ttdef"><b>Definition:</b> timlUtilBLAS.c:77</div></div>
+<div class="ttc" id="group__util_html_gga62247c3acaa170e3a75f9887ec21106fa852397275a536af52c736403647721c3"><div class="ttname"><a href="group__util.html#gga62247c3acaa170e3a75f9887ec21106fa852397275a536af52c736403647721c3">Util_AllocatorLevel2</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:140</div></div>
+<div class="ttc" id="group__util_html_ga8e17bdb2dd7b9e8f25d1a93c8d470a97"><div class="ttname"><a href="group__util.html#ga8e17bdb2dd7b9e8f25d1a93c8d470a97">timlUtilMeanSqaureError</a></div><div class="ttdeci">float timlUtilMeanSqaureError(float *x, int label, int n)</div><div class="ttdoc">Calculate the mean square error between x and label. </div><div class="ttdef"><b>Definition:</b> timlUtilMeanSquareError.c:58</div></div>
+<div class="ttc" id="group__util_html_ga158d5bed50c9d1aa04f3437ba4e4746c"><div class="ttname"><a href="group__util.html#ga158d5bed50c9d1aa04f3437ba4e4746c">timlUtilSubtract</a></div><div class="ttdeci">int timlUtilSubtract(float *x, float y, int deviceId, int threadId)</div><div class="ttdoc">Subtract operation. </div><div class="ttdef"><b>Definition:</b> timlUtilSubtract.c:62</div></div>
+<div class="ttc" id="group__util_html_ga50c739176cce0504f24f414d1abe03de"><div class="ttname"><a href="group__util.html#ga50c739176cce0504f24f414d1abe03de">timlUtilVectorSumFloat</a></div><div class="ttdeci">float timlUtilVectorSumFloat(float *a, int m)</div><div class="ttdoc">Calculate the sum of a float vector. </div><div class="ttdef"><b>Definition:</b> timlUtilVectorSumFloat.c:57</div></div>
+<div class="ttc" id="group__util_html_gadcb6e562a1ddebb9589dc326c6e85db3"><div class="ttname"><a href="group__util.html#gadcb6e562a1ddebb9589dc326c6e85db3">timlUtilReluDerivative</a></div><div class="ttdeci">int timlUtilReluDerivative(float *x, float *y, int n, int deviceId, int threadId)</div><div class="ttdoc">Rectified linear unit derivative. </div><div class="ttdef"><b>Definition:</b> timlUtilReluDerivative.c:62</div></div>
+<div class="ttc" id="group__util_html_gad332b3fc9cca905cb073bb950c27d9a3"><div class="ttname"><a href="group__util.html#gad332b3fc9cca905cb073bb950c27d9a3">timlUtilDiffTime</a></div><div class="ttdeci">long timlUtilDiffTime(struct timespec start, struct timespec end)</div><div class="ttdoc">Return the time difference in micro second. </div><div class="ttdef"><b>Definition:</b> timlUtilDiffTime.c:57</div></div>
+<div class="ttc" id="group__util_html_ga336682df712eb1342b16a00731b55e2c"><div class="ttname"><a href="group__util.html#ga336682df712eb1342b16a00731b55e2c">timlUtilBLASdscal</a></div><div class="ttdeci">void timlUtilBLASdscal(const int N, const double alpha, double *X, int deviceId, int threadId)</div><div class="ttdoc">Double vector scaling x = alpha * x. </div><div class="ttdef"><b>Definition:</b> timlUtilBLAS.c:225</div></div>
+<div class="ttc" id="group__util_html_ga62247c3acaa170e3a75f9887ec21106f"><div class="ttname"><a href="group__util.html#ga62247c3acaa170e3a75f9887ec21106f">timlUtilAllocatorLevel</a></div><div class="ttdeci">timlUtilAllocatorLevel</div><div class="ttdef"><b>Definition:</b> timlUtil.h:138</div></div>
+<div class="ttc" id="structtimlUtilInitializer_html"><div class="ttname"><a href="structtimlUtilInitializer.html">timlUtilInitializer</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:177</div></div>
+<div class="ttc" id="group__util_html_ga825fca95dc612cb50cca8d3b42fce451"><div class="ttname"><a href="group__util.html#ga825fca95dc612cb50cca8d3b42fce451">timlUtilConv2Full</a></div><div class="ttdeci">int timlUtilConv2Full(float *a, float *b, float *c, int aRow, int aCol, int bRow, int bCol)</div><div class="ttdoc">conv2(a, b, 'full') </div><div class="ttdef"><b>Definition:</b> timlUtilConv2Full.c:62</div></div>
+<div class="ttc" id="group__util_html_ga80375ed4d8c895a5373c0ea5bea7c90c"><div class="ttname"><a href="group__util.html#ga80375ed4d8c895a5373c0ea5bea7c90c">timlUtilVectorMaxFloat</a></div><div class="ttdeci">float timlUtilVectorMaxFloat(float *x, int n, int inc)</div><div class="ttdoc">Return the max value in the array. </div><div class="ttdef"><b>Definition:</b> timlUtilVectorMaxFloat.c:58</div></div>
+<div class="ttc" id="structtimlUtilImageSet_html_ade6b3b453d8ae460ff3f83cb3fb2abec"><div class="ttname"><a href="structtimlUtilImageSet.html#ade6b3b453d8ae460ff3f83cb3fb2abec">timlUtilImageSet::num</a></div><div class="ttdeci">int num</div><div class="ttdef"><b>Definition:</b> timlUtil.h:192</div></div>
+<div class="ttc" id="group__util_html_ga6bc3609f73f6674134821cc002d7081f"><div class="ttname"><a href="group__util.html#ga6bc3609f73f6674134821cc002d7081f">timlUtilTransform</a></div><div class="ttdeci">void timlUtilTransform(float *dataOut, float *dataIn, float *dataHost, int channel, int row, int col, int rowOffset, int colOffset, int rowIn, int colIn, float scale, float *mean, timlUtilMirrorType mirrorType, int deviceId, int threadId)</div><div class="ttdoc">Transform the raw input data with preprocessing. </div><div class="ttdef"><b>Definition:</b> timlUtilTransform.c:73</div></div>
+<div class="ttc" id="group__util_html_ga916c002835a135384e25aa4eabe8fece"><div class="ttname"><a href="group__util.html#ga916c002835a135384e25aa4eabe8fece">timlUtilBLASsgemv</a></div><div class="ttdeci">void timlUtilBLASsgemv(const enum CBLAS_TRANSPOSE TransA, const int M, const int N, const float alpha, const float *A, const float *x, const float beta, float *y, int deviceId, int threadId)</div><div class="ttdoc">Float general matrix vector multiplication y = alpha * op(A) * x + beta * y op(A): M*N...</div><div class="ttdef"><b>Definition:</b> timlUtilBLAS.c:112</div></div>
+<div class="ttc" id="group__util_html_ga67a8b8821e100476544c39ebe3f7d88a"><div class="ttname"><a href="group__util.html#ga67a8b8821e100476544c39ebe3f7d88a">timlUtilBLASdaxpy</a></div><div class="ttdeci">void timlUtilBLASdaxpy(const int N, const double alpha, const double *X, double *Y, int deviceId, int threadId)</div><div class="ttdoc">Double vector addition Y = alpha * X + Y. </div><div class="ttdef"><b>Definition:</b> timlUtilBLAS.c:147</div></div>
+<div class="ttc" id="group__util_html_ga7adedb39838d1a724329c2f05e70d2bc"><div class="ttname"><a href="group__util.html#ga7adedb39838d1a724329c2f05e70d2bc">timlUtilVectorSortIndexFloat</a></div><div class="ttdeci">int timlUtilVectorSortIndexFloat(float *a, int *index, int n)</div><div class="ttdoc">Sort an array in descending order and return the indices of the original elements in the sorted array...</div><div class="ttdef"><b>Definition:</b> timlUtilVectorSortIndexFloat.c:69</div></div>
+<div class="ttc" id="group__util_html_gab0d103f2a7348ee3f7be2468cb06a374"><div class="ttname"><a href="group__util.html#gab0d103f2a7348ee3f7be2468cb06a374">timlUtilRandNormalRNG</a></div><div class="ttdeci">int timlUtilRandNormalRNG(float *x, int dim, float mean, float std)</div><div class="ttdoc">Generate a Gaussian random number. </div><div class="ttdef"><b>Definition:</b> timlUtilRandNormalRNG.c:66</div></div>
+<div class="ttc" id="structtimlUtilInitializer_html_a2771e09d4ead50b451ed38e6cba99150"><div class="ttname"><a href="structtimlUtilInitializer.html#a2771e09d4ead50b451ed38e6cba99150">timlUtilInitializer::min</a></div><div class="ttdeci">float min</div><div class="ttdef"><b>Definition:</b> timlUtil.h:180</div></div>
+<div class="ttc" id="group__util_html_ga5405b012e02035f4d864e0e38d516764"><div class="ttname"><a href="group__util.html#ga5405b012e02035f4d864e0e38d516764">timlUtilMirrorType</a></div><div class="ttdeci">timlUtilMirrorType</div><div class="ttdef"><b>Definition:</b> timlUtil.h:149</div></div>
+<div class="ttc" id="structtimlUtilInitializer_html_a37e42634a42df16a5f460b266bce968a"><div class="ttname"><a href="structtimlUtilInitializer.html#a37e42634a42df16a5f460b266bce968a">timlUtilInitializer::std</a></div><div class="ttdeci">float std</div><div class="ttdef"><b>Definition:</b> timlUtil.h:183</div></div>
+<div class="ttc" id="group__util_html_ga7e53789a132ed94665d66a10dd9ff76c"><div class="ttname"><a href="group__util.html#ga7e53789a132ed94665d66a10dd9ff76c">timlUtilUnmasking</a></div><div class="ttdeci">int timlUtilUnmasking(float *inputDelta, float *outputDelta, int *mask, int dim, float prob, int deviceId, int threadId)</div><div class="ttdoc">Masking feature maps. </div><div class="ttdef"><b>Definition:</b> timlUtilUnmasking.c:65</div></div>
+<div class="ttc" id="group__util_html_gga8e44b2a87636024736da04ae5a53c1c9a7a706ba3c48e3e4f1302c8fc5af3bb50"><div class="ttname"><a href="group__util.html#gga8e44b2a87636024736da04ae5a53c1c9a7a706ba3c48e3e4f1302c8fc5af3bb50">Util_ParamsLevel1</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:133</div></div>
+<div class="ttc" id="group__util_html_ga47ba59c5e11f31931e3fae5717b93450"><div class="ttname"><a href="group__util.html#ga47ba59c5e11f31931e3fae5717b93450">timlUtilUndoMeanPooling</a></div><div class="ttdeci">int timlUtilUndoMeanPooling(float *prevDelta, float *delta, int row, int col, int channel, int prevRow, int prevCol, int scaleRow, int scaleCol, int padUp, int padLeft, int strideX, int strideY, int deviceId, int threadId)</div><div class="ttdoc">Undo mean pooling. </div><div class="ttdef"><b>Definition:</b> timlUtilUndoMeanPooling.c:73</div></div>
+<div class="ttc" id="group__util_html_ga33ca8bcccfd95381c34a7822dd3d5e03"><div class="ttname"><a href="group__util.html#ga33ca8bcccfd95381c34a7822dd3d5e03">timlUtilRandContinuousUniformRNG</a></div><div class="ttdeci">int timlUtilRandContinuousUniformRNG(float *x, int dim, float a, float b)</div><div class="ttdoc">Generate a discrete uniform random vector between (a, b) </div><div class="ttdef"><b>Definition:</b> timlUtilRandContinuousUniformRNG.c:62</div></div>
+<div class="ttc" id="group__util_html_ga365f20b5c810059087f2d24964ec7fdd"><div class="ttname"><a href="group__util.html#ga365f20b5c810059087f2d24964ec7fdd">timlUtilBLASdgemm</a></div><div class="ttdeci">void timlUtilBLASdgemm(const enum CBLAS_TRANSPOSE TransA, const enum CBLAS_TRANSPOSE TransB, const int M, const int N, const int K, const double alpha, const double *A, const double *B, const double beta, double *C, int deviceId, int threadId)</div><div class="ttdoc">Double general matrix matrix multiplication C = alpha * op(A) * op(B) + beta * C op(A) : M*K op(B) : ...</div><div class="ttdef"><b>Definition:</b> timlUtilBLAS.c:60</div></div>
+<div class="ttc" id="group__util_html_ga223537dde56b8c21a9455ff8a635f71f"><div class="ttname"><a href="group__util.html#ga223537dde56b8c21a9455ff8a635f71f">timlUtilSoftmax</a></div><div class="ttdeci">int timlUtilSoftmax(float *x, float *y, int row, int col, int channel, int deviceId, int threadId)</div><div class="ttdoc">Softmax function. </div><div class="ttdef"><b>Definition:</b> timlUtilSoftmax.c:65</div></div>
+<div class="ttc" id="group__util_html_gga62247c3acaa170e3a75f9887ec21106fabaf43a2a2db7a39b88ca28b3fbdb9f8d"><div class="ttname"><a href="group__util.html#gga62247c3acaa170e3a75f9887ec21106fabaf43a2a2db7a39b88ca28b3fbdb9f8d">Util_AllocatorLevel1</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:139</div></div>
+<div class="ttc" id="group__util_html_ga823c056e72e3c9738ba07232a759dd93"><div class="ttname"><a href="group__util.html#ga823c056e72e3c9738ba07232a759dd93">timlUtilConv2ImageReshapeBack</a></div><div class="ttdeci">int timlUtilConv2ImageReshapeBack(float *x, float *xReshape, int *index, int prevChannel, int xDim, int indexDim, int deviceId, int threadId)</div><div class="ttdoc">Reshape the convolution matrix back to feature maps. </div><div class="ttdef"><b>Definition:</b> timlUtilConv2ImageReshapeBack.c:66</div></div>
+<div class="ttc" id="group__util_html_gac9523e1013f8e3853568eb2e67b54a58"><div class="ttname"><a href="group__util.html#gac9523e1013f8e3853568eb2e67b54a58">timlUtilMaxPooling</a></div><div class="ttdeci">int timlUtilMaxPooling(float *outputMap, int *maxIndex, float *inputMap, int row, int col, int channel, int prevRow, int prevCol, int scaleRow, int scaleCol, int padUp, int padLeft, int strideX, int strideY, timlUtilPhase phase, int deviceId, int threadId)</div><div class="ttdoc">Max pooling. </div><div class="ttdef"><b>Definition:</b> timlUtilMaxPooling.c:75</div></div>
+<div class="ttc" id="group__util_html_gacdd02957d16d4ba4951f35c0e7fc5b30"><div class="ttname"><a href="group__util.html#gacdd02957d16d4ba4951f35c0e7fc5b30">timlUtilBLASsger</a></div><div class="ttdeci">void timlUtilBLASsger(const int M, const int N, const float alpha, float *x, float *y, float *A, int deviceId, int threadId)</div><div class="ttdoc">Float vector outer product A = alpha*x*y' + A; x: M y: N. </div><div class="ttdef"><b>Definition:</b> timlUtilBLAS.c:208</div></div>
+<div class="ttc" id="structtimlUtilInitializer_html_aa9fc114a6fbec1070ecf87c3e147dd67"><div class="ttname"><a href="structtimlUtilInitializer.html#aa9fc114a6fbec1070ecf87c3e147dd67">timlUtilInitializer::val</a></div><div class="ttdeci">float val</div><div class="ttdef"><b>Definition:</b> timlUtil.h:179</div></div>
+<div class="ttc" id="group__util_html_gga62247c3acaa170e3a75f9887ec21106faaa6f2cd7843572787572085b7bef172b"><div class="ttname"><a href="group__util.html#gga62247c3acaa170e3a75f9887ec21106faaa6f2cd7843572787572085b7bef172b">Util_AllocatorLevel3</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:141</div></div>
+<div class="ttc" id="structtimlUtilInitializer_html_adeb987a00803c1c7218954618f1f56cc"><div class="ttname"><a href="structtimlUtilInitializer.html#adeb987a00803c1c7218954618f1f56cc">timlUtilInitializer::max</a></div><div class="ttdeci">float max</div><div class="ttdef"><b>Definition:</b> timlUtil.h:181</div></div>
+<div class="ttc" id="group__util_html_ga0e3ab1684d55ae10ec96b1b7a58c2d0f"><div class="ttname"><a href="group__util.html#ga0e3ab1684d55ae10ec96b1b7a58c2d0f">timlUtilSigmoid</a></div><div class="ttdeci">int timlUtilSigmoid(float *x, float *y, int n, int deviceId, int threadId)</div><div class="ttdoc">Sigmoid. </div><div class="ttdef"><b>Definition:</b> timlUtilSigmoid.c:63</div></div>
+<div class="ttc" id="group__util_html_ga4c8737cc28dfcafb340a06869cb06c6d"><div class="ttname"><a href="group__util.html#ga4c8737cc28dfcafb340a06869cb06c6d">timlUtilVectorResetFloat</a></div><div class="ttdeci">int timlUtilVectorResetFloat(float *a, int m, float val, int deviceId, int threadId)</div><div class="ttdoc">Reset a float vector. </div><div class="ttdef"><b>Definition:</b> timlUtilVectorResetFloat.c:63</div></div>
+<div class="ttc" id="group__util_html_gae073107f6b111717bac95417ff80c85c"><div class="ttname"><a href="group__util.html#gae073107f6b111717bac95417ff80c85c">timlUtilUndoMaxPooling</a></div><div class="ttdeci">int timlUtilUndoMaxPooling(float *prevDelta, int *maxIndex, float *delta, int dim, int deviceId, int threadId)</div><div class="ttdoc">Undo max pooling. </div><div class="ttdef"><b>Definition:</b> timlUtilUndoMaxPooling.c:64</div></div>
+<div class="ttc" id="group__util_html_gga8e44b2a87636024736da04ae5a53c1c9a2cddbb23ea76ecaee590b53dab026432"><div class="ttname"><a href="group__util.html#gga8e44b2a87636024736da04ae5a53c1c9a2cddbb23ea76ecaee590b53dab026432">Util_ParamsLevel2</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:134</div></div>
+<div class="ttc" id="group__util_html_ga680fe5b84f1ce4712c74fc9c01b5dc82"><div class="ttname"><a href="group__util.html#ga680fe5b84f1ce4712c74fc9c01b5dc82">timlUtilTanhDerivative</a></div><div class="ttdeci">int timlUtilTanhDerivative(float *x, float *y, int n, int deviceId, int threadId)</div><div class="ttdoc">Tanh derivative. </div><div class="ttdef"><b>Definition:</b> timlUtilTanhDerivative.c:63</div></div>
+<div class="ttc" id="group__util_html_gga8e44b2a87636024736da04ae5a53c1c9adfa1c162a9ac296e6e94e6a03b5ccef5"><div class="ttname"><a href="group__util.html#gga8e44b2a87636024736da04ae5a53c1c9adfa1c162a9ac296e6e94e6a03b5ccef5">Util_ParamsLevel3</a></div><div class="ttdef"><b>Definition:</b> timlUtil.h:135</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Fri Mar 20 2015 11:26:08 for TIML by  <a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>