blob: 2a92d2ac23dcf3661c2c6921a89af10410059f8c [file] [log] [blame]
Anthony Barbier871448e2017-03-24 14:54:29 +00001<!-- HTML header for doxygen 1.8.9.1-->
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml">
4<head>
5<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
6<meta http-equiv="X-UA-Compatible" content="IE=9"/>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00007<meta name="generator" content="Doxygen 1.8.11"/>
Anthony Barbier871448e2017-03-24 14:54:29 +00008<meta name="robots" content="NOINDEX, NOFOLLOW" /> <!-- Prevent indexing by search engines -->
Anthony Barbierdbdab852017-06-23 15:42:00 +01009<title>Compute Library: src/core/CL/cl_kernels/helpers.h File Reference</title>
Anthony Barbier871448e2017-03-24 14:54:29 +000010<link href="tabs.css" rel="stylesheet" type="text/css"/>
11<script type="text/javascript" src="jquery.js"></script>
12<script type="text/javascript" src="dynsections.js"></script>
13<link href="navtree.css" rel="stylesheet" type="text/css"/>
14<script type="text/javascript" src="resize.js"></script>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000015<script type="text/javascript" src="navtreedata.js"></script>
Anthony Barbier871448e2017-03-24 14:54:29 +000016<script type="text/javascript" src="navtree.js"></script>
17<script type="text/javascript">
18 $(document).ready(initResizable);
19 $(window).load(resizeHeight);
20</script>
21<link href="search/search.css" rel="stylesheet" type="text/css"/>
Anthony Barbier8140e1e2017-12-14 23:48:46 +000022<script type="text/javascript" src="search/searchdata.js"></script>
Anthony Barbier871448e2017-03-24 14:54:29 +000023<script type="text/javascript" src="search/search.js"></script>
24<script type="text/javascript">
Anthony Barbier8140e1e2017-12-14 23:48:46 +000025 $(document).ready(function() { init_search(); });
Anthony Barbier871448e2017-03-24 14:54:29 +000026</script>
27<script type="text/x-mathjax-config">
28 MathJax.Hub.Config({
29 extensions: ["tex2jax.js"],
30 jax: ["input/TeX","output/HTML-CSS"],
31});
Anthony Barbier8140e1e2017-12-14 23:48:46 +000032</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
Anthony Barbier871448e2017-03-24 14:54:29 +000033<link href="doxygen.css" rel="stylesheet" type="text/css" />
34</head>
35<body>
36<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
37<div id="titlearea">
38<table cellspacing="0" cellpadding="0">
39 <tbody>
40 <tr style="height: 56px;">
41 <td style="padding-left: 0.5em;">
Anthony Barbierdbdab852017-06-23 15:42:00 +010042 <div id="projectname">Compute Library
Jenkins52ba29e2018-08-29 15:32:11 +000043 &#160;<span id="projectnumber">18.08</span>
Anthony Barbier871448e2017-03-24 14:54:29 +000044 </div>
45 </td>
46 </tr>
47 </tbody>
48</table>
49</div>
50<!-- end header part -->
Anthony Barbier8140e1e2017-12-14 23:48:46 +000051<!-- Generated by Doxygen 1.8.11 -->
Anthony Barbier871448e2017-03-24 14:54:29 +000052<script type="text/javascript">
53var searchBox = new SearchBox("searchBox", "search",false,'Search');
54</script>
55 <div id="navrow1" class="tabs">
56 <ul class="tablist">
57 <li><a href="index.xhtml"><span>Main&#160;Page</span></a></li>
Anthony Barbierdbdab852017-06-23 15:42:00 +010058 <li><a href="pages.xhtml"><span>Related&#160;Pages</span></a></li>
Anthony Barbier871448e2017-03-24 14:54:29 +000059 <li><a href="namespaces.xhtml"><span>Namespaces</span></a></li>
60 <li><a href="annotated.xhtml"><span>Data&#160;Structures</span></a></li>
61 <li class="current"><a href="files.xhtml"><span>Files</span></a></li>
62 <li>
63 <div id="MSearchBox" class="MSearchBoxInactive">
64 <span class="left">
65 <img id="MSearchSelect" src="search/mag_sel.png"
66 onmouseover="return searchBox.OnSearchSelectShow()"
67 onmouseout="return searchBox.OnSearchSelectHide()"
68 alt=""/>
69 <input type="text" id="MSearchField" value="Search" accesskey="S"
70 onfocus="searchBox.OnSearchFieldFocus(true)"
71 onblur="searchBox.OnSearchFieldFocus(false)"
72 onkeyup="searchBox.OnSearchFieldChange(event)"/>
73 </span><span class="right">
74 <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
75 </span>
76 </div>
77 </li>
78 </ul>
79 </div>
80 <div id="navrow2" class="tabs2">
81 <ul class="tablist">
82 <li><a href="files.xhtml"><span>File&#160;List</span></a></li>
83 <li><a href="globals.xhtml"><span>Globals</span></a></li>
84 </ul>
85 </div>
86</div><!-- top -->
87<div id="side-nav" class="ui-resizable side-nav-resizable">
88 <div id="nav-tree">
89 <div id="nav-tree-contents">
90 <div id="nav-sync" class="sync"></div>
91 </div>
92 </div>
93 <div id="splitbar" style="-moz-user-select:none;"
94 class="ui-resizable-handle">
95 </div>
96</div>
97<script type="text/javascript">
98$(document).ready(function(){initNavTree('helpers_8h.xhtml','');});
99</script>
100<div id="doc-content">
101<!-- window showing the filter options -->
102<div id="MSearchSelectWindow"
103 onmouseover="return searchBox.OnSearchSelectShow()"
104 onmouseout="return searchBox.OnSearchSelectHide()"
105 onkeydown="return searchBox.OnSearchSelectKey(event)">
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000106</div>
Anthony Barbier871448e2017-03-24 14:54:29 +0000107
108<!-- iframe showing the search results (closed by default) -->
109<div id="MSearchResultsWindow">
110<iframe src="javascript:void(0)" frameborder="0"
111 name="MSearchResults" id="MSearchResults">
112</iframe>
113</div>
114
115<div class="header">
116 <div class="summary">
117<a href="#nested-classes">Data Structures</a> &#124;
118<a href="#define-members">Macros</a> &#124;
119<a href="#typedef-members">Typedefs</a> &#124;
120<a href="#func-members">Functions</a> </div>
121 <div class="headertitle">
122<div class="title">helpers.h File Reference</div> </div>
123</div><!--header-->
124<div class="contents">
125
126<p><a href="helpers_8h_source.xhtml">Go to the source code of this file.</a></p>
127<table class="memberdecls">
128<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
129Data Structures</h2></td></tr>
130<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vector.xhtml">Vector</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000131<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure to hold <a class="el" href="struct_vector.xhtml" title="Structure to hold Vector information. ">Vector</a> information. <a href="struct_vector.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000132<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
133<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_image.xhtml">Image</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000134<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure to hold <a class="el" href="struct_image.xhtml" title="Structure to hold Image information. ">Image</a> information. <a href="struct_image.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000135<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
136<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_tensor3_d.xhtml">Tensor3D</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000137<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure to hold 3D tensor information. <a href="struct_tensor3_d.xhtml#details">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100138<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +0000139<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_tensor4_d.xhtml">Tensor4D</a></td></tr>
140<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure to hold 4D tensor information. <a href="struct_tensor4_d.xhtml#details">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000141<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
142</table><table class="memberdecls">
143<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
144Macros</h2></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100145<tr class="memitem:ae4b532a93c757194ec73b6790a3e6b1f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#ae4b532a93c757194ec73b6790a3e6b1f">EXPAND</a>(x)&#160;&#160;&#160;x</td></tr>
146<tr class="separator:ae4b532a93c757194ec73b6790a3e6b1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000147<tr class="memitem:aabdbe431f2713c5c2604cb9872b66aab"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#aabdbe431f2713c5c2604cb9872b66aab">CLAMP</a>(x, min_val, max_val)&#160;&#160;&#160;min(max(x, min_val), max_val)</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000148<tr class="separator:aabdbe431f2713c5c2604cb9872b66aab"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100149<tr class="memitem:a29367a809c14c294feefc1a8dad93752"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a29367a809c14c294feefc1a8dad93752">VLOAD_STR</a>(size)&#160;&#160;&#160;vload##size</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100150<tr class="separator:a29367a809c14c294feefc1a8dad93752"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100151<tr class="memitem:a287e2fc366c312b468382c95bb90f91f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a287e2fc366c312b468382c95bb90f91f">VLOAD</a>(size)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a29367a809c14c294feefc1a8dad93752">VLOAD_STR</a>(size)</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100152<tr class="separator:a287e2fc366c312b468382c95bb90f91f"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100153<tr class="memitem:aeedcb2d8b4b0ce17747474d4da15f199"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#aeedcb2d8b4b0ce17747474d4da15f199">VSTORE_STR</a>(size)&#160;&#160;&#160;vstore##size</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100154<tr class="separator:aeedcb2d8b4b0ce17747474d4da15f199"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100155<tr class="memitem:acb282042d1edeeaa3cc979a206f78b54"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#acb282042d1edeeaa3cc979a206f78b54">VSTORE</a>(size)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#aeedcb2d8b4b0ce17747474d4da15f199">VSTORE_STR</a>(size)</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100156<tr class="separator:acb282042d1edeeaa3cc979a206f78b54"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100157<tr class="memitem:ae802822defb0fa3a7f74f98e324696cb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#ae802822defb0fa3a7f74f98e324696cb">VEC_DATA_TYPE_STR</a>(type, size)&#160;&#160;&#160;type##size</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000158<tr class="separator:ae802822defb0fa3a7f74f98e324696cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100159<tr class="memitem:a36f754c05b6fddf6df0d8d0a74f8159f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a36f754c05b6fddf6df0d8d0a74f8159f">VEC_DATA_TYPE</a>(type, size)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#ae802822defb0fa3a7f74f98e324696cb">VEC_DATA_TYPE_STR</a>(type, size)</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000160<tr class="separator:a36f754c05b6fddf6df0d8d0a74f8159f"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100161<tr class="memitem:aa38f54499d4724c4ab01f6da100b603b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#aa38f54499d4724c4ab01f6da100b603b">CL_VEC_DATA_TYPE_STR</a>(type, size)&#160;&#160;&#160;type##size</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000162<tr class="separator:aa38f54499d4724c4ab01f6da100b603b"><td class="memSeparator" colspan="2">&#160;</td></tr>
Jenkinsb3a371b2018-05-23 11:36:53 +0100163<tr class="memitem:a0f6ad555d097377151003a5119ccee45"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a0f6ad555d097377151003a5119ccee45">CL_VEC_DATA_TYPE</a>(type, size)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#aa38f54499d4724c4ab01f6da100b603b">CL_VEC_DATA_TYPE_STR</a>(type, size)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000164<tr class="separator:a0f6ad555d097377151003a5119ccee45"><td class="memSeparator" colspan="2">&#160;</td></tr>
165<tr class="memitem:a4090567b3adb034c7cc1af308cb45670"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a4090567b3adb034c7cc1af308cb45670">CONVERT_STR</a>(x, type)&#160;&#160;&#160;(convert_##type((x)))</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000166<tr class="separator:a4090567b3adb034c7cc1af308cb45670"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000167<tr class="memitem:aa8d95ba04fc73845abc6045952cae5be"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#aa8d95ba04fc73845abc6045952cae5be">CONVERT</a>(x, type)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a4090567b3adb034c7cc1af308cb45670">CONVERT_STR</a>(x, type)</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000168<tr class="separator:aa8d95ba04fc73845abc6045952cae5be"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000169<tr class="memitem:a4e0fc93c9a69863dcdf7672ab547026c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a4e0fc93c9a69863dcdf7672ab547026c">CONVERT_SAT_STR</a>(x, type)&#160;&#160;&#160;(convert_##type##_sat((x)))</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000170<tr class="separator:a4e0fc93c9a69863dcdf7672ab547026c"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000171<tr class="memitem:a23fb01b6f3453cc0e48a026fd44f6acd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a23fb01b6f3453cc0e48a026fd44f6acd">CONVERT_SAT</a>(x, type)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a4e0fc93c9a69863dcdf7672ab547026c">CONVERT_SAT_STR</a>(x, type)</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000172<tr class="separator:a23fb01b6f3453cc0e48a026fd44f6acd"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000173<tr class="memitem:a341a0c28698c3f6bd171df1771c5a512"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a341a0c28698c3f6bd171df1771c5a512">CONVERT_SAT_ROUND_STR</a>(x, type, round)&#160;&#160;&#160;(convert_##type##_sat_##round((x)))</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000174<tr class="separator:a341a0c28698c3f6bd171df1771c5a512"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000175<tr class="memitem:a28b2b123792a5b11a32cb05a6d327437"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a28b2b123792a5b11a32cb05a6d327437">CONVERT_SAT_ROUND</a>(x, type, round)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a341a0c28698c3f6bd171df1771c5a512">CONVERT_SAT_ROUND_STR</a>(x, type, round)</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000176<tr class="separator:a28b2b123792a5b11a32cb05a6d327437"><td class="memSeparator" colspan="2">&#160;</td></tr>
177<tr class="memitem:a40a6eb9f2a7712f08d6bb8ff6c9e6ca7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a40a6eb9f2a7712f08d6bb8ff6c9e6ca7">VECTOR_DECLARATION</a>(name)</td></tr>
178<tr class="separator:a40a6eb9f2a7712f08d6bb8ff6c9e6ca7"><td class="memSeparator" colspan="2">&#160;</td></tr>
179<tr class="memitem:a22f42fcf2077d951271df83b55c1a71a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a22f42fcf2077d951271df83b55c1a71a">IMAGE_DECLARATION</a>(name)</td></tr>
180<tr class="separator:a22f42fcf2077d951271df83b55c1a71a"><td class="memSeparator" colspan="2">&#160;</td></tr>
181<tr class="memitem:a6b83038822d1ae7ab619b684ed3b7fc0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a6b83038822d1ae7ab619b684ed3b7fc0">TENSOR3D_DECLARATION</a>(name)</td></tr>
182<tr class="separator:a6b83038822d1ae7ab619b684ed3b7fc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100183<tr class="memitem:a481bdc6d61b3df9dcdbdb244f0f97790"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a481bdc6d61b3df9dcdbdb244f0f97790">TENSOR4D_DECLARATION</a>(name)</td></tr>
184<tr class="separator:a481bdc6d61b3df9dcdbdb244f0f97790"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000185<tr class="memitem:a527bfdf5eeb306f1cf01c4a8e29f38e0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a527bfdf5eeb306f1cf01c4a8e29f38e0">CONVERT_TO_VECTOR_STRUCT</a>(name)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a8fee90913ba658b25516a43cf71e5cbd">update_vector_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x)</td></tr>
186<tr class="separator:a527bfdf5eeb306f1cf01c4a8e29f38e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
187<tr class="memitem:a64d779f80eeb923e0ab2313433f7b40b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a64d779f80eeb923e0ab2313433f7b40b">CONVERT_TO_VECTOR_STRUCT_NO_STEP</a>(name)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a8fee90913ba658b25516a43cf71e5cbd">update_vector_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0)</td></tr>
188<tr class="separator:a64d779f80eeb923e0ab2313433f7b40b"><td class="memSeparator" colspan="2">&#160;</td></tr>
189<tr class="memitem:aebe814363556c244be043b13e7969197"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#aebe814363556c244be043b13e7969197">CONVERT_TO_IMAGE_STRUCT</a>(name)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a0a4395130f74a4293a7d3a19d8fac86d">update_image_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x, name##_stride_y, name##_step_y)</td></tr>
190<tr class="separator:aebe814363556c244be043b13e7969197"><td class="memSeparator" colspan="2">&#160;</td></tr>
191<tr class="memitem:a4334a4a76f8e9628c0fb9e1acf616e2a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a4334a4a76f8e9628c0fb9e1acf616e2a">CONVERT_TO_IMAGE_STRUCT_NO_STEP</a>(name)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a0a4395130f74a4293a7d3a19d8fac86d">update_image_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0, name##_stride_y, 0)</td></tr>
192<tr class="separator:a4334a4a76f8e9628c0fb9e1acf616e2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100193<tr class="memitem:a541f8db866a0fa93ee67d58ea31a7d0c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a541f8db866a0fa93ee67d58ea31a7d0c">CONVERT_TENSOR3D_TO_IMAGE_STRUCT</a>(name)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a65fd24237c8278ecb38183f93cc70f05">update_image_from_tensor3D_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x, name##_stride_y, name##_step_y, name##_stride_z, name##_step_z)</td></tr>
194<tr class="separator:a541f8db866a0fa93ee67d58ea31a7d0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
195<tr class="memitem:a071aa45af973feac43b14f62e54a6fce"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a071aa45af973feac43b14f62e54a6fce">CONVERT_TENSOR3D_TO_IMAGE_STRUCT_NO_STEP</a>(name)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a65fd24237c8278ecb38183f93cc70f05">update_image_from_tensor3D_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0, name##_stride_y, 0, name##_stride_z, name##_step_z)</td></tr>
196<tr class="separator:a071aa45af973feac43b14f62e54a6fce"><td class="memSeparator" colspan="2">&#160;</td></tr>
197<tr class="memitem:a541f8db866a0fa93ee67d58ea31a7d0c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a541f8db866a0fa93ee67d58ea31a7d0c">CONVERT_TENSOR3D_TO_IMAGE_STRUCT</a>(name)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a65fd24237c8278ecb38183f93cc70f05">update_image_from_tensor3D_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x, name##_stride_y, name##_step_y, name##_stride_z, name##_step_z)</td></tr>
198<tr class="separator:a541f8db866a0fa93ee67d58ea31a7d0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000199<tr class="memitem:a31c8c760f08fb1a331b16b7c204321dc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a31c8c760f08fb1a331b16b7c204321dc">CONVERT_TO_TENSOR3D_STRUCT</a>(name)</td></tr>
200<tr class="separator:a31c8c760f08fb1a331b16b7c204321dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
201<tr class="memitem:a79e8e562daa6599317d2d1cd86ef1bf2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a79e8e562daa6599317d2d1cd86ef1bf2">CONVERT_TO_TENSOR3D_STRUCT_NO_STEP</a>(name)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a912ccbcc4235bf1274c95d05b50440d4">update_tensor3D_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0, name##_stride_y, 0, name##_stride_z, 0)</td></tr>
202<tr class="separator:a79e8e562daa6599317d2d1cd86ef1bf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000203<tr class="memitem:a23b9032d1b9d59547545e457f82ee478"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a23b9032d1b9d59547545e457f82ee478">CONVERT_TO_TENSOR4D_STRUCT</a>(name, mod_size)</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100204<tr class="separator:a23b9032d1b9d59547545e457f82ee478"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000205<tr class="memitem:a302e05cc5f90bd76a9d0812c4be8b5eb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a302e05cc5f90bd76a9d0812c4be8b5eb">CONVERT_TO_TENSOR4D_STRUCT_NO_STEP</a>(name, mod_size)&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a87a9d201ccc6b81332852d562bb7ee13">update_tensor4D_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0, name##_stride_y, 0, name##_stride_z, 0, name##_stride_w, 0, mod_size)</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100206<tr class="separator:a302e05cc5f90bd76a9d0812c4be8b5eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000207</table><table class="memberdecls">
208<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
209Typedefs</h2></td></tr>
210<tr class="memitem:a6ded2cf071c127e518317e3c451af3ef"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_vector.xhtml">Vector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a6ded2cf071c127e518317e3c451af3ef">Vector</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000211<tr class="memdesc:a6ded2cf071c127e518317e3c451af3ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure to hold <a class="el" href="struct_vector.xhtml" title="Structure to hold Vector information. ">Vector</a> information. <a href="#a6ded2cf071c127e518317e3c451af3ef">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000212<tr class="separator:a6ded2cf071c127e518317e3c451af3ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
213<tr class="memitem:a9082e6aa9fd1705dc218cf44bc5a9d66"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_image.xhtml">Image</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a9082e6aa9fd1705dc218cf44bc5a9d66">Image</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000214<tr class="memdesc:a9082e6aa9fd1705dc218cf44bc5a9d66"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure to hold <a class="el" href="struct_image.xhtml" title="Structure to hold Image information. ">Image</a> information. <a href="#a9082e6aa9fd1705dc218cf44bc5a9d66">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000215<tr class="separator:a9082e6aa9fd1705dc218cf44bc5a9d66"><td class="memSeparator" colspan="2">&#160;</td></tr>
216<tr class="memitem:a1a857bfe99727c6051e9a3ee285d70f6"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_tensor3_d.xhtml">Tensor3D</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a1a857bfe99727c6051e9a3ee285d70f6">Tensor3D</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000217<tr class="memdesc:a1a857bfe99727c6051e9a3ee285d70f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure to hold 3D tensor information. <a href="#a1a857bfe99727c6051e9a3ee285d70f6">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000218<tr class="separator:a1a857bfe99727c6051e9a3ee285d70f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +0000219<tr class="memitem:a3b8a88f73e80a621aecfe7ced12c1676"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_tensor4_d.xhtml">Tensor4D</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a3b8a88f73e80a621aecfe7ced12c1676">Tensor4D</a></td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000220<tr class="memdesc:a3b8a88f73e80a621aecfe7ced12c1676"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure to hold 4D tensor information. <a href="#a3b8a88f73e80a621aecfe7ced12c1676">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100221<tr class="separator:a3b8a88f73e80a621aecfe7ced12c1676"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000222</table><table class="memberdecls">
223<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
224Functions</h2></td></tr>
225<tr class="memitem:a8fee90913ba658b25516a43cf71e5cbd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_vector.xhtml">Vector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a8fee90913ba658b25516a43cf71e5cbd">update_vector_workitem_ptr</a> (__global uchar *ptr, uint offset_first_element_in_bytes, uint stride_x, uint step_x)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000226<tr class="memdesc:a8fee90913ba658b25516a43cf71e5cbd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wrap vector information into an <a class="el" href="struct_vector.xhtml" title="Structure to hold Vector information. ">Vector</a> structure, and make the pointer point at this workitem's data. <a href="#a8fee90913ba658b25516a43cf71e5cbd">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000227<tr class="separator:a8fee90913ba658b25516a43cf71e5cbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
228<tr class="memitem:a0a4395130f74a4293a7d3a19d8fac86d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_image.xhtml">Image</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a0a4395130f74a4293a7d3a19d8fac86d">update_image_workitem_ptr</a> (__global uchar *ptr, uint offset_first_element_in_bytes, uint stride_x, uint step_x, uint stride_y, uint step_y)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000229<tr class="memdesc:a0a4395130f74a4293a7d3a19d8fac86d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wrap image information into an <a class="el" href="struct_image.xhtml" title="Structure to hold Image information. ">Image</a> structure, and make the pointer point at this workitem's data. <a href="#a0a4395130f74a4293a7d3a19d8fac86d">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000230<tr class="separator:a0a4395130f74a4293a7d3a19d8fac86d"><td class="memSeparator" colspan="2">&#160;</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100231<tr class="memitem:a65fd24237c8278ecb38183f93cc70f05"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_image.xhtml">Image</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a65fd24237c8278ecb38183f93cc70f05">update_image_from_tensor3D_workitem_ptr</a> (__global uchar *ptr, uint offset_first_element_in_bytes, uint stride_x, uint step_x, uint stride_y, uint step_y, uint stride_z, uint step_z)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000232<tr class="memdesc:a65fd24237c8278ecb38183f93cc70f05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wrap 3D tensor information into an image structure, and make the pointer point at this workitem's data. <a href="#a65fd24237c8278ecb38183f93cc70f05">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100233<tr class="separator:a65fd24237c8278ecb38183f93cc70f05"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000234<tr class="memitem:a912ccbcc4235bf1274c95d05b50440d4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_tensor3_d.xhtml">Tensor3D</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a912ccbcc4235bf1274c95d05b50440d4">update_tensor3D_workitem_ptr</a> (__global uchar *ptr, uint offset_first_element_in_bytes, uint stride_x, uint step_x, uint stride_y, uint step_y, uint stride_z, uint step_z)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000235<tr class="memdesc:a912ccbcc4235bf1274c95d05b50440d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wrap 3D tensor information into an tensor structure, and make the pointer point at this workitem's data. <a href="#a912ccbcc4235bf1274c95d05b50440d4">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000236<tr class="separator:a912ccbcc4235bf1274c95d05b50440d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +0000237<tr class="memitem:a87a9d201ccc6b81332852d562bb7ee13"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct_tensor4_d.xhtml">Tensor4D</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a87a9d201ccc6b81332852d562bb7ee13">update_tensor4D_workitem_ptr</a> (__global uchar *ptr, uint offset_first_element_in_bytes, uint stride_x, uint step_x, uint stride_y, uint step_y, uint stride_z, uint step_z, uint stride_w, uint step_w, uint mod_size)</td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100238<tr class="separator:a87a9d201ccc6b81332852d562bb7ee13"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier46d59272017-05-04 09:15:15 +0100239<tr class="memitem:a7e4940407322d6f0ccb8b6b86b856019"><td class="memItemLeft" align="right" valign="top">__global const uchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a7e4940407322d6f0ccb8b6b86b856019">vector_offset</a> (const <a class="el" href="struct_vector.xhtml">Vector</a> *vec, int x)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000240<tr class="memdesc:a7e4940407322d6f0ccb8b6b86b856019"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the pointer position of a <a class="el" href="struct_vector.xhtml" title="Structure to hold Vector information. ">Vector</a>. <a href="#a7e4940407322d6f0ccb8b6b86b856019">More...</a><br /></td></tr>
Anthony Barbier46d59272017-05-04 09:15:15 +0100241<tr class="separator:a7e4940407322d6f0ccb8b6b86b856019"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000242<tr class="memitem:a009469e4d9b8fce3b6d5e97d2077827d"><td class="memItemLeft" align="right" valign="top">__global uchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a009469e4d9b8fce3b6d5e97d2077827d">offset</a> (const <a class="el" href="struct_image.xhtml">Image</a> *img, int x, int y)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000243<tr class="memdesc:a009469e4d9b8fce3b6d5e97d2077827d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the pointer position of a <a class="el" href="struct_image.xhtml" title="Structure to hold Image information. ">Image</a>. <a href="#a009469e4d9b8fce3b6d5e97d2077827d">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000244<tr class="separator:a009469e4d9b8fce3b6d5e97d2077827d"><td class="memSeparator" colspan="2">&#160;</td></tr>
245<tr class="memitem:a2101b2fe0193ce227ae4e0945e321d85"><td class="memItemLeft" align="right" valign="top">__global const uchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#a2101b2fe0193ce227ae4e0945e321d85">tensor3D_offset</a> (const <a class="el" href="struct_tensor3_d.xhtml">Tensor3D</a> *tensor, int x, int y, int z)</td></tr>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000246<tr class="memdesc:a2101b2fe0193ce227ae4e0945e321d85"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the pointer position of a <a class="el" href="struct_tensor3_d.xhtml" title="Structure to hold 3D tensor information. ">Tensor3D</a>. <a href="#a2101b2fe0193ce227ae4e0945e321d85">More...</a><br /></td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000247<tr class="separator:a2101b2fe0193ce227ae4e0945e321d85"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +0000248<tr class="memitem:ad442fb5ec8be1fff97f543150de5d822"><td class="memItemLeft" align="right" valign="top">__global const uchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="helpers_8h.xhtml#ad442fb5ec8be1fff97f543150de5d822">tensor4D_offset</a> (const <a class="el" href="struct_tensor4_d.xhtml">Tensor4D</a> *tensor, int x, int y, int z, int w)</td></tr>
249<tr class="memdesc:ad442fb5ec8be1fff97f543150de5d822"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the pointer position of a <a class="el" href="struct_tensor4_d.xhtml" title="Structure to hold 4D tensor information. ">Tensor4D</a>. <a href="#ad442fb5ec8be1fff97f543150de5d822">More...</a><br /></td></tr>
Kaizen8938bd32017-09-28 14:38:23 +0100250<tr class="separator:ad442fb5ec8be1fff97f543150de5d822"><td class="memSeparator" colspan="2">&#160;</td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +0000251</table>
252<h2 class="groupheader">Macro Definition Documentation</h2>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000253<a class="anchor" id="a0f6ad555d097377151003a5119ccee45"></a>
254<div class="memitem">
255<div class="memproto">
256 <table class="memname">
257 <tr>
258 <td class="memname">#define CL_VEC_DATA_TYPE</td>
259 <td>(</td>
260 <td class="paramtype">&#160;</td>
261 <td class="paramname">type, </td>
262 </tr>
263 <tr>
264 <td class="paramkey"></td>
265 <td></td>
266 <td class="paramtype">&#160;</td>
Jenkinsb3a371b2018-05-23 11:36:53 +0100267 <td class="paramname">size&#160;</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000268 </tr>
269 <tr>
270 <td></td>
271 <td>)</td>
Jenkinsb3a371b2018-05-23 11:36:53 +0100272 <td></td><td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#aa38f54499d4724c4ab01f6da100b603b">CL_VEC_DATA_TYPE_STR</a>(type, size)</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000273 </tr>
274 </table>
275</div><div class="memdoc">
276
Jenkins52ba29e2018-08-29 15:32:11 +0000277<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00059">59</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000278
Jenkins52ba29e2018-08-29 15:32:11 +0000279<p>Referenced by <a class="el" href="softmax__layer_8cl_source.xhtml#l00157">softmax_layer_max_shift_exp_sum_serial()</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000280
281</div>
282</div>
283<a class="anchor" id="aa38f54499d4724c4ab01f6da100b603b"></a>
284<div class="memitem">
285<div class="memproto">
286 <table class="memname">
287 <tr>
288 <td class="memname">#define CL_VEC_DATA_TYPE_STR</td>
289 <td>(</td>
290 <td class="paramtype">&#160;</td>
291 <td class="paramname">type, </td>
292 </tr>
293 <tr>
294 <td class="paramkey"></td>
295 <td></td>
296 <td class="paramtype">&#160;</td>
Jenkinsb3a371b2018-05-23 11:36:53 +0100297 <td class="paramname">size&#160;</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000298 </tr>
299 <tr>
300 <td></td>
301 <td>)</td>
Jenkinsb3a371b2018-05-23 11:36:53 +0100302 <td></td><td>&#160;&#160;&#160;type##size</td>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000303 </tr>
304 </table>
305</div><div class="memdoc">
306
Jenkins52ba29e2018-08-29 15:32:11 +0000307<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00058">58</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000308
309</div>
310</div>
Anthony Barbier871448e2017-03-24 14:54:29 +0000311<a class="anchor" id="aabdbe431f2713c5c2604cb9872b66aab"></a>
312<div class="memitem">
313<div class="memproto">
314 <table class="memname">
315 <tr>
316 <td class="memname">#define CLAMP</td>
317 <td>(</td>
318 <td class="paramtype">&#160;</td>
319 <td class="paramname">x, </td>
320 </tr>
321 <tr>
322 <td class="paramkey"></td>
323 <td></td>
324 <td class="paramtype">&#160;</td>
325 <td class="paramname">min_val, </td>
326 </tr>
327 <tr>
328 <td class="paramkey"></td>
329 <td></td>
330 <td class="paramtype">&#160;</td>
331 <td class="paramname">max_val&#160;</td>
332 </tr>
333 <tr>
334 <td></td>
335 <td>)</td>
336 <td></td><td>&#160;&#160;&#160;min(max(x, min_val), max_val)</td>
337 </tr>
338 </table>
339</div><div class="memdoc">
340
Jenkins52ba29e2018-08-29 15:32:11 +0000341<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00047">47</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000342
343</div>
344</div>
345<a class="anchor" id="aa8d95ba04fc73845abc6045952cae5be"></a>
346<div class="memitem">
347<div class="memproto">
348 <table class="memname">
349 <tr>
350 <td class="memname">#define CONVERT</td>
351 <td>(</td>
352 <td class="paramtype">&#160;</td>
353 <td class="paramname">x, </td>
354 </tr>
355 <tr>
356 <td class="paramkey"></td>
357 <td></td>
358 <td class="paramtype">&#160;</td>
359 <td class="paramname">type&#160;</td>
360 </tr>
361 <tr>
362 <td></td>
363 <td>)</td>
364 <td></td><td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a4090567b3adb034c7cc1af308cb45670">CONVERT_STR</a>(x, type)</td>
365 </tr>
366 </table>
367</div><div class="memdoc">
368
Jenkins52ba29e2018-08-29 15:32:11 +0000369<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00062">62</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
370
371<p>Referenced by <a class="el" href="absdiff_8cl_source.xhtml#l00050">absdiff()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00067">arithmetic_add()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00168">arithmetic_div()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00118">arithmetic_sub()</a>, <a class="el" href="warp__helpers_8h_source.xhtml#l00094">bilinear_interpolate_with_border()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00043">convolution1x3()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00050">convolution1x5()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00052">convolution1x7()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00054">convolution1x9()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00087">convolution5x1()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00097">convolution7x1()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00108">convolution9x1()</a>, <a class="el" href="activation__layer__qa8_8cl_source.xhtml#l00030">logistic_op()</a>, <a class="el" href="minmaxloc_8cl_source.xhtml#l00065">minmax()</a>, <a class="el" href="pixelwise__mul__float_8cl_source.xhtml#l00067">pixelwise_mul_float()</a>, <a class="el" href="pixelwise__mul__int_8cl_source.xhtml#l00068">pixelwise_mul_int()</a>, <a class="el" href="scale_8cl_source.xhtml#l00207">scale_bilinear_nhwc()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00306">softmax_layer_max_shift_exp_sum_parallel()</a>, and <a class="el" href="softmax__layer_8cl_source.xhtml#l00157">softmax_layer_max_shift_exp_sum_serial()</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000372
373</div>
374</div>
375<a class="anchor" id="a23fb01b6f3453cc0e48a026fd44f6acd"></a>
376<div class="memitem">
377<div class="memproto">
378 <table class="memname">
379 <tr>
380 <td class="memname">#define CONVERT_SAT</td>
381 <td>(</td>
382 <td class="paramtype">&#160;</td>
383 <td class="paramname">x, </td>
384 </tr>
385 <tr>
386 <td class="paramkey"></td>
387 <td></td>
388 <td class="paramtype">&#160;</td>
389 <td class="paramname">type&#160;</td>
390 </tr>
391 <tr>
392 <td></td>
393 <td>)</td>
394 <td></td><td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a4e0fc93c9a69863dcdf7672ab547026c">CONVERT_SAT_STR</a>(x, type)</td>
395 </tr>
396 </table>
397</div><div class="memdoc">
398
Jenkins52ba29e2018-08-29 15:32:11 +0000399<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00065">65</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000400
401</div>
402</div>
403<a class="anchor" id="a28b2b123792a5b11a32cb05a6d327437"></a>
404<div class="memitem">
405<div class="memproto">
406 <table class="memname">
407 <tr>
408 <td class="memname">#define CONVERT_SAT_ROUND</td>
409 <td>(</td>
410 <td class="paramtype">&#160;</td>
411 <td class="paramname">x, </td>
412 </tr>
413 <tr>
414 <td class="paramkey"></td>
415 <td></td>
416 <td class="paramtype">&#160;</td>
417 <td class="paramname">type, </td>
418 </tr>
419 <tr>
420 <td class="paramkey"></td>
421 <td></td>
422 <td class="paramtype">&#160;</td>
423 <td class="paramname">round&#160;</td>
424 </tr>
425 <tr>
426 <td></td>
427 <td>)</td>
428 <td></td><td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a341a0c28698c3f6bd171df1771c5a512">CONVERT_SAT_ROUND_STR</a>(x, type, round)</td>
429 </tr>
430 </table>
431</div><div class="memdoc">
432
Jenkins52ba29e2018-08-29 15:32:11 +0000433<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00068">68</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000434
435<p>Referenced by <a class="el" href="canny_8cl_source.xhtml#l00121">combine_gradients_L2()</a>.</p>
436
437</div>
438</div>
439<a class="anchor" id="a341a0c28698c3f6bd171df1771c5a512"></a>
440<div class="memitem">
441<div class="memproto">
442 <table class="memname">
443 <tr>
444 <td class="memname">#define CONVERT_SAT_ROUND_STR</td>
445 <td>(</td>
446 <td class="paramtype">&#160;</td>
447 <td class="paramname">x, </td>
448 </tr>
449 <tr>
450 <td class="paramkey"></td>
451 <td></td>
452 <td class="paramtype">&#160;</td>
453 <td class="paramname">type, </td>
454 </tr>
455 <tr>
456 <td class="paramkey"></td>
457 <td></td>
458 <td class="paramtype">&#160;</td>
459 <td class="paramname">round&#160;</td>
460 </tr>
461 <tr>
462 <td></td>
463 <td>)</td>
464 <td></td><td>&#160;&#160;&#160;(convert_##type##_sat_##round((x)))</td>
465 </tr>
466 </table>
467</div><div class="memdoc">
468
Jenkins52ba29e2018-08-29 15:32:11 +0000469<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00067">67</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000470
471</div>
472</div>
473<a class="anchor" id="a4e0fc93c9a69863dcdf7672ab547026c"></a>
474<div class="memitem">
475<div class="memproto">
476 <table class="memname">
477 <tr>
478 <td class="memname">#define CONVERT_SAT_STR</td>
479 <td>(</td>
480 <td class="paramtype">&#160;</td>
481 <td class="paramname">x, </td>
482 </tr>
483 <tr>
484 <td class="paramkey"></td>
485 <td></td>
486 <td class="paramtype">&#160;</td>
487 <td class="paramname">type&#160;</td>
488 </tr>
489 <tr>
490 <td></td>
491 <td>)</td>
492 <td></td><td>&#160;&#160;&#160;(convert_##type##_sat((x)))</td>
493 </tr>
494 </table>
495</div><div class="memdoc">
496
Jenkins52ba29e2018-08-29 15:32:11 +0000497<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00064">64</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000498
499</div>
500</div>
501<a class="anchor" id="a4090567b3adb034c7cc1af308cb45670"></a>
502<div class="memitem">
503<div class="memproto">
504 <table class="memname">
505 <tr>
506 <td class="memname">#define CONVERT_STR</td>
507 <td>(</td>
508 <td class="paramtype">&#160;</td>
509 <td class="paramname">x, </td>
510 </tr>
511 <tr>
512 <td class="paramkey"></td>
513 <td></td>
514 <td class="paramtype">&#160;</td>
515 <td class="paramname">type&#160;</td>
516 </tr>
517 <tr>
518 <td></td>
519 <td>)</td>
520 <td></td><td>&#160;&#160;&#160;(convert_##type((x)))</td>
521 </tr>
522 </table>
523</div><div class="memdoc">
524
Jenkins52ba29e2018-08-29 15:32:11 +0000525<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00061">61</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100526
527</div>
528</div>
529<a class="anchor" id="a541f8db866a0fa93ee67d58ea31a7d0c"></a>
530<div class="memitem">
531<div class="memproto">
532 <table class="memname">
533 <tr>
534 <td class="memname">#define CONVERT_TENSOR3D_TO_IMAGE_STRUCT</td>
535 <td>(</td>
536 <td class="paramtype">&#160;</td>
537 <td class="paramname">name</td><td>)</td>
538 <td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a65fd24237c8278ecb38183f93cc70f05">update_image_from_tensor3D_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x, name##_stride_y, name##_step_y, name##_stride_z, name##_step_z)</td>
539 </tr>
540 </table>
541</div><div class="memdoc">
542
Jenkins52ba29e2018-08-29 15:32:11 +0000543<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00124">124</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100544
Jenkins52ba29e2018-08-29 15:32:11 +0000545<p>Referenced by <a class="el" href="softmax__layer_8cl_source.xhtml#l00306">softmax_layer_max_shift_exp_sum_parallel()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00157">softmax_layer_max_shift_exp_sum_serial()</a>, and <a class="el" href="softmax__layer_8cl_source.xhtml#l00100">softmax_layer_norm()</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100546
547</div>
548</div>
549<a class="anchor" id="a541f8db866a0fa93ee67d58ea31a7d0c"></a>
550<div class="memitem">
551<div class="memproto">
552 <table class="memname">
553 <tr>
554 <td class="memname">#define CONVERT_TENSOR3D_TO_IMAGE_STRUCT</td>
555 <td>(</td>
556 <td class="paramtype">&#160;</td>
557 <td class="paramname">name</td><td>)</td>
558 <td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a65fd24237c8278ecb38183f93cc70f05">update_image_from_tensor3D_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x, name##_stride_y, name##_step_y, name##_stride_z, name##_step_z)</td>
559 </tr>
560 </table>
561</div><div class="memdoc">
562
Jenkins52ba29e2018-08-29 15:32:11 +0000563<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00124">124</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100564
565</div>
566</div>
567<a class="anchor" id="a071aa45af973feac43b14f62e54a6fce"></a>
568<div class="memitem">
569<div class="memproto">
570 <table class="memname">
571 <tr>
572 <td class="memname">#define CONVERT_TENSOR3D_TO_IMAGE_STRUCT_NO_STEP</td>
573 <td>(</td>
574 <td class="paramtype">&#160;</td>
575 <td class="paramname">name</td><td>)</td>
576 <td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a65fd24237c8278ecb38183f93cc70f05">update_image_from_tensor3D_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0, name##_stride_y, 0, name##_stride_z, name##_step_z)</td>
577 </tr>
578 </table>
579</div><div class="memdoc">
580
Jenkins52ba29e2018-08-29 15:32:11 +0000581<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00121">121</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100582
Jenkins52ba29e2018-08-29 15:32:11 +0000583<p>Referenced by <a class="el" href="fill__border_8cl_source.xhtml#l00122">fill_image_borders_constant()</a>, <a class="el" href="fill__border_8cl_source.xhtml#l00046">fill_image_borders_replicate()</a>, and <a class="el" href="softmax__layer_8cl_source.xhtml#l00100">softmax_layer_norm()</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000584
585</div>
586</div>
587<a class="anchor" id="aebe814363556c244be043b13e7969197"></a>
588<div class="memitem">
589<div class="memproto">
590 <table class="memname">
591 <tr>
592 <td class="memname">#define CONVERT_TO_IMAGE_STRUCT</td>
593 <td>(</td>
594 <td class="paramtype">&#160;</td>
595 <td class="paramname">name</td><td>)</td>
596 <td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a0a4395130f74a4293a7d3a19d8fac86d">update_image_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x, name##_stride_y, name##_step_y)</td>
597 </tr>
598 </table>
599</div><div class="memdoc">
600
Jenkins52ba29e2018-08-29 15:32:11 +0000601<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00112">112</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000602
Jenkins52ba29e2018-08-29 15:32:11 +0000603<p>Referenced by <a class="el" href="absdiff_8cl_source.xhtml#l00050">absdiff()</a>, <a class="el" href="accumulate_8cl_source.xhtml#l00041">accumulate()</a>, <a class="el" href="accumulate_8cl_source.xhtml#l00112">accumulate_squared()</a>, <a class="el" href="accumulate_8cl_source.xhtml#l00076">accumulate_weighted()</a>, <a class="el" href="bitwise__op_8cl_source.xhtml#l00083">bitwise_and()</a>, <a class="el" href="bitwise__op_8cl_source.xhtml#l00149">bitwise_not()</a>, <a class="el" href="bitwise__op_8cl_source.xhtml#l00047">bitwise_or()</a>, <a class="el" href="bitwise__op_8cl_source.xhtml#l00119">bitwise_xor()</a>, <a class="el" href="channel__combine_8cl_source.xhtml#l00317">channel_combine_NV()</a>, <a class="el" href="channel__combine_8cl_source.xhtml#l00053">channel_combine_RGB888()</a>, <a class="el" href="channel__combine_8cl_source.xhtml#l00127">channel_combine_RGBA8888()</a>, <a class="el" href="channel__combine_8cl_source.xhtml#l00253">channel_combine_UYVY422()</a>, <a class="el" href="channel__combine_8cl_source.xhtml#l00198">channel_combine_YUYV422()</a>, <a class="el" href="channel__extract_8cl_source.xhtml#l00195">channel_extract_NV12()</a>, <a class="el" href="channel__extract_8cl_source.xhtml#l00230">channel_extract_NV21()</a>, <a class="el" href="channel__extract_8cl_source.xhtml#l00043">channel_extract_RGB888()</a>, <a class="el" href="channel__extract_8cl_source.xhtml#l00083">channel_extract_RGBA8888()</a>, <a class="el" href="channel__extract_8cl_source.xhtml#l00158">channel_extract_UYVY422()</a>, <a class="el" href="channel__extract_8cl_source.xhtml#l00122">channel_extract_YUYV422()</a>, <a class="el" href="canny_8cl_source.xhtml#l00057">combine_gradients_L1()</a>, <a class="el" href="canny_8cl_source.xhtml#l00121">combine_gradients_L2()</a>, <a class="el" href="depth__convert_8cl_source.xhtml#l00058">convert_depth_down()</a>, <a class="el" href="depth__convert_8cl_source.xhtml#l00098">convert_depth_up()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00123">convolution3x3_static()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00274">convolution5x5_static()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00323">convolution7x7_static()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00386">convolution9x9_static()</a>, <a class="el" href="convolution__rectangle_8cl_source.xhtml#l00064">convolution_rectangle()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00205">convolution_separable1x5_static()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00254">convolution_separable1x7_static()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00317">convolution_separable1x9_static()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00238">convolution_separable5x1_static()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00287">convolution_separable7x1_static()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00350">convolution_separable9x1_static()</a>, <a class="el" href="channel__extract_8cl_source.xhtml#l00262">copy_plane()</a>, <a class="el" href="channel__combine_8cl_source.xhtml#l00389">copy_planes_3p()</a>, <a class="el" href="fast__corners_8cl_source.xhtml#l00230">copy_to_keypoint()</a>, <a class="el" href="derivative_8cl_source.xhtml#l00050">derivative()</a>, <a class="el" href="dilate_8cl_source.xhtml#l00041">dilate()</a>, <a class="el" href="erode_8cl_source.xhtml#l00041">erode()</a>, <a class="el" href="fast__corners_8cl_source.xhtml#l00155">fast_corners()</a>, <a class="el" href="gaussian__pyramid_8cl_source.xhtml#l00043">gaussian1x5_sub_x()</a>, <a class="el" href="gaussian__pyramid_8cl_source.xhtml#l00088">gaussian5x1_sub_y()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00053">harris_score_3x3()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00210">harris_score_5x5()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00341">harris_score_7x7()</a>, <a class="el" href="histogram_8cl_source.xhtml#l00141">hist_border_kernel()</a>, <a class="el" href="histogram_8cl_source.xhtml#l00238">hist_border_kernel_fixed()</a>, <a class="el" href="histogram_8cl_source.xhtml#l00068">hist_local_kernel()</a>, <a class="el" href="histogram_8cl_source.xhtml#l00178">hist_local_kernel_fixed()</a>, <a class="el" href="integral__image_8cl_source.xhtml#l00041">integral_horizontal()</a>, <a class="el" href="integral__image_8cl_source.xhtml#l00085">integral_vertical()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l01743">IYUV_to_NV12_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l01502">IYUV_to_RGB888_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l01581">IYUV_to_RGBA8888_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l01673">IYUV_to_YUV444_bt709()</a>, <a class="el" href="magnitude__phase_8cl_source.xhtml#l00130">magnitude_phase()</a>, <a class="el" href="mean__stddev_8cl_source.xhtml#l00042">mean_stddev_accumulate()</a>, <a class="el" href="minmaxloc_8cl_source.xhtml#l00065">minmax()</a>, <a class="el" href="minmaxloc_8cl_source.xhtml#l00143">minmaxloc()</a>, <a class="el" href="non__linear__filter3x3_8cl_source.xhtml#l00044">non_linear_filter_box3x3()</a>, <a class="el" href="non__linear__filter5x5_8cl_source.xhtml#l00339">non_linear_filter_box5x5()</a>, <a class="el" href="non__linear__filter3x3_8cl_source.xhtml#l00099">non_linear_filter_cross3x3()</a>, <a class="el" href="non__linear__filter5x5_8cl_source.xhtml#l00387">non_linear_filter_cross5x5()</a>, <a class="el" href="non__linear__filter3x3_8cl_source.xhtml#l00150">non_linear_filter_disk3x3()</a>, <a class="el" href="non__linear__filter5x5_8cl_source.xhtml#l00444">non_linear_filter_disk5x5()</a>, <a class="el" href="nonmax_8cl_source.xhtml#l00041">non_max_suppression()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00989">NV12_to_IYUV_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00450">NV12_to_RGB888_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00907">NV12_to_RGBA8888_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l01051">NV12_to_YUV444_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l01325">NV21_to_IYUV_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l01105">NV21_to_RGB888_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l01176">NV21_to_RGBA8888_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l01259">NV21_to_YUV444_bt709()</a>, <a class="el" href="reduction__operation_8cl_source.xhtml#l00084">reduction_operation()</a>, <a class="el" href="remap_8cl_source.xhtml#l00113">remap_bilinear()</a>, <a class="el" href="remap_8cl_source.xhtml#l00059">remap_nearest_neighbour()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00594">RGB888_to_IYUV_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00365">RGB888_to_NV12_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00044">RGB888_to_RGBA8888_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00528">RGB888_to_YUV444_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00826">RGBA8888_to_IYUV_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00742">RGBA8888_to_NV12_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00085">RGBA8888_to_RGB888_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00682">RGBA8888_to_YUV444_bt709()</a>, <a class="el" href="scale_8cl_source.xhtml#l00122">scale_bilinear_nchw()</a>, <a class="el" href="scale_8cl_source.xhtml#l00086">scale_nearest_neighbour_nchw()</a>, <a class="el" href="scharr__filter_8cl_source.xhtml#l00050">scharr3x3()</a>, <a class="el" href="sobel__filter_8cl_source.xhtml#l00054">sobel3x3()</a>, <a class="el" href="sobel__filter_8cl_source.xhtml#l00259">sobel_separable1x5()</a>, <a class="el" href="sobel__filter_8cl_source.xhtml#l00442">sobel_separable1x7()</a>, <a class="el" href="sobel__filter_8cl_source.xhtml#l00325">sobel_separable5x1()</a>, <a class="el" href="sobel__filter_8cl_source.xhtml#l00506">sobel_separable7x1()</a>, <a class="el" href="canny_8cl_source.xhtml#l00189">suppress_non_maximum()</a>, <a class="el" href="tablelookup_8cl_source.xhtml#l00084">tablelookup_S16()</a>, <a class="el" href="tablelookup_8cl_source.xhtml#l00045">tablelookup_U8()</a>, <a class="el" href="threshold_8cl_source.xhtml#l00044">threshold_binary()</a>, <a class="el" href="threshold_8cl_source.xhtml#l00084">threshold_range()</a>, <a class="el" href="transpose_8cl_source.xhtml#l00148">transpose()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l01381">UYVY422_to_IYUV_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l01843">UYVY422_to_NV12_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00124">UYVY422_to_RGB888_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00182">UYVY422_to_RGBA8888_bt709()</a>, <a class="el" href="warp__affine_8cl_source.xhtml#l00111">warp_affine_bilinear()</a>, <a class="el" href="warp__affine_8cl_source.xhtml#l00079">warp_affine_nearest_neighbour()</a>, <a class="el" href="warp__perspective_8cl_source.xhtml#l00119">warp_perspective_bilinear()</a>, <a class="el" href="warp__perspective_8cl_source.xhtml#l00087">warp_perspective_nearest_neighbour()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l01442">YUYV422_to_IYUV_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l01794">YUYV422_to_NV12_bt709()</a>, <a class="el" href="color__convert_8cl_source.xhtml#l00241">YUYV422_to_RGB888_bt709()</a>, and <a class="el" href="color__convert_8cl_source.xhtml#l00299">YUYV422_to_RGBA8888_bt709()</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000604
605</div>
606</div>
607<a class="anchor" id="a4334a4a76f8e9628c0fb9e1acf616e2a"></a>
608<div class="memitem">
609<div class="memproto">
610 <table class="memname">
611 <tr>
612 <td class="memname">#define CONVERT_TO_IMAGE_STRUCT_NO_STEP</td>
613 <td>(</td>
614 <td class="paramtype">&#160;</td>
615 <td class="paramname">name</td><td>)</td>
616 <td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a0a4395130f74a4293a7d3a19d8fac86d">update_image_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0, name##_stride_y, 0)</td>
617 </tr>
618 </table>
619</div><div class="memdoc">
620
Jenkins52ba29e2018-08-29 15:32:11 +0000621<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00115">115</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000622
Jenkins52ba29e2018-08-29 15:32:11 +0000623<p>Referenced by <a class="el" href="canny_8cl_source.xhtml#l00325">hysteresis()</a>, <a class="el" href="optical__flow__pyramid__lk_8cl_source.xhtml#l00211">lktracker_stage0()</a>, <a class="el" href="optical__flow__pyramid__lk_8cl_source.xhtml#l00361">lktracker_stage1()</a>, <a class="el" href="remap_8cl_source.xhtml#l00113">remap_bilinear()</a>, <a class="el" href="remap_8cl_source.xhtml#l00059">remap_nearest_neighbour()</a>, <a class="el" href="scale_8cl_source.xhtml#l00122">scale_bilinear_nchw()</a>, <a class="el" href="scale_8cl_source.xhtml#l00086">scale_nearest_neighbour_nchw()</a>, <a class="el" href="warp__affine_8cl_source.xhtml#l00111">warp_affine_bilinear()</a>, <a class="el" href="warp__affine_8cl_source.xhtml#l00079">warp_affine_nearest_neighbour()</a>, <a class="el" href="warp__perspective_8cl_source.xhtml#l00119">warp_perspective_bilinear()</a>, and <a class="el" href="warp__perspective_8cl_source.xhtml#l00087">warp_perspective_nearest_neighbour()</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000624
625</div>
626</div>
627<a class="anchor" id="a31c8c760f08fb1a331b16b7c204321dc"></a>
628<div class="memitem">
629<div class="memproto">
630 <table class="memname">
631 <tr>
632 <td class="memname">#define CONVERT_TO_TENSOR3D_STRUCT</td>
633 <td>(</td>
634 <td class="paramtype">&#160;</td>
635 <td class="paramname">name</td><td>)</td>
636 <td></td>
637 </tr>
638 </table>
639</div><div class="memdoc">
Jenkins52ba29e2018-08-29 15:32:11 +0000640<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="helpers_8h.xhtml#a912ccbcc4235bf1274c95d05b50440d4">update_tensor3D_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x, name##_stride_y, name##_step_y, \</div><div class="line"> name##_stride_z, name##_step_z)</div><div class="ttc" id="helpers_8h_xhtml_a912ccbcc4235bf1274c95d05b50440d4"><div class="ttname"><a href="helpers_8h.xhtml#a912ccbcc4235bf1274c95d05b50440d4">update_tensor3D_workitem_ptr</a></div><div class="ttdeci">Tensor3D update_tensor3D_workitem_ptr(__global uchar *ptr, uint offset_first_element_in_bytes, uint stride_x, uint step_x, uint stride_y, uint step_y, uint stride_z, uint step_z)</div><div class="ttdoc">Wrap 3D tensor information into an tensor structure, and make the pointer point at this workitem&amp;#39;s da...</div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00263">helpers.h:263</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +0000641</div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +0000642<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00127">127</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000643
Jenkins52ba29e2018-08-29 15:32:11 +0000644<p>Referenced by <a class="el" href="arithmetic__op_8cl_source.xhtml#l00067">arithmetic_add()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00168">arithmetic_div()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00118">arithmetic_sub()</a>, <a class="el" href="copy__tensor_8cl_source.xhtml#l00045">copy_tensor()</a>, <a class="el" href="deconvolution__layer_8cl_source.xhtml#l00045">deconvolution_upsample()</a>, <a class="el" href="dequantization__layer_8cl_source.xhtml#l00049">dequantization_layer()</a>, <a class="el" href="floor_8cl_source.xhtml#l00049">floor_layer()</a>, <a class="el" href="normalization__layer_8cl_source.xhtml#l00060">normalization_layer_cross_map()</a>, <a class="el" href="normalization__layer_8cl_source.xhtml#l00119">normalization_layer_in_map()</a>, <a class="el" href="pixelwise__mul__float_8cl_source.xhtml#l00067">pixelwise_mul_float()</a>, <a class="el" href="pixelwise__mul__int_8cl_source.xhtml#l00068">pixelwise_mul_int()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00204">pooling_layer_2()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00268">pooling_layer_3()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00535">pooling_layer_MxN_nhwc()</a>, <a class="el" href="pooling__layer__quantized_8cl_source.xhtml#l00080">pooling_layer_MxN_quantized_nchw()</a>, <a class="el" href="pooling__layer__quantized_8cl_source.xhtml#l00166">pooling_layer_MxN_quantized_nhwc()</a>, <a class="el" href="quantization__layer_8cl_source.xhtml#l00049">quantization_layer()</a>, <a class="el" href="reshape__layer_8cl_source.xhtml#l00049">reshape_layer()</a>, <a class="el" href="scale_8cl_source.xhtml#l00207">scale_bilinear_nhwc()</a>, and <a class="el" href="scale_8cl_source.xhtml#l00162">scale_nearest_neighbour_nhwc()</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000645
646</div>
647</div>
648<a class="anchor" id="a79e8e562daa6599317d2d1cd86ef1bf2"></a>
649<div class="memitem">
650<div class="memproto">
651 <table class="memname">
652 <tr>
653 <td class="memname">#define CONVERT_TO_TENSOR3D_STRUCT_NO_STEP</td>
654 <td>(</td>
655 <td class="paramtype">&#160;</td>
656 <td class="paramname">name</td><td>)</td>
657 <td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a912ccbcc4235bf1274c95d05b50440d4">update_tensor3D_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0, name##_stride_y, 0, name##_stride_z, 0)</td>
658 </tr>
659 </table>
660</div><div class="memdoc">
661
Jenkins52ba29e2018-08-29 15:32:11 +0000662<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00131">131</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000663
Jenkins52ba29e2018-08-29 15:32:11 +0000664<p>Referenced by <a class="el" href="reshape__layer_8cl_source.xhtml#l00049">reshape_layer()</a>, <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00123">roi_pooling_layer()</a>, <a class="el" href="scale_8cl_source.xhtml#l00207">scale_bilinear_nhwc()</a>, and <a class="el" href="scale_8cl_source.xhtml#l00162">scale_nearest_neighbour_nhwc()</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100665
666</div>
667</div>
668<a class="anchor" id="a23b9032d1b9d59547545e457f82ee478"></a>
669<div class="memitem">
670<div class="memproto">
671 <table class="memname">
672 <tr>
673 <td class="memname">#define CONVERT_TO_TENSOR4D_STRUCT</td>
674 <td>(</td>
675 <td class="paramtype">&#160;</td>
676 <td class="paramname">name, </td>
677 </tr>
678 <tr>
679 <td class="paramkey"></td>
680 <td></td>
681 <td class="paramtype">&#160;</td>
682 <td class="paramname">mod_size&#160;</td>
683 </tr>
684 <tr>
685 <td></td>
686 <td>)</td>
687 <td></td><td></td>
688 </tr>
689 </table>
690</div><div class="memdoc">
Jenkins52ba29e2018-08-29 15:32:11 +0000691<b>Value:</b><div class="fragment"><div class="line"><a class="code" href="helpers_8h.xhtml#a87a9d201ccc6b81332852d562bb7ee13">update_tensor4D_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x, name##_stride_y, name##_step_y, \</div><div class="line"> name##_stride_z, name##_step_z, name##_stride_w, name##_step_w, mod_size)</div><div class="ttc" id="helpers_8h_xhtml_a87a9d201ccc6b81332852d562bb7ee13"><div class="ttname"><a href="helpers_8h.xhtml#a87a9d201ccc6b81332852d562bb7ee13">update_tensor4D_workitem_ptr</a></div><div class="ttdeci">Tensor4D update_tensor4D_workitem_ptr(__global uchar *ptr, uint offset_first_element_in_bytes, uint stride_x, uint step_x, uint stride_y, uint step_y, uint stride_z, uint step_z, uint stride_w, uint step_w, uint mod_size)</div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00277">helpers.h:277</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +0100692</div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +0000693<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00134">134</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100694
695</div>
696</div>
697<a class="anchor" id="a302e05cc5f90bd76a9d0812c4be8b5eb"></a>
698<div class="memitem">
699<div class="memproto">
700 <table class="memname">
701 <tr>
702 <td class="memname">#define CONVERT_TO_TENSOR4D_STRUCT_NO_STEP</td>
703 <td>(</td>
704 <td class="paramtype">&#160;</td>
705 <td class="paramname">name, </td>
706 </tr>
707 <tr>
708 <td class="paramkey"></td>
709 <td></td>
710 <td class="paramtype">&#160;</td>
711 <td class="paramname">mod_size&#160;</td>
712 </tr>
713 <tr>
714 <td></td>
715 <td>)</td>
716 <td></td><td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a87a9d201ccc6b81332852d562bb7ee13">update_tensor4D_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0, name##_stride_y, 0, name##_stride_z, 0, name##_stride_w, 0, mod_size)</td>
717 </tr>
718 </table>
719</div><div class="memdoc">
720
Jenkins52ba29e2018-08-29 15:32:11 +0000721<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00138">138</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000722
723</div>
724</div>
725<a class="anchor" id="a527bfdf5eeb306f1cf01c4a8e29f38e0"></a>
726<div class="memitem">
727<div class="memproto">
728 <table class="memname">
729 <tr>
730 <td class="memname">#define CONVERT_TO_VECTOR_STRUCT</td>
731 <td>(</td>
732 <td class="paramtype">&#160;</td>
733 <td class="paramname">name</td><td>)</td>
734 <td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a8fee90913ba658b25516a43cf71e5cbd">update_vector_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, name##_step_x)</td>
735 </tr>
736 </table>
737</div><div class="memdoc">
738
Jenkins52ba29e2018-08-29 15:32:11 +0000739<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00106">106</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000740
Jenkins52ba29e2018-08-29 15:32:11 +0000741<p>Referenced by <a class="el" href="dequantization__layer_8cl_source.xhtml#l00049">dequantization_layer()</a>, and <a class="el" href="l2__normalize_8cl_source.xhtml#l00045">l2_normalize()</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000742
743</div>
744</div>
745<a class="anchor" id="a64d779f80eeb923e0ab2313433f7b40b"></a>
746<div class="memitem">
747<div class="memproto">
748 <table class="memname">
749 <tr>
750 <td class="memname">#define CONVERT_TO_VECTOR_STRUCT_NO_STEP</td>
751 <td>(</td>
752 <td class="paramtype">&#160;</td>
753 <td class="paramname">name</td><td>)</td>
754 <td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a8fee90913ba658b25516a43cf71e5cbd">update_vector_workitem_ptr</a>(name##_ptr, name##_offset_first_element_in_bytes, name##_stride_x, 0)</td>
755 </tr>
756 </table>
757</div><div class="memdoc">
758
Jenkins52ba29e2018-08-29 15:32:11 +0000759<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00109">109</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100760
Jenkins52ba29e2018-08-29 15:32:11 +0000761<p>Referenced by <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00123">roi_pooling_layer()</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100762
763</div>
764</div>
765<a class="anchor" id="ae4b532a93c757194ec73b6790a3e6b1f"></a>
766<div class="memitem">
767<div class="memproto">
768 <table class="memname">
769 <tr>
770 <td class="memname">#define EXPAND</td>
771 <td>(</td>
772 <td class="paramtype">&#160;</td>
773 <td class="paramname">x</td><td>)</td>
774 <td>&#160;&#160;&#160;x</td>
775 </tr>
776 </table>
777</div><div class="memdoc">
778
Jenkins52ba29e2018-08-29 15:32:11 +0000779<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00045">45</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000780
Jenkins52ba29e2018-08-29 15:32:11 +0000781<p>Referenced by <a class="el" href="softmax__layer_8cl_source.xhtml#l00157">softmax_layer_max_shift_exp_sum_serial()</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000782
783</div>
784</div>
785<a class="anchor" id="a22f42fcf2077d951271df83b55c1a71a"></a>
786<div class="memitem">
787<div class="memproto">
788 <table class="memname">
789 <tr>
790 <td class="memname">#define IMAGE_DECLARATION</td>
791 <td>(</td>
792 <td class="paramtype">&#160;</td>
793 <td class="paramname">name</td><td>)</td>
794 <td></td>
795 </tr>
796 </table>
797</div><div class="memdoc">
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000798<b>Value:</b><div class="fragment"><div class="line">__global uchar *name##_ptr, \</div><div class="line"> uint name##_stride_x, \</div><div class="line"> uint name##_step_x, \</div><div class="line"> uint name##_stride_y, \</div><div class="line"> uint name##_step_y, \</div><div class="line"> uint name##_offset_first_element_in_bytes</div></div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +0000799<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00076">76</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000800
801</div>
802</div>
803<a class="anchor" id="a6b83038822d1ae7ab619b684ed3b7fc0"></a>
804<div class="memitem">
805<div class="memproto">
806 <table class="memname">
807 <tr>
808 <td class="memname">#define TENSOR3D_DECLARATION</td>
809 <td>(</td>
810 <td class="paramtype">&#160;</td>
811 <td class="paramname">name</td><td>)</td>
812 <td></td>
813 </tr>
814 </table>
815</div><div class="memdoc">
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000816<b>Value:</b><div class="fragment"><div class="line">__global uchar *name##_ptr, \</div><div class="line"> uint name##_stride_x, \</div><div class="line"> uint name##_step_x, \</div><div class="line"> uint name##_stride_y, \</div><div class="line"> uint name##_step_y, \</div><div class="line"> uint name##_stride_z, \</div><div class="line"> uint name##_step_z, \</div><div class="line"> uint name##_offset_first_element_in_bytes</div></div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +0000817<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00084">84</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000818
Kaizen8938bd32017-09-28 14:38:23 +0100819</div>
820</div>
821<a class="anchor" id="a481bdc6d61b3df9dcdbdb244f0f97790"></a>
822<div class="memitem">
823<div class="memproto">
824 <table class="memname">
825 <tr>
826 <td class="memname">#define TENSOR4D_DECLARATION</td>
827 <td>(</td>
828 <td class="paramtype">&#160;</td>
829 <td class="paramname">name</td><td>)</td>
830 <td></td>
831 </tr>
832 </table>
833</div><div class="memdoc">
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000834<b>Value:</b><div class="fragment"><div class="line">__global uchar *name##_ptr, \</div><div class="line"> uint name##_stride_x, \</div><div class="line"> uint name##_step_x, \</div><div class="line"> uint name##_stride_y, \</div><div class="line"> uint name##_step_y, \</div><div class="line"> uint name##_stride_z, \</div><div class="line"> uint name##_step_z, \</div><div class="line"> uint name##_stride_w, \</div><div class="line"> uint name##_step_w, \</div><div class="line"> uint name##_offset_first_element_in_bytes</div></div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +0000835<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00094">94</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbierdbdab852017-06-23 15:42:00 +0100836
Anthony Barbier871448e2017-03-24 14:54:29 +0000837</div>
838</div>
839<a class="anchor" id="a36f754c05b6fddf6df0d8d0a74f8159f"></a>
840<div class="memitem">
841<div class="memproto">
842 <table class="memname">
843 <tr>
844 <td class="memname">#define VEC_DATA_TYPE</td>
845 <td>(</td>
846 <td class="paramtype">&#160;</td>
847 <td class="paramname">type, </td>
848 </tr>
849 <tr>
850 <td class="paramkey"></td>
851 <td></td>
852 <td class="paramtype">&#160;</td>
Jenkinsb3a371b2018-05-23 11:36:53 +0100853 <td class="paramname">size&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +0000854 </tr>
855 <tr>
856 <td></td>
857 <td>)</td>
Jenkinsb3a371b2018-05-23 11:36:53 +0100858 <td></td><td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#ae802822defb0fa3a7f74f98e324696cb">VEC_DATA_TYPE_STR</a>(type, size)</td>
Anthony Barbier871448e2017-03-24 14:54:29 +0000859 </tr>
860 </table>
861</div><div class="memdoc">
862
Jenkins52ba29e2018-08-29 15:32:11 +0000863<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00056">56</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
864
865<p>Referenced by <a class="el" href="absdiff_8cl_source.xhtml#l00050">absdiff()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00067">arithmetic_add()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00168">arithmetic_div()</a>, <a class="el" href="arithmetic__op_8cl_source.xhtml#l00118">arithmetic_sub()</a>, <a class="el" href="warp__helpers_8h_source.xhtml#l00094">bilinear_interpolate_with_border()</a>, <a class="el" href="canny_8cl_source.xhtml#l00057">combine_gradients_L1()</a>, <a class="el" href="canny_8cl_source.xhtml#l00121">combine_gradients_L2()</a>, <a class="el" href="depth__convert_8cl_source.xhtml#l00058">convert_depth_down()</a>, <a class="el" href="depth__convert_8cl_source.xhtml#l00098">convert_depth_up()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00043">convolution1x3()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00050">convolution1x5()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00052">convolution1x7()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00054">convolution1x9()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00082">convolution3x3()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00123">convolution3x3_static()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00087">convolution5x1()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00159">convolution5x5()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00274">convolution5x5_static()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00097">convolution7x1()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00202">convolution7x7()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00323">convolution7x7_static()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00108">convolution9x1()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00256">convolution9x9()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00386">convolution9x9_static()</a>, <a class="el" href="convolution__rectangle_8cl_source.xhtml#l00064">convolution_rectangle()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00205">convolution_separable1x5_static()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00254">convolution_separable1x7_static()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00317">convolution_separable1x9_static()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00238">convolution_separable5x1_static()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00287">convolution_separable7x1_static()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00350">convolution_separable9x1_static()</a>, <a class="el" href="copy__tensor_8cl_source.xhtml#l00045">copy_tensor()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00138">harris_score_1x5()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00253">harris_score_1x7()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00053">harris_score_3x3()</a>, <a class="el" href="canny_8cl_source.xhtml#l00325">hysteresis()</a>, <a class="el" href="l2__normalize_8cl_source.xhtml#l00045">l2_normalize()</a>, <a class="el" href="magnitude__phase_8cl_source.xhtml#l00033">magnitude_l1()</a>, <a class="el" href="magnitude__phase_8cl_source.xhtml#l00045">magnitude_l2()</a>, <a class="el" href="magnitude__phase_8cl_source.xhtml#l00130">magnitude_phase()</a>, <a class="el" href="minmaxloc_8cl_source.xhtml#l00065">minmax()</a>, <a class="el" href="nonmax_8cl_source.xhtml#l00041">non_max_suppression()</a>, <a class="el" href="normalization__layer_8cl_source.xhtml#l00060">normalization_layer_cross_map()</a>, <a class="el" href="normalization__layer_8cl_source.xhtml#l00119">normalization_layer_in_map()</a>, <a class="el" href="pixelwise__mul__float_8cl_source.xhtml#l00067">pixelwise_mul_float()</a>, <a class="el" href="pixelwise__mul__int_8cl_source.xhtml#l00068">pixelwise_mul_int()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00204">pooling_layer_2()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00268">pooling_layer_3()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00535">pooling_layer_MxN_nhwc()</a>, <a class="el" href="warp__helpers_8h_source.xhtml#l00058">read_texels4()</a>, <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00061">roi_pool_1x1()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00306">softmax_layer_max_shift_exp_sum_parallel()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00157">softmax_layer_max_shift_exp_sum_serial()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00100">softmax_layer_norm()</a>, <a class="el" href="reduction__operation_8cl_source.xhtml#l00032">square_sum()</a>, <a class="el" href="reduction__operation_8cl_source.xhtml#l00052">sum()</a>, <a class="el" href="transpose_8cl_source.xhtml#l00148">transpose()</a>, <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00036">vec4_max()</a>, and <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00043">vec8_max()</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000866
867</div>
868</div>
869<a class="anchor" id="ae802822defb0fa3a7f74f98e324696cb"></a>
870<div class="memitem">
871<div class="memproto">
872 <table class="memname">
873 <tr>
874 <td class="memname">#define VEC_DATA_TYPE_STR</td>
875 <td>(</td>
876 <td class="paramtype">&#160;</td>
877 <td class="paramname">type, </td>
878 </tr>
879 <tr>
880 <td class="paramkey"></td>
881 <td></td>
882 <td class="paramtype">&#160;</td>
Jenkinsb3a371b2018-05-23 11:36:53 +0100883 <td class="paramname">size&#160;</td>
Anthony Barbier871448e2017-03-24 14:54:29 +0000884 </tr>
885 <tr>
886 <td></td>
887 <td>)</td>
Jenkinsb3a371b2018-05-23 11:36:53 +0100888 <td></td><td>&#160;&#160;&#160;type##size</td>
Anthony Barbier871448e2017-03-24 14:54:29 +0000889 </tr>
890 </table>
891</div><div class="memdoc">
892
Jenkins52ba29e2018-08-29 15:32:11 +0000893<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00055">55</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000894
895</div>
896</div>
897<a class="anchor" id="a40a6eb9f2a7712f08d6bb8ff6c9e6ca7"></a>
898<div class="memitem">
899<div class="memproto">
900 <table class="memname">
901 <tr>
902 <td class="memname">#define VECTOR_DECLARATION</td>
903 <td>(</td>
904 <td class="paramtype">&#160;</td>
905 <td class="paramname">name</td><td>)</td>
906 <td></td>
907 </tr>
908 </table>
909</div><div class="memdoc">
Anthony Barbier8140e1e2017-12-14 23:48:46 +0000910<b>Value:</b><div class="fragment"><div class="line">__global uchar *name##_ptr, \</div><div class="line"> uint name##_stride_x, \</div><div class="line"> uint name##_step_x, \</div><div class="line"> uint name##_offset_first_element_in_bytes</div></div><!-- fragment -->
Jenkins52ba29e2018-08-29 15:32:11 +0000911<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00070">70</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100912
913</div>
914</div>
915<a class="anchor" id="a287e2fc366c312b468382c95bb90f91f"></a>
916<div class="memitem">
917<div class="memproto">
918 <table class="memname">
919 <tr>
920 <td class="memname">#define VLOAD</td>
921 <td>(</td>
922 <td class="paramtype">&#160;</td>
Jenkinsb3a371b2018-05-23 11:36:53 +0100923 <td class="paramname">size</td><td>)</td>
924 <td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#a29367a809c14c294feefc1a8dad93752">VLOAD_STR</a>(size)</td>
Kaizen8938bd32017-09-28 14:38:23 +0100925 </tr>
926 </table>
927</div><div class="memdoc">
928
Jenkins52ba29e2018-08-29 15:32:11 +0000929<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00050">50</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100930
Jenkins52ba29e2018-08-29 15:32:11 +0000931<p>Referenced by <a class="el" href="copy__tensor_8cl_source.xhtml#l00045">copy_tensor()</a>, <a class="el" href="floor_8cl_source.xhtml#l00049">floor_layer()</a>, <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00061">roi_pool_1x1()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00306">softmax_layer_max_shift_exp_sum_parallel()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00157">softmax_layer_max_shift_exp_sum_serial()</a>, and <a class="el" href="transpose_8cl_source.xhtml#l00148">transpose()</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100932
933</div>
934</div>
935<a class="anchor" id="a29367a809c14c294feefc1a8dad93752"></a>
936<div class="memitem">
937<div class="memproto">
938 <table class="memname">
939 <tr>
940 <td class="memname">#define VLOAD_STR</td>
941 <td>(</td>
942 <td class="paramtype">&#160;</td>
Jenkinsb3a371b2018-05-23 11:36:53 +0100943 <td class="paramname">size</td><td>)</td>
944 <td>&#160;&#160;&#160;vload##size</td>
Kaizen8938bd32017-09-28 14:38:23 +0100945 </tr>
946 </table>
947</div><div class="memdoc">
948
Jenkins52ba29e2018-08-29 15:32:11 +0000949<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00049">49</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100950
951</div>
952</div>
953<a class="anchor" id="acb282042d1edeeaa3cc979a206f78b54"></a>
954<div class="memitem">
955<div class="memproto">
956 <table class="memname">
957 <tr>
958 <td class="memname">#define VSTORE</td>
959 <td>(</td>
960 <td class="paramtype">&#160;</td>
Jenkinsb3a371b2018-05-23 11:36:53 +0100961 <td class="paramname">size</td><td>)</td>
962 <td>&#160;&#160;&#160;<a class="el" href="helpers_8h.xhtml#aeedcb2d8b4b0ce17747474d4da15f199">VSTORE_STR</a>(size)</td>
Kaizen8938bd32017-09-28 14:38:23 +0100963 </tr>
964 </table>
965</div><div class="memdoc">
966
Jenkins52ba29e2018-08-29 15:32:11 +0000967<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00053">53</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100968
Jenkins52ba29e2018-08-29 15:32:11 +0000969<p>Referenced by <a class="el" href="copy__tensor_8cl_source.xhtml#l00045">copy_tensor()</a>, <a class="el" href="floor_8cl_source.xhtml#l00049">floor_layer()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00306">softmax_layer_max_shift_exp_sum_parallel()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00157">softmax_layer_max_shift_exp_sum_serial()</a>, and <a class="el" href="transpose_8cl_source.xhtml#l00148">transpose()</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +0100970
971</div>
972</div>
973<a class="anchor" id="aeedcb2d8b4b0ce17747474d4da15f199"></a>
974<div class="memitem">
975<div class="memproto">
976 <table class="memname">
977 <tr>
978 <td class="memname">#define VSTORE_STR</td>
979 <td>(</td>
980 <td class="paramtype">&#160;</td>
Jenkinsb3a371b2018-05-23 11:36:53 +0100981 <td class="paramname">size</td><td>)</td>
982 <td>&#160;&#160;&#160;vstore##size</td>
Kaizen8938bd32017-09-28 14:38:23 +0100983 </tr>
984 </table>
985</div><div class="memdoc">
986
Jenkins52ba29e2018-08-29 15:32:11 +0000987<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00052">52</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +0000988
989</div>
990</div>
991<h2 class="groupheader">Typedef Documentation</h2>
992<a class="anchor" id="a9082e6aa9fd1705dc218cf44bc5a9d66"></a>
993<div class="memitem">
994<div class="memproto">
995 <table class="memname">
996 <tr>
997 <td class="memname">typedef struct <a class="el" href="struct_image.xhtml">Image</a> <a class="el" href="struct_image.xhtml">Image</a></td>
998 </tr>
999 </table>
1000</div><div class="memdoc">
1001
1002<p>Structure to hold <a class="el" href="struct_image.xhtml" title="Structure to hold Image information. ">Image</a> information. </p>
1003
1004</div>
1005</div>
1006<a class="anchor" id="a1a857bfe99727c6051e9a3ee285d70f6"></a>
1007<div class="memitem">
1008<div class="memproto">
1009 <table class="memname">
1010 <tr>
1011 <td class="memname">typedef struct <a class="el" href="struct_tensor3_d.xhtml">Tensor3D</a> <a class="el" href="struct_tensor3_d.xhtml">Tensor3D</a></td>
1012 </tr>
1013 </table>
1014</div><div class="memdoc">
1015
1016<p>Structure to hold 3D tensor information. </p>
1017
1018</div>
1019</div>
Kaizen8938bd32017-09-28 14:38:23 +01001020<a class="anchor" id="a3b8a88f73e80a621aecfe7ced12c1676"></a>
1021<div class="memitem">
1022<div class="memproto">
1023 <table class="memname">
1024 <tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00001025 <td class="memname">typedef struct <a class="el" href="struct_tensor4_d.xhtml">Tensor4D</a> <a class="el" href="struct_tensor4_d.xhtml">Tensor4D</a></td>
Kaizen8938bd32017-09-28 14:38:23 +01001026 </tr>
1027 </table>
1028</div><div class="memdoc">
1029
1030<p>Structure to hold 4D tensor information. </p>
1031
1032</div>
1033</div>
Anthony Barbier871448e2017-03-24 14:54:29 +00001034<a class="anchor" id="a6ded2cf071c127e518317e3c451af3ef"></a>
1035<div class="memitem">
1036<div class="memproto">
1037 <table class="memname">
1038 <tr>
1039 <td class="memname">typedef struct <a class="el" href="struct_vector.xhtml">Vector</a> <a class="el" href="struct_vector.xhtml">Vector</a></td>
1040 </tr>
1041 </table>
1042</div><div class="memdoc">
1043
1044<p>Structure to hold <a class="el" href="struct_vector.xhtml" title="Structure to hold Vector information. ">Vector</a> information. </p>
1045
1046</div>
1047</div>
1048<h2 class="groupheader">Function Documentation</h2>
1049<a class="anchor" id="a009469e4d9b8fce3b6d5e97d2077827d"></a>
1050<div class="memitem">
1051<div class="memproto">
1052<table class="mlabels">
1053 <tr>
1054 <td class="mlabels-left">
1055 <table class="memname">
1056 <tr>
1057 <td class="memname">__global uchar* offset </td>
1058 <td>(</td>
1059 <td class="paramtype">const <a class="el" href="struct_image.xhtml">Image</a> *&#160;</td>
1060 <td class="paramname"><em>img</em>, </td>
1061 </tr>
1062 <tr>
1063 <td class="paramkey"></td>
1064 <td></td>
1065 <td class="paramtype">int&#160;</td>
1066 <td class="paramname"><em>x</em>, </td>
1067 </tr>
1068 <tr>
1069 <td class="paramkey"></td>
1070 <td></td>
1071 <td class="paramtype">int&#160;</td>
1072 <td class="paramname"><em>y</em>&#160;</td>
1073 </tr>
1074 <tr>
1075 <td></td>
1076 <td>)</td>
1077 <td></td><td></td>
1078 </tr>
1079 </table>
1080 </td>
1081 <td class="mlabels-right">
1082<span class="mlabels"><span class="mlabel">inline</span></span> </td>
1083 </tr>
1084</table>
1085</div><div class="memdoc">
1086
1087<p>Get the pointer position of a <a class="el" href="struct_image.xhtml" title="Structure to hold Image information. ">Image</a>. </p>
1088<dl class="params"><dt>Parameters</dt><dd>
1089 <table class="params">
1090 <tr><td class="paramdir">[in]</td><td class="paramname">img</td><td>Pointer to the starting position of the buffer </td></tr>
1091 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Relative X position </td></tr>
1092 <tr><td class="paramdir">[in]</td><td class="paramname">y</td><td>Relative Y position </td></tr>
1093 </table>
1094 </dd>
1095</dl>
1096
Jenkins52ba29e2018-08-29 15:32:11 +00001097<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00311">311</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00001098
Jenkins52ba29e2018-08-29 15:32:11 +00001099<p>References <a class="el" href="helpers_8h_source.xhtml#l00152">Image::ptr</a>, <a class="el" href="helpers_8h_source.xhtml#l00154">Image::stride_x</a>, and <a class="el" href="helpers_8h_source.xhtml#l00155">Image::stride_y</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00001100
Jenkins52ba29e2018-08-29 15:32:11 +00001101<p>Referenced by <a class="el" href="warp__helpers_8h_source.xhtml#l00094">bilinear_interpolate_with_border()</a>, <a class="el" href="channel__combine_8cl_source.xhtml#l00317">channel_combine_NV()</a>, <a class="el" href="_color_convert_helper_8h_source.xhtml#l00337">arm_compute::test::colorconvert_helper::detail::colorconvert_nv12_to_rgb()</a>, <a class="el" href="_color_convert_helper_8h_source.xhtml#l00682">arm_compute::test::colorconvert_helper::detail::colorconvert_yuyv_to_iyuv()</a>, <a class="el" href="_color_convert_helper_8h_source.xhtml#l00620">arm_compute::test::colorconvert_helper::detail::colorconvert_yuyv_to_nv12()</a>, <a class="el" href="_color_convert_helper_8h_source.xhtml#l00246">arm_compute::test::colorconvert_helper::detail::colorconvert_yuyv_to_rgb()</a>, <a class="el" href="convolution3x3_8cl_source.xhtml#l00082">convolution3x3()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00087">convolution5x1()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00159">convolution5x5()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00097">convolution7x1()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00202">convolution7x7()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00108">convolution9x1()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00256">convolution9x9()</a>, <a class="el" href="convolution__rectangle_8cl_source.xhtml#l00064">convolution_rectangle()</a>, <a class="el" href="convolution5x5_8cl_source.xhtml#l00205">convolution_separable1x5_static()</a>, <a class="el" href="convolution7x7_8cl_source.xhtml#l00254">convolution_separable1x7_static()</a>, <a class="el" href="convolution9x9_8cl_source.xhtml#l00317">convolution_separable1x9_static()</a>, <a class="el" href="channel__combine_8cl_source.xhtml#l00389">copy_planes_3p()</a>, <a class="el" href="fast__corners_8cl_source.xhtml#l00230">copy_to_keypoint()</a>, <a class="el" href="_tensor_info_8cpp_source.xhtml#l00044">arm_compute::test::validation::DATA_TEST_CASE()</a>, <a class="el" href="derivative_8cl_source.xhtml#l00050">derivative()</a>, <a class="el" href="dilate_8cl_source.xhtml#l00041">dilate()</a>, <a class="el" href="erode_8cl_source.xhtml#l00041">erode()</a>, <a class="el" href="validation_2reference_2_fast_corners_8cpp_source.xhtml#l00152">arm_compute::test::validation::reference::fast_corners()</a>, <a class="el" href="_assets_library_8h_source.xhtml#l00493">AssetsLibrary::fill()</a>, <a class="el" href="fill__border_8cl_source.xhtml#l00122">fill_image_borders_constant()</a>, <a class="el" href="fill__border_8cl_source.xhtml#l00046">fill_image_borders_replicate()</a>, <a class="el" href="gaussian__pyramid_8cl_source.xhtml#l00088">gaussian5x1_sub_y()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00138">harris_score_1x5()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00253">harris_score_1x7()</a>, <a class="el" href="harris__corners_8cl_source.xhtml#l00053">harris_score_3x3()</a>, <a class="el" href="histogram_8cl_source.xhtml#l00141">hist_border_kernel()</a>, <a class="el" href="validation_2reference_2_histogram_8cpp_source.xhtml#l00038">arm_compute::test::validation::reference::histogram()</a>, <a class="el" href="canny_8cl_source.xhtml#l00325">hysteresis()</a>, <a class="el" href="integral__image_8cl_source.xhtml#l00041">integral_horizontal()</a>, <a class="el" href="integral__image_8cl_source.xhtml#l00085">integral_vertical()</a>, <a class="el" href="optical__flow__pyramid__lk_8cl_source.xhtml#l00211">lktracker_stage0()</a>, <a class="el" href="optical__flow__pyramid__lk_8cl_source.xhtml#l00361">lktracker_stage1()</a>, <a class="el" href="mean__stddev_8cl_source.xhtml#l00042">mean_stddev_accumulate()</a>, <a class="el" href="minmaxloc_8cl_source.xhtml#l00065">minmax()</a>, <a class="el" href="non__linear__filter3x3_8cl_source.xhtml#l00044">non_linear_filter_box3x3()</a>, <a class="el" href="non__linear__filter5x5_8cl_source.xhtml#l00339">non_linear_filter_box5x5()</a>, <a class="el" href="non__linear__filter3x3_8cl_source.xhtml#l00099">non_linear_filter_cross3x3()</a>, <a class="el" href="non__linear__filter5x5_8cl_source.xhtml#l00387">non_linear_filter_cross5x5()</a>, <a class="el" href="non__linear__filter3x3_8cl_source.xhtml#l00150">non_linear_filter_disk3x3()</a>, <a class="el" href="non__linear__filter5x5_8cl_source.xhtml#l00444">non_linear_filter_disk5x5()</a>, <a class="el" href="nonmax_8cl_source.xhtml#l00041">non_max_suppression()</a>, <a class="el" href="_color_convert_helper_8h_source.xhtml#l00745">arm_compute::test::colorconvert_helper::detail::nv_to_iyuv()</a>, <a class="el" href="_color_convert_helper_8h_source.xhtml#l00768">arm_compute::test::colorconvert_helper::detail::nv_to_yuv4()</a>, <a class="el" href="arm__compute_2core_2_types_8h_source.xhtml#l00149">QuantizationInfo::operator==()</a>, <a class="el" href="_simple_tensor_8h_source.xhtml#l00270">SimpleTensor&lt; T &gt;::operator[]()</a>, <a class="el" href="_padding_calculator_8h_source.xhtml#l00051">PaddingCalculator::PaddingCalculator()</a>, <a class="el" href="_graph_utils_8cpp_source.xhtml#l00494">RandomAccessor::RandomAccessor()</a>, <a class="el" href="warp__helpers_8h_source.xhtml#l00058">read_texels4()</a>, <a class="el" href="reduction__operation_8cl_source.xhtml#l00084">reduction_operation()</a>, <a class="el" href="scharr__filter_8cl_source.xhtml#l00050">scharr3x3()</a>, <a class="el" href="_padding_calculator_8h_source.xhtml#l00127">PaddingCalculator::set_access_offset()</a>, <a class="el" href="sobel__filter_8cl_source.xhtml#l00154">sobel1x5()</a>, <a class="el" href="sobel__filter_8cl_source.xhtml#l00054">sobel3x3()</a>, <a class="el" href="sobel__filter_8cl_source.xhtml#l00206">sobel5x1()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00306">softmax_layer_max_shift_exp_sum_parallel()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00157">softmax_layer_max_shift_exp_sum_serial()</a>, <a class="el" href="softmax__layer_8cl_source.xhtml#l00100">softmax_layer_norm()</a>, <a class="el" href="canny_8cl_source.xhtml#l00189">suppress_non_maximum()</a>, <a class="el" href="transpose_8cl_source.xhtml#l00148">transpose()</a>, and <a class="el" href="reference_2_width_concatenate_layer_8cpp_source.xhtml#l00037">arm_compute::test::validation::reference::widthconcatenate_layer()</a>.</p>
1102<div class="fragment"><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;{</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">return</span> img-&gt;<a class="code" href="struct_image.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> + x * img-&gt;<a class="code" href="struct_image.xhtml#ae01febbfd0689ef709f3ff6fdd2abc7e">stride_x</a> + y * img-&gt;<a class="code" href="struct_image.xhtml#a4f0b90c9ecd6e57ceb3f37332fefe8f1">stride_y</a>;</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;}</div><div class="ttc" id="struct_image_xhtml_acf52c23cbd7424606c10a606524e3e32"><div class="ttname"><a href="struct_image.xhtml#acf52c23cbd7424606c10a606524e3e32">Image::ptr</a></div><div class="ttdeci">__global uchar * ptr</div><div class="ttdoc">Pointer to the starting postion of the buffer. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00152">helpers.h:152</a></div></div>
1103<div class="ttc" id="struct_image_xhtml_a4f0b90c9ecd6e57ceb3f37332fefe8f1"><div class="ttname"><a href="struct_image.xhtml#a4f0b90c9ecd6e57ceb3f37332fefe8f1">Image::stride_y</a></div><div class="ttdeci">int stride_y</div><div class="ttdoc">Stride of the image in Y dimension (in bytes) </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00155">helpers.h:155</a></div></div>
1104<div class="ttc" id="struct_image_xhtml_ae01febbfd0689ef709f3ff6fdd2abc7e"><div class="ttname"><a href="struct_image.xhtml#ae01febbfd0689ef709f3ff6fdd2abc7e">Image::stride_x</a></div><div class="ttdeci">int stride_x</div><div class="ttdoc">Stride of the image in X dimension (in bytes) </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00154">helpers.h:154</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00001105</div><!-- fragment -->
1106</div>
1107</div>
1108<a class="anchor" id="a2101b2fe0193ce227ae4e0945e321d85"></a>
1109<div class="memitem">
1110<div class="memproto">
1111<table class="mlabels">
1112 <tr>
1113 <td class="mlabels-left">
1114 <table class="memname">
1115 <tr>
1116 <td class="memname">__global const uchar* tensor3D_offset </td>
1117 <td>(</td>
1118 <td class="paramtype">const <a class="el" href="struct_tensor3_d.xhtml">Tensor3D</a> *&#160;</td>
1119 <td class="paramname"><em>tensor</em>, </td>
1120 </tr>
1121 <tr>
1122 <td class="paramkey"></td>
1123 <td></td>
1124 <td class="paramtype">int&#160;</td>
1125 <td class="paramname"><em>x</em>, </td>
1126 </tr>
1127 <tr>
1128 <td class="paramkey"></td>
1129 <td></td>
1130 <td class="paramtype">int&#160;</td>
1131 <td class="paramname"><em>y</em>, </td>
1132 </tr>
1133 <tr>
1134 <td class="paramkey"></td>
1135 <td></td>
1136 <td class="paramtype">int&#160;</td>
1137 <td class="paramname"><em>z</em>&#160;</td>
1138 </tr>
1139 <tr>
1140 <td></td>
1141 <td>)</td>
1142 <td></td><td></td>
1143 </tr>
1144 </table>
1145 </td>
1146 <td class="mlabels-right">
1147<span class="mlabels"><span class="mlabel">inline</span></span> </td>
1148 </tr>
1149</table>
1150</div><div class="memdoc">
1151
1152<p>Get the pointer position of a <a class="el" href="struct_tensor3_d.xhtml" title="Structure to hold 3D tensor information. ">Tensor3D</a>. </p>
1153<dl class="params"><dt>Parameters</dt><dd>
1154 <table class="params">
Kaizen8938bd32017-09-28 14:38:23 +01001155 <tr><td class="paramdir">[in]</td><td class="paramname">tensor</td><td>Pointer to the starting position of the buffer </td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001156 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Relative X position </td></tr>
1157 <tr><td class="paramdir">[in]</td><td class="paramname">y</td><td>Relative Y position </td></tr>
1158 <tr><td class="paramdir">[in]</td><td class="paramname">z</td><td>Relative Z position </td></tr>
1159 </table>
1160 </dd>
1161</dl>
1162
Jenkins52ba29e2018-08-29 15:32:11 +00001163<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00323">323</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00001164
Jenkins52ba29e2018-08-29 15:32:11 +00001165<p>References <a class="el" href="helpers_8h_source.xhtml#l00161">Tensor3D::ptr</a>, <a class="el" href="helpers_8h_source.xhtml#l00163">Tensor3D::stride_x</a>, <a class="el" href="helpers_8h_source.xhtml#l00164">Tensor3D::stride_y</a>, and <a class="el" href="helpers_8h_source.xhtml#l00165">Tensor3D::stride_z</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00001166
Jenkins52ba29e2018-08-29 15:32:11 +00001167<p>Referenced by <a class="el" href="normalization__layer_8cl_source.xhtml#l00060">normalization_layer_cross_map()</a>, <a class="el" href="normalization__layer_8cl_source.xhtml#l00119">normalization_layer_in_map()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00204">pooling_layer_2()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00268">pooling_layer_3()</a>, <a class="el" href="pooling__layer_8cl_source.xhtml#l00535">pooling_layer_MxN_nhwc()</a>, <a class="el" href="pooling__layer__quantized_8cl_source.xhtml#l00080">pooling_layer_MxN_quantized_nchw()</a>, <a class="el" href="pooling__layer__quantized_8cl_source.xhtml#l00166">pooling_layer_MxN_quantized_nhwc()</a>, <a class="el" href="reshape__layer_8cl_source.xhtml#l00049">reshape_layer()</a>, <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00061">roi_pool_1x1()</a>, <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00123">roi_pooling_layer()</a>, <a class="el" href="scale_8cl_source.xhtml#l00207">scale_bilinear_nhwc()</a>, and <a class="el" href="scale_8cl_source.xhtml#l00162">scale_nearest_neighbour_nhwc()</a>.</p>
1168<div class="fragment"><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;{</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="keywordflow">return</span> tensor-&gt;<a class="code" href="struct_tensor3_d.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> + x * tensor-&gt;<a class="code" href="struct_tensor3_d.xhtml#ae01febbfd0689ef709f3ff6fdd2abc7e">stride_x</a> + y * tensor-&gt;<a class="code" href="struct_tensor3_d.xhtml#a4f0b90c9ecd6e57ceb3f37332fefe8f1">stride_y</a> + z * tensor-&gt;<a class="code" href="struct_tensor3_d.xhtml#ad5ff7a2b2bd0eec50fe09c254b127d1c">stride_z</a>;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;}</div><div class="ttc" id="struct_tensor3_d_xhtml_ad5ff7a2b2bd0eec50fe09c254b127d1c"><div class="ttname"><a href="struct_tensor3_d.xhtml#ad5ff7a2b2bd0eec50fe09c254b127d1c">Tensor3D::stride_z</a></div><div class="ttdeci">int stride_z</div><div class="ttdoc">Stride of the image in Z dimension (in bytes) </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00165">helpers.h:165</a></div></div>
1169<div class="ttc" id="struct_tensor3_d_xhtml_ae01febbfd0689ef709f3ff6fdd2abc7e"><div class="ttname"><a href="struct_tensor3_d.xhtml#ae01febbfd0689ef709f3ff6fdd2abc7e">Tensor3D::stride_x</a></div><div class="ttdeci">int stride_x</div><div class="ttdoc">Stride of the image in X dimension (in bytes) </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00163">helpers.h:163</a></div></div>
1170<div class="ttc" id="struct_tensor3_d_xhtml_acf52c23cbd7424606c10a606524e3e32"><div class="ttname"><a href="struct_tensor3_d.xhtml#acf52c23cbd7424606c10a606524e3e32">Tensor3D::ptr</a></div><div class="ttdeci">__global uchar * ptr</div><div class="ttdoc">Pointer to the starting postion of the buffer. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00161">helpers.h:161</a></div></div>
1171<div class="ttc" id="struct_tensor3_d_xhtml_a4f0b90c9ecd6e57ceb3f37332fefe8f1"><div class="ttname"><a href="struct_tensor3_d.xhtml#a4f0b90c9ecd6e57ceb3f37332fefe8f1">Tensor3D::stride_y</a></div><div class="ttdeci">int stride_y</div><div class="ttdoc">Stride of the image in Y dimension (in bytes) </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00164">helpers.h:164</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +01001172</div><!-- fragment -->
1173</div>
1174</div>
1175<a class="anchor" id="ad442fb5ec8be1fff97f543150de5d822"></a>
1176<div class="memitem">
1177<div class="memproto">
1178<table class="mlabels">
1179 <tr>
1180 <td class="mlabels-left">
1181 <table class="memname">
1182 <tr>
1183 <td class="memname">__global const uchar* tensor4D_offset </td>
1184 <td>(</td>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00001185 <td class="paramtype">const <a class="el" href="struct_tensor4_d.xhtml">Tensor4D</a> *&#160;</td>
Kaizen8938bd32017-09-28 14:38:23 +01001186 <td class="paramname"><em>tensor</em>, </td>
1187 </tr>
1188 <tr>
1189 <td class="paramkey"></td>
1190 <td></td>
1191 <td class="paramtype">int&#160;</td>
1192 <td class="paramname"><em>x</em>, </td>
1193 </tr>
1194 <tr>
1195 <td class="paramkey"></td>
1196 <td></td>
1197 <td class="paramtype">int&#160;</td>
1198 <td class="paramname"><em>y</em>, </td>
1199 </tr>
1200 <tr>
1201 <td class="paramkey"></td>
1202 <td></td>
1203 <td class="paramtype">int&#160;</td>
1204 <td class="paramname"><em>z</em>, </td>
1205 </tr>
1206 <tr>
1207 <td class="paramkey"></td>
1208 <td></td>
1209 <td class="paramtype">int&#160;</td>
1210 <td class="paramname"><em>w</em>&#160;</td>
1211 </tr>
1212 <tr>
1213 <td></td>
1214 <td>)</td>
1215 <td></td><td></td>
1216 </tr>
1217 </table>
1218 </td>
1219 <td class="mlabels-right">
1220<span class="mlabels"><span class="mlabel">inline</span></span> </td>
1221 </tr>
1222</table>
1223</div><div class="memdoc">
1224
Anthony Barbierf45d5a92018-01-24 16:23:15 +00001225<p>Get the pointer position of a <a class="el" href="struct_tensor4_d.xhtml" title="Structure to hold 4D tensor information. ">Tensor4D</a>. </p>
Kaizen8938bd32017-09-28 14:38:23 +01001226<dl class="params"><dt>Parameters</dt><dd>
1227 <table class="params">
1228 <tr><td class="paramdir">[in]</td><td class="paramname">tensor</td><td>Pointer to the starting position of the buffer </td></tr>
1229 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Relative X position </td></tr>
1230 <tr><td class="paramdir">[in]</td><td class="paramname">y</td><td>Relative Y position </td></tr>
1231 <tr><td class="paramdir">[in]</td><td class="paramname">z</td><td>Relative Z position </td></tr>
1232 <tr><td class="paramdir">[in]</td><td class="paramname">w</td><td>Relative W position </td></tr>
1233 </table>
1234 </dd>
1235</dl>
1236
Jenkins52ba29e2018-08-29 15:32:11 +00001237<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00336">336</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +01001238
Jenkins52ba29e2018-08-29 15:32:11 +00001239<p>References <a class="el" href="helpers_8h_source.xhtml#l00171">Tensor4D::ptr</a>, <a class="el" href="helpers_8h_source.xhtml#l00176">Tensor4D::stride_w</a>, <a class="el" href="helpers_8h_source.xhtml#l00173">Tensor4D::stride_x</a>, <a class="el" href="helpers_8h_source.xhtml#l00174">Tensor4D::stride_y</a>, and <a class="el" href="helpers_8h_source.xhtml#l00175">Tensor4D::stride_z</a>.</p>
1240<div class="fragment"><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160;{</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keywordflow">return</span> tensor-&gt;<a class="code" href="struct_tensor4_d.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> + x * tensor-&gt;<a class="code" href="struct_tensor4_d.xhtml#ae01febbfd0689ef709f3ff6fdd2abc7e">stride_x</a> + y * tensor-&gt;<a class="code" href="struct_tensor4_d.xhtml#a4f0b90c9ecd6e57ceb3f37332fefe8f1">stride_y</a> + z * tensor-&gt;<a class="code" href="struct_tensor4_d.xhtml#ad5ff7a2b2bd0eec50fe09c254b127d1c">stride_z</a> + w * tensor-&gt;<a class="code" href="struct_tensor4_d.xhtml#a13a60f6e75f64f1953b8858ea454a880">stride_w</a>;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;}</div><div class="ttc" id="struct_tensor4_d_xhtml_acf52c23cbd7424606c10a606524e3e32"><div class="ttname"><a href="struct_tensor4_d.xhtml#acf52c23cbd7424606c10a606524e3e32">Tensor4D::ptr</a></div><div class="ttdeci">__global uchar * ptr</div><div class="ttdoc">Pointer to the starting postion of the buffer. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00171">helpers.h:171</a></div></div>
1241<div class="ttc" id="struct_tensor4_d_xhtml_a13a60f6e75f64f1953b8858ea454a880"><div class="ttname"><a href="struct_tensor4_d.xhtml#a13a60f6e75f64f1953b8858ea454a880">Tensor4D::stride_w</a></div><div class="ttdeci">int stride_w</div><div class="ttdoc">Stride of the image in W dimension (in bytes) </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00176">helpers.h:176</a></div></div>
1242<div class="ttc" id="struct_tensor4_d_xhtml_a4f0b90c9ecd6e57ceb3f37332fefe8f1"><div class="ttname"><a href="struct_tensor4_d.xhtml#a4f0b90c9ecd6e57ceb3f37332fefe8f1">Tensor4D::stride_y</a></div><div class="ttdeci">int stride_y</div><div class="ttdoc">Stride of the image in Y dimension (in bytes) </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00174">helpers.h:174</a></div></div>
1243<div class="ttc" id="struct_tensor4_d_xhtml_ae01febbfd0689ef709f3ff6fdd2abc7e"><div class="ttname"><a href="struct_tensor4_d.xhtml#ae01febbfd0689ef709f3ff6fdd2abc7e">Tensor4D::stride_x</a></div><div class="ttdeci">int stride_x</div><div class="ttdoc">Stride of the image in X dimension (in bytes) </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00173">helpers.h:173</a></div></div>
1244<div class="ttc" id="struct_tensor4_d_xhtml_ad5ff7a2b2bd0eec50fe09c254b127d1c"><div class="ttname"><a href="struct_tensor4_d.xhtml#ad5ff7a2b2bd0eec50fe09c254b127d1c">Tensor4D::stride_z</a></div><div class="ttdeci">int stride_z</div><div class="ttdoc">Stride of the image in Z dimension (in bytes) </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00175">helpers.h:175</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +01001245</div><!-- fragment -->
1246</div>
1247</div>
1248<a class="anchor" id="a65fd24237c8278ecb38183f93cc70f05"></a>
1249<div class="memitem">
1250<div class="memproto">
1251<table class="mlabels">
1252 <tr>
1253 <td class="mlabels-left">
1254 <table class="memname">
1255 <tr>
1256 <td class="memname"><a class="el" href="struct_image.xhtml">Image</a> update_image_from_tensor3D_workitem_ptr </td>
1257 <td>(</td>
1258 <td class="paramtype">__global uchar *&#160;</td>
1259 <td class="paramname"><em>ptr</em>, </td>
1260 </tr>
1261 <tr>
1262 <td class="paramkey"></td>
1263 <td></td>
1264 <td class="paramtype">uint&#160;</td>
1265 <td class="paramname"><em>offset_first_element_in_bytes</em>, </td>
1266 </tr>
1267 <tr>
1268 <td class="paramkey"></td>
1269 <td></td>
1270 <td class="paramtype">uint&#160;</td>
1271 <td class="paramname"><em>stride_x</em>, </td>
1272 </tr>
1273 <tr>
1274 <td class="paramkey"></td>
1275 <td></td>
1276 <td class="paramtype">uint&#160;</td>
1277 <td class="paramname"><em>step_x</em>, </td>
1278 </tr>
1279 <tr>
1280 <td class="paramkey"></td>
1281 <td></td>
1282 <td class="paramtype">uint&#160;</td>
1283 <td class="paramname"><em>stride_y</em>, </td>
1284 </tr>
1285 <tr>
1286 <td class="paramkey"></td>
1287 <td></td>
1288 <td class="paramtype">uint&#160;</td>
1289 <td class="paramname"><em>step_y</em>, </td>
1290 </tr>
1291 <tr>
1292 <td class="paramkey"></td>
1293 <td></td>
1294 <td class="paramtype">uint&#160;</td>
1295 <td class="paramname"><em>stride_z</em>, </td>
1296 </tr>
1297 <tr>
1298 <td class="paramkey"></td>
1299 <td></td>
1300 <td class="paramtype">uint&#160;</td>
1301 <td class="paramname"><em>step_z</em>&#160;</td>
1302 </tr>
1303 <tr>
1304 <td></td>
1305 <td>)</td>
1306 <td></td><td></td>
1307 </tr>
1308 </table>
1309 </td>
1310 <td class="mlabels-right">
1311<span class="mlabels"><span class="mlabel">inline</span></span> </td>
1312 </tr>
1313</table>
1314</div><div class="memdoc">
1315
1316<p>Wrap 3D tensor information into an image structure, and make the pointer point at this workitem's data. </p>
1317<dl class="params"><dt>Parameters</dt><dd>
1318 <table class="params">
1319 <tr><td class="paramdir">[in]</td><td class="paramname">ptr</td><td>Pointer to the starting postion of the buffer </td></tr>
1320 <tr><td class="paramdir">[in]</td><td class="paramname">offset_first_element_in_bytes</td><td>The offset of the first element in the source image </td></tr>
1321 <tr><td class="paramdir">[in]</td><td class="paramname">stride_x</td><td>Stride of the image in X dimension (in bytes) </td></tr>
1322 <tr><td class="paramdir">[in]</td><td class="paramname">step_x</td><td>stride_x * number of elements along X processed per workitem(in bytes) </td></tr>
1323 <tr><td class="paramdir">[in]</td><td class="paramname">stride_y</td><td>Stride of the image in Y dimension (in bytes) </td></tr>
1324 <tr><td class="paramdir">[in]</td><td class="paramname">step_y</td><td>stride_y * number of elements along Y processed per workitem(in bytes) </td></tr>
1325 <tr><td class="paramdir">[in]</td><td class="paramname">stride_z</td><td>Stride of the image in Z dimension (in bytes) </td></tr>
1326 <tr><td class="paramdir">[in]</td><td class="paramname">step_z</td><td>stride_z * number of elements along Z processed per workitem(in bytes)</td></tr>
1327 </table>
1328 </dd>
1329</dl>
1330<dl class="section return"><dt>Returns</dt><dd>A 3D tensor object </dd></dl>
1331
Jenkins52ba29e2018-08-29 15:32:11 +00001332<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00237">237</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +01001333
Jenkins52ba29e2018-08-29 15:32:11 +00001334<p>References <a class="el" href="helpers_8h_source.xhtml#l00145">Vector::offset_first_element_in_bytes</a>, <a class="el" href="helpers_8h_source.xhtml#l00153">Image::offset_first_element_in_bytes</a>, <a class="el" href="helpers_8h_source.xhtml#l00144">Vector::ptr</a>, <a class="el" href="helpers_8h_source.xhtml#l00152">Image::ptr</a>, and <a class="el" href="helpers_8h_source.xhtml#l00146">Vector::stride_x</a>.</p>
1335<div class="fragment"><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;{</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <a class="code" href="struct_image.xhtml">Image</a> img =</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; {</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; .<a class="code" href="struct_image.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> = ptr,</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; .offset_first_element_in_bytes = offset_first_element_in_bytes,</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; .stride_x = stride_x,</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; .stride_y = stride_y</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; };</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; img.<a class="code" href="struct_image.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> += img.<a class="code" href="struct_image.xhtml#a35e5a91338398273f3b4a6010004bddd">offset_first_element_in_bytes</a> + get_global_id(0) * step_x + get_global_id(1) * step_y + get_global_id(2) * step_z;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">return</span> img;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;}</div><div class="ttc" id="struct_image_xhtml_a35e5a91338398273f3b4a6010004bddd"><div class="ttname"><a href="struct_image.xhtml#a35e5a91338398273f3b4a6010004bddd">Image::offset_first_element_in_bytes</a></div><div class="ttdeci">int offset_first_element_in_bytes</div><div class="ttdoc">The offset of the first element in the source image. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00153">helpers.h:153</a></div></div>
1336<div class="ttc" id="struct_image_xhtml"><div class="ttname"><a href="struct_image.xhtml">Image</a></div><div class="ttdoc">Structure to hold Image information. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00150">helpers.h:150</a></div></div>
1337<div class="ttc" id="struct_image_xhtml_acf52c23cbd7424606c10a606524e3e32"><div class="ttname"><a href="struct_image.xhtml#acf52c23cbd7424606c10a606524e3e32">Image::ptr</a></div><div class="ttdeci">__global uchar * ptr</div><div class="ttdoc">Pointer to the starting postion of the buffer. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00152">helpers.h:152</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00001338</div><!-- fragment -->
1339</div>
1340</div>
1341<a class="anchor" id="a0a4395130f74a4293a7d3a19d8fac86d"></a>
1342<div class="memitem">
1343<div class="memproto">
1344<table class="mlabels">
1345 <tr>
1346 <td class="mlabels-left">
1347 <table class="memname">
1348 <tr>
1349 <td class="memname"><a class="el" href="struct_image.xhtml">Image</a> update_image_workitem_ptr </td>
1350 <td>(</td>
1351 <td class="paramtype">__global uchar *&#160;</td>
1352 <td class="paramname"><em>ptr</em>, </td>
1353 </tr>
1354 <tr>
1355 <td class="paramkey"></td>
1356 <td></td>
1357 <td class="paramtype">uint&#160;</td>
1358 <td class="paramname"><em>offset_first_element_in_bytes</em>, </td>
1359 </tr>
1360 <tr>
1361 <td class="paramkey"></td>
1362 <td></td>
1363 <td class="paramtype">uint&#160;</td>
1364 <td class="paramname"><em>stride_x</em>, </td>
1365 </tr>
1366 <tr>
1367 <td class="paramkey"></td>
1368 <td></td>
1369 <td class="paramtype">uint&#160;</td>
1370 <td class="paramname"><em>step_x</em>, </td>
1371 </tr>
1372 <tr>
1373 <td class="paramkey"></td>
1374 <td></td>
1375 <td class="paramtype">uint&#160;</td>
1376 <td class="paramname"><em>stride_y</em>, </td>
1377 </tr>
1378 <tr>
1379 <td class="paramkey"></td>
1380 <td></td>
1381 <td class="paramtype">uint&#160;</td>
1382 <td class="paramname"><em>step_y</em>&#160;</td>
1383 </tr>
1384 <tr>
1385 <td></td>
1386 <td>)</td>
1387 <td></td><td></td>
1388 </tr>
1389 </table>
1390 </td>
1391 <td class="mlabels-right">
1392<span class="mlabels"><span class="mlabel">inline</span></span> </td>
1393 </tr>
1394</table>
1395</div><div class="memdoc">
1396
1397<p>Wrap image information into an <a class="el" href="struct_image.xhtml" title="Structure to hold Image information. ">Image</a> structure, and make the pointer point at this workitem's data. </p>
1398<dl class="params"><dt>Parameters</dt><dd>
1399 <table class="params">
1400 <tr><td class="paramdir">[in]</td><td class="paramname">ptr</td><td>Pointer to the starting postion of the buffer </td></tr>
1401 <tr><td class="paramdir">[in]</td><td class="paramname">offset_first_element_in_bytes</td><td>The offset of the first element in the source image </td></tr>
1402 <tr><td class="paramdir">[in]</td><td class="paramname">stride_x</td><td>Stride of the image in X dimension (in bytes) </td></tr>
1403 <tr><td class="paramdir">[in]</td><td class="paramname">step_x</td><td>stride_x * number of elements along X processed per workitem(in bytes) </td></tr>
1404 <tr><td class="paramdir">[in]</td><td class="paramname">stride_y</td><td>Stride of the image in Y dimension (in bytes) </td></tr>
1405 <tr><td class="paramdir">[in]</td><td class="paramname">step_y</td><td>stride_y * number of elements along Y processed per workitem(in bytes)</td></tr>
1406 </table>
1407 </dd>
1408</dl>
1409<dl class="section return"><dt>Returns</dt><dd>An image object </dd></dl>
1410
Jenkins52ba29e2018-08-29 15:32:11 +00001411<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00211">211</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00001412
Jenkins52ba29e2018-08-29 15:32:11 +00001413<p>References <a class="el" href="helpers_8h_source.xhtml#l00145">Vector::offset_first_element_in_bytes</a>, <a class="el" href="helpers_8h_source.xhtml#l00153">Image::offset_first_element_in_bytes</a>, <a class="el" href="helpers_8h_source.xhtml#l00144">Vector::ptr</a>, <a class="el" href="helpers_8h_source.xhtml#l00152">Image::ptr</a>, and <a class="el" href="helpers_8h_source.xhtml#l00146">Vector::stride_x</a>.</p>
1414<div class="fragment"><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;{</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <a class="code" href="struct_image.xhtml">Image</a> img =</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; {</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; .<a class="code" href="struct_image.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> = ptr,</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; .offset_first_element_in_bytes = offset_first_element_in_bytes,</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; .stride_x = stride_x,</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; .stride_y = stride_y</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; };</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; img.<a class="code" href="struct_image.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> += img.<a class="code" href="struct_image.xhtml#a35e5a91338398273f3b4a6010004bddd">offset_first_element_in_bytes</a> + get_global_id(0) * step_x + get_global_id(1) * step_y;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">return</span> img;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;}</div><div class="ttc" id="struct_image_xhtml_a35e5a91338398273f3b4a6010004bddd"><div class="ttname"><a href="struct_image.xhtml#a35e5a91338398273f3b4a6010004bddd">Image::offset_first_element_in_bytes</a></div><div class="ttdeci">int offset_first_element_in_bytes</div><div class="ttdoc">The offset of the first element in the source image. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00153">helpers.h:153</a></div></div>
1415<div class="ttc" id="struct_image_xhtml"><div class="ttname"><a href="struct_image.xhtml">Image</a></div><div class="ttdoc">Structure to hold Image information. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00150">helpers.h:150</a></div></div>
1416<div class="ttc" id="struct_image_xhtml_acf52c23cbd7424606c10a606524e3e32"><div class="ttname"><a href="struct_image.xhtml#acf52c23cbd7424606c10a606524e3e32">Image::ptr</a></div><div class="ttdeci">__global uchar * ptr</div><div class="ttdoc">Pointer to the starting postion of the buffer. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00152">helpers.h:152</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00001417</div><!-- fragment -->
1418</div>
1419</div>
1420<a class="anchor" id="a912ccbcc4235bf1274c95d05b50440d4"></a>
1421<div class="memitem">
1422<div class="memproto">
1423<table class="mlabels">
1424 <tr>
1425 <td class="mlabels-left">
1426 <table class="memname">
1427 <tr>
1428 <td class="memname"><a class="el" href="struct_tensor3_d.xhtml">Tensor3D</a> update_tensor3D_workitem_ptr </td>
1429 <td>(</td>
1430 <td class="paramtype">__global uchar *&#160;</td>
1431 <td class="paramname"><em>ptr</em>, </td>
1432 </tr>
1433 <tr>
1434 <td class="paramkey"></td>
1435 <td></td>
1436 <td class="paramtype">uint&#160;</td>
1437 <td class="paramname"><em>offset_first_element_in_bytes</em>, </td>
1438 </tr>
1439 <tr>
1440 <td class="paramkey"></td>
1441 <td></td>
1442 <td class="paramtype">uint&#160;</td>
1443 <td class="paramname"><em>stride_x</em>, </td>
1444 </tr>
1445 <tr>
1446 <td class="paramkey"></td>
1447 <td></td>
1448 <td class="paramtype">uint&#160;</td>
1449 <td class="paramname"><em>step_x</em>, </td>
1450 </tr>
1451 <tr>
1452 <td class="paramkey"></td>
1453 <td></td>
1454 <td class="paramtype">uint&#160;</td>
1455 <td class="paramname"><em>stride_y</em>, </td>
1456 </tr>
1457 <tr>
1458 <td class="paramkey"></td>
1459 <td></td>
1460 <td class="paramtype">uint&#160;</td>
1461 <td class="paramname"><em>step_y</em>, </td>
1462 </tr>
1463 <tr>
1464 <td class="paramkey"></td>
1465 <td></td>
1466 <td class="paramtype">uint&#160;</td>
1467 <td class="paramname"><em>stride_z</em>, </td>
1468 </tr>
1469 <tr>
1470 <td class="paramkey"></td>
1471 <td></td>
1472 <td class="paramtype">uint&#160;</td>
1473 <td class="paramname"><em>step_z</em>&#160;</td>
1474 </tr>
1475 <tr>
1476 <td></td>
1477 <td>)</td>
1478 <td></td><td></td>
1479 </tr>
1480 </table>
1481 </td>
1482 <td class="mlabels-right">
1483<span class="mlabels"><span class="mlabel">inline</span></span> </td>
1484 </tr>
1485</table>
1486</div><div class="memdoc">
1487
1488<p>Wrap 3D tensor information into an tensor structure, and make the pointer point at this workitem's data. </p>
1489<dl class="params"><dt>Parameters</dt><dd>
1490 <table class="params">
1491 <tr><td class="paramdir">[in]</td><td class="paramname">ptr</td><td>Pointer to the starting postion of the buffer </td></tr>
1492 <tr><td class="paramdir">[in]</td><td class="paramname">offset_first_element_in_bytes</td><td>The offset of the first element in the source image </td></tr>
1493 <tr><td class="paramdir">[in]</td><td class="paramname">stride_x</td><td>Stride of the image in X dimension (in bytes) </td></tr>
1494 <tr><td class="paramdir">[in]</td><td class="paramname">step_x</td><td>stride_x * number of elements along X processed per workitem(in bytes) </td></tr>
1495 <tr><td class="paramdir">[in]</td><td class="paramname">stride_y</td><td>Stride of the image in Y dimension (in bytes) </td></tr>
1496 <tr><td class="paramdir">[in]</td><td class="paramname">step_y</td><td>stride_y * number of elements along Y processed per workitem(in bytes) </td></tr>
1497 <tr><td class="paramdir">[in]</td><td class="paramname">stride_z</td><td>Stride of the image in Z dimension (in bytes) </td></tr>
1498 <tr><td class="paramdir">[in]</td><td class="paramname">step_z</td><td>stride_z * number of elements along Z processed per workitem(in bytes)</td></tr>
1499 </table>
1500 </dd>
1501</dl>
1502<dl class="section return"><dt>Returns</dt><dd>A 3D tensor object </dd></dl>
1503
Jenkins52ba29e2018-08-29 15:32:11 +00001504<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00263">263</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00001505
Jenkins52ba29e2018-08-29 15:32:11 +00001506<p>References <a class="el" href="helpers_8h_source.xhtml#l00145">Vector::offset_first_element_in_bytes</a>, <a class="el" href="helpers_8h_source.xhtml#l00162">Tensor3D::offset_first_element_in_bytes</a>, <a class="el" href="helpers_8h_source.xhtml#l00144">Vector::ptr</a>, <a class="el" href="helpers_8h_source.xhtml#l00161">Tensor3D::ptr</a>, and <a class="el" href="helpers_8h_source.xhtml#l00146">Vector::stride_x</a>.</p>
1507<div class="fragment"><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;{</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <a class="code" href="struct_tensor3_d.xhtml">Tensor3D</a> tensor =</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; {</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; .<a class="code" href="struct_tensor3_d.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> = ptr,</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; .offset_first_element_in_bytes = offset_first_element_in_bytes,</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; .stride_x = stride_x,</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; .stride_y = stride_y,</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; .stride_z = stride_z</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; };</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; tensor.<a class="code" href="struct_tensor3_d.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> += tensor.<a class="code" href="struct_tensor3_d.xhtml#a35e5a91338398273f3b4a6010004bddd">offset_first_element_in_bytes</a> + get_global_id(0) * step_x + get_global_id(1) * step_y + get_global_id(2) * step_z;</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">return</span> tensor;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;}</div><div class="ttc" id="struct_tensor3_d_xhtml"><div class="ttname"><a href="struct_tensor3_d.xhtml">Tensor3D</a></div><div class="ttdoc">Structure to hold 3D tensor information. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00159">helpers.h:159</a></div></div>
1508<div class="ttc" id="struct_tensor3_d_xhtml_acf52c23cbd7424606c10a606524e3e32"><div class="ttname"><a href="struct_tensor3_d.xhtml#acf52c23cbd7424606c10a606524e3e32">Tensor3D::ptr</a></div><div class="ttdeci">__global uchar * ptr</div><div class="ttdoc">Pointer to the starting postion of the buffer. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00161">helpers.h:161</a></div></div>
1509<div class="ttc" id="struct_tensor3_d_xhtml_a35e5a91338398273f3b4a6010004bddd"><div class="ttname"><a href="struct_tensor3_d.xhtml#a35e5a91338398273f3b4a6010004bddd">Tensor3D::offset_first_element_in_bytes</a></div><div class="ttdeci">int offset_first_element_in_bytes</div><div class="ttdoc">The offset of the first element in the source image. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00162">helpers.h:162</a></div></div>
Kaizen8938bd32017-09-28 14:38:23 +01001510</div><!-- fragment -->
1511</div>
1512</div>
1513<a class="anchor" id="a87a9d201ccc6b81332852d562bb7ee13"></a>
1514<div class="memitem">
1515<div class="memproto">
1516<table class="mlabels">
1517 <tr>
1518 <td class="mlabels-left">
1519 <table class="memname">
1520 <tr>
Anthony Barbierf45d5a92018-01-24 16:23:15 +00001521 <td class="memname"><a class="el" href="struct_tensor4_d.xhtml">Tensor4D</a> update_tensor4D_workitem_ptr </td>
Kaizen8938bd32017-09-28 14:38:23 +01001522 <td>(</td>
1523 <td class="paramtype">__global uchar *&#160;</td>
1524 <td class="paramname"><em>ptr</em>, </td>
1525 </tr>
1526 <tr>
1527 <td class="paramkey"></td>
1528 <td></td>
1529 <td class="paramtype">uint&#160;</td>
1530 <td class="paramname"><em>offset_first_element_in_bytes</em>, </td>
1531 </tr>
1532 <tr>
1533 <td class="paramkey"></td>
1534 <td></td>
1535 <td class="paramtype">uint&#160;</td>
1536 <td class="paramname"><em>stride_x</em>, </td>
1537 </tr>
1538 <tr>
1539 <td class="paramkey"></td>
1540 <td></td>
1541 <td class="paramtype">uint&#160;</td>
1542 <td class="paramname"><em>step_x</em>, </td>
1543 </tr>
1544 <tr>
1545 <td class="paramkey"></td>
1546 <td></td>
1547 <td class="paramtype">uint&#160;</td>
1548 <td class="paramname"><em>stride_y</em>, </td>
1549 </tr>
1550 <tr>
1551 <td class="paramkey"></td>
1552 <td></td>
1553 <td class="paramtype">uint&#160;</td>
1554 <td class="paramname"><em>step_y</em>, </td>
1555 </tr>
1556 <tr>
1557 <td class="paramkey"></td>
1558 <td></td>
1559 <td class="paramtype">uint&#160;</td>
1560 <td class="paramname"><em>stride_z</em>, </td>
1561 </tr>
1562 <tr>
1563 <td class="paramkey"></td>
1564 <td></td>
1565 <td class="paramtype">uint&#160;</td>
1566 <td class="paramname"><em>step_z</em>, </td>
1567 </tr>
1568 <tr>
1569 <td class="paramkey"></td>
1570 <td></td>
1571 <td class="paramtype">uint&#160;</td>
1572 <td class="paramname"><em>stride_w</em>, </td>
1573 </tr>
1574 <tr>
1575 <td class="paramkey"></td>
1576 <td></td>
1577 <td class="paramtype">uint&#160;</td>
1578 <td class="paramname"><em>step_w</em>, </td>
1579 </tr>
1580 <tr>
1581 <td class="paramkey"></td>
1582 <td></td>
1583 <td class="paramtype">uint&#160;</td>
1584 <td class="paramname"><em>mod_size</em>&#160;</td>
1585 </tr>
1586 <tr>
1587 <td></td>
1588 <td>)</td>
1589 <td></td><td></td>
1590 </tr>
1591 </table>
1592 </td>
1593 <td class="mlabels-right">
1594<span class="mlabels"><span class="mlabel">inline</span></span> </td>
1595 </tr>
1596</table>
1597</div><div class="memdoc">
1598
Jenkins52ba29e2018-08-29 15:32:11 +00001599<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00277">277</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +01001600
Jenkins52ba29e2018-08-29 15:32:11 +00001601<p>References <a class="el" href="helpers_8h_source.xhtml#l00145">Vector::offset_first_element_in_bytes</a>, <a class="el" href="helpers_8h_source.xhtml#l00172">Tensor4D::offset_first_element_in_bytes</a>, <a class="el" href="helpers_8h_source.xhtml#l00144">Vector::ptr</a>, <a class="el" href="helpers_8h_source.xhtml#l00171">Tensor4D::ptr</a>, and <a class="el" href="helpers_8h_source.xhtml#l00146">Vector::stride_x</a>.</p>
1602<div class="fragment"><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;{</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <a class="code" href="struct_tensor4_d.xhtml">Tensor4D</a> tensor =</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; {</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; .<a class="code" href="struct_tensor4_d.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> = ptr,</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; .offset_first_element_in_bytes = offset_first_element_in_bytes,</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; .stride_x = stride_x,</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; .stride_y = stride_y,</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; .stride_z = stride_z,</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; .stride_w = stride_w</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; };</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; tensor.<a class="code" href="struct_tensor4_d.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> += tensor.<a class="code" href="struct_tensor4_d.xhtml#a35e5a91338398273f3b4a6010004bddd">offset_first_element_in_bytes</a> + get_global_id(0) * step_x + get_global_id(1) * step_y + (get_global_id(2) % mod_size) * step_z + (get_global_id(2) / mod_size) * step_w;</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keywordflow">return</span> tensor;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;}</div><div class="ttc" id="struct_tensor4_d_xhtml_acf52c23cbd7424606c10a606524e3e32"><div class="ttname"><a href="struct_tensor4_d.xhtml#acf52c23cbd7424606c10a606524e3e32">Tensor4D::ptr</a></div><div class="ttdeci">__global uchar * ptr</div><div class="ttdoc">Pointer to the starting postion of the buffer. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00171">helpers.h:171</a></div></div>
1603<div class="ttc" id="struct_tensor4_d_xhtml"><div class="ttname"><a href="struct_tensor4_d.xhtml">Tensor4D</a></div><div class="ttdoc">Structure to hold 4D tensor information. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00169">helpers.h:169</a></div></div>
1604<div class="ttc" id="struct_tensor4_d_xhtml_a35e5a91338398273f3b4a6010004bddd"><div class="ttname"><a href="struct_tensor4_d.xhtml#a35e5a91338398273f3b4a6010004bddd">Tensor4D::offset_first_element_in_bytes</a></div><div class="ttdeci">int offset_first_element_in_bytes</div><div class="ttdoc">The offset of the first element in the source image. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00172">helpers.h:172</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00001605</div><!-- fragment -->
1606</div>
1607</div>
1608<a class="anchor" id="a8fee90913ba658b25516a43cf71e5cbd"></a>
1609<div class="memitem">
1610<div class="memproto">
1611<table class="mlabels">
1612 <tr>
1613 <td class="mlabels-left">
1614 <table class="memname">
1615 <tr>
1616 <td class="memname"><a class="el" href="struct_vector.xhtml">Vector</a> update_vector_workitem_ptr </td>
1617 <td>(</td>
1618 <td class="paramtype">__global uchar *&#160;</td>
1619 <td class="paramname"><em>ptr</em>, </td>
1620 </tr>
1621 <tr>
1622 <td class="paramkey"></td>
1623 <td></td>
1624 <td class="paramtype">uint&#160;</td>
1625 <td class="paramname"><em>offset_first_element_in_bytes</em>, </td>
1626 </tr>
1627 <tr>
1628 <td class="paramkey"></td>
1629 <td></td>
1630 <td class="paramtype">uint&#160;</td>
1631 <td class="paramname"><em>stride_x</em>, </td>
1632 </tr>
1633 <tr>
1634 <td class="paramkey"></td>
1635 <td></td>
1636 <td class="paramtype">uint&#160;</td>
1637 <td class="paramname"><em>step_x</em>&#160;</td>
1638 </tr>
1639 <tr>
1640 <td></td>
1641 <td>)</td>
1642 <td></td><td></td>
1643 </tr>
1644 </table>
1645 </td>
1646 <td class="mlabels-right">
1647<span class="mlabels"><span class="mlabel">inline</span></span> </td>
1648 </tr>
1649</table>
1650</div><div class="memdoc">
1651
1652<p>Wrap vector information into an <a class="el" href="struct_vector.xhtml" title="Structure to hold Vector information. ">Vector</a> structure, and make the pointer point at this workitem's data. </p>
1653<dl class="params"><dt>Parameters</dt><dd>
1654 <table class="params">
1655 <tr><td class="paramdir">[in]</td><td class="paramname">ptr</td><td>Pointer to the starting postion of the buffer </td></tr>
1656 <tr><td class="paramdir">[in]</td><td class="paramname">offset_first_element_in_bytes</td><td>The offset of the first element in the source vector </td></tr>
1657 <tr><td class="paramdir">[in]</td><td class="paramname">stride_x</td><td>Stride of the vector in X dimension (in bytes) </td></tr>
1658 <tr><td class="paramdir">[in]</td><td class="paramname">step_x</td><td>stride_x * number of elements along X processed per workitem(in bytes)</td></tr>
1659 </table>
1660 </dd>
1661</dl>
1662<dl class="section return"><dt>Returns</dt><dd>An image object </dd></dl>
1663
Jenkins52ba29e2018-08-29 15:32:11 +00001664<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00188">188</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00001665
Jenkins52ba29e2018-08-29 15:32:11 +00001666<p>References <a class="el" href="helpers_8h_source.xhtml#l00145">Vector::offset_first_element_in_bytes</a>, <a class="el" href="helpers_8h_source.xhtml#l00144">Vector::ptr</a>, and <a class="el" href="helpers_8h_source.xhtml#l00146">Vector::stride_x</a>.</p>
1667<div class="fragment"><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;{</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="struct_vector.xhtml">Vector</a> vector =</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; {</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; .<a class="code" href="struct_vector.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> = ptr,</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; .offset_first_element_in_bytes = offset_first_element_in_bytes,</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; .stride_x = stride_x,</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; };</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; vector.<a class="code" href="struct_vector.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> += vector.<a class="code" href="struct_vector.xhtml#a35e5a91338398273f3b4a6010004bddd">offset_first_element_in_bytes</a> + get_global_id(0) * step_x;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">return</span> vector;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;}</div><div class="ttc" id="struct_vector_xhtml"><div class="ttname"><a href="struct_vector.xhtml">Vector</a></div><div class="ttdoc">Structure to hold Vector information. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00142">helpers.h:142</a></div></div>
1668<div class="ttc" id="struct_vector_xhtml_acf52c23cbd7424606c10a606524e3e32"><div class="ttname"><a href="struct_vector.xhtml#acf52c23cbd7424606c10a606524e3e32">Vector::ptr</a></div><div class="ttdeci">__global uchar * ptr</div><div class="ttdoc">Pointer to the starting postion of the buffer. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00144">helpers.h:144</a></div></div>
1669<div class="ttc" id="struct_vector_xhtml_a35e5a91338398273f3b4a6010004bddd"><div class="ttname"><a href="struct_vector.xhtml#a35e5a91338398273f3b4a6010004bddd">Vector::offset_first_element_in_bytes</a></div><div class="ttdeci">int offset_first_element_in_bytes</div><div class="ttdoc">The offset of the first element in the source image. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00145">helpers.h:145</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00001670</div><!-- fragment -->
1671</div>
1672</div>
Anthony Barbier46d59272017-05-04 09:15:15 +01001673<a class="anchor" id="a7e4940407322d6f0ccb8b6b86b856019"></a>
Anthony Barbier871448e2017-03-24 14:54:29 +00001674<div class="memitem">
1675<div class="memproto">
1676<table class="mlabels">
1677 <tr>
1678 <td class="mlabels-left">
1679 <table class="memname">
1680 <tr>
1681 <td class="memname">__global const uchar* vector_offset </td>
1682 <td>(</td>
Anthony Barbier46d59272017-05-04 09:15:15 +01001683 <td class="paramtype">const <a class="el" href="struct_vector.xhtml">Vector</a> *&#160;</td>
1684 <td class="paramname"><em>vec</em>, </td>
Anthony Barbier871448e2017-03-24 14:54:29 +00001685 </tr>
1686 <tr>
1687 <td class="paramkey"></td>
1688 <td></td>
1689 <td class="paramtype">int&#160;</td>
1690 <td class="paramname"><em>x</em>&#160;</td>
1691 </tr>
1692 <tr>
1693 <td></td>
1694 <td>)</td>
1695 <td></td><td></td>
1696 </tr>
1697 </table>
1698 </td>
1699 <td class="mlabels-right">
1700<span class="mlabels"><span class="mlabel">inline</span></span> </td>
1701 </tr>
1702</table>
1703</div><div class="memdoc">
1704
1705<p>Get the pointer position of a <a class="el" href="struct_vector.xhtml" title="Structure to hold Vector information. ">Vector</a>. </p>
1706<dl class="params"><dt>Parameters</dt><dd>
1707 <table class="params">
Anthony Barbier46d59272017-05-04 09:15:15 +01001708 <tr><td class="paramdir">[in]</td><td class="paramname">vec</td><td>Pointer to the starting position of the buffer </td></tr>
Anthony Barbier871448e2017-03-24 14:54:29 +00001709 <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Relative X position </td></tr>
1710 </table>
1711 </dd>
1712</dl>
1713
Jenkins52ba29e2018-08-29 15:32:11 +00001714<p>Definition at line <a class="el" href="helpers_8h_source.xhtml#l00300">300</a> of file <a class="el" href="helpers_8h_source.xhtml">helpers.h</a>.</p>
Anthony Barbier871448e2017-03-24 14:54:29 +00001715
Jenkins52ba29e2018-08-29 15:32:11 +00001716<p>References <a class="el" href="helpers_8h_source.xhtml#l00144">Vector::ptr</a>, and <a class="el" href="helpers_8h_source.xhtml#l00146">Vector::stride_x</a>.</p>
Kaizen8938bd32017-09-28 14:38:23 +01001717
Jenkins52ba29e2018-08-29 15:32:11 +00001718<p>Referenced by <a class="el" href="roi__pooling__layer_8cl_source.xhtml#l00123">roi_pooling_layer()</a>.</p>
1719<div class="fragment"><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;{</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">return</span> vec-&gt;<a class="code" href="struct_vector.xhtml#acf52c23cbd7424606c10a606524e3e32">ptr</a> + x * vec-&gt;<a class="code" href="struct_vector.xhtml#ae01febbfd0689ef709f3ff6fdd2abc7e">stride_x</a>;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;}</div><div class="ttc" id="struct_vector_xhtml_ae01febbfd0689ef709f3ff6fdd2abc7e"><div class="ttname"><a href="struct_vector.xhtml#ae01febbfd0689ef709f3ff6fdd2abc7e">Vector::stride_x</a></div><div class="ttdeci">int stride_x</div><div class="ttdoc">Stride of the image in X dimension (in bytes) </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00146">helpers.h:146</a></div></div>
1720<div class="ttc" id="struct_vector_xhtml_acf52c23cbd7424606c10a606524e3e32"><div class="ttname"><a href="struct_vector.xhtml#acf52c23cbd7424606c10a606524e3e32">Vector::ptr</a></div><div class="ttdeci">__global uchar * ptr</div><div class="ttdoc">Pointer to the starting postion of the buffer. </div><div class="ttdef"><b>Definition:</b> <a href="helpers_8h_source.xhtml#l00144">helpers.h:144</a></div></div>
Anthony Barbier871448e2017-03-24 14:54:29 +00001721</div><!-- fragment -->
1722</div>
1723</div>
1724</div><!-- contents -->
1725</div><!-- doc-content -->
1726<!-- start footer part -->
1727<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
1728 <ul>
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001729 <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.xhtml">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.xhtml">core</a></li><li class="navelem"><a class="el" href="dir_8c278f79c760e5c5fbd911f9870614c1.xhtml">CL</a></li><li class="navelem"><a class="el" href="dir_25885286e9dad4fa105b7b25a8031bbf.xhtml">cl_kernels</a></li><li class="navelem"><a class="el" href="helpers_8h.xhtml">helpers.h</a></li>
Jenkins52ba29e2018-08-29 15:32:11 +00001730 <li class="footer">Generated on Wed Aug 29 2018 15:31:37 for Compute Library by
Anthony Barbier871448e2017-03-24 14:54:29 +00001731 <a href="http://www.doxygen.org/index.html">
Anthony Barbier8140e1e2017-12-14 23:48:46 +00001732 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
Anthony Barbier871448e2017-03-24 14:54:29 +00001733 </ul>
1734</div>
1735</body>
1736</html>