arm_compute v17.04
[platform/upstream/armcl.git] / documentation / classarm__compute_1_1_i_array.xhtml
1 <!-- 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"/>
7 <meta name="generator" content="Doxygen 1.8.11"/>
8 <meta name="robots" content="NOINDEX, NOFOLLOW" /> <!-- Prevent indexing by search engines -->
9 <title>ARM Compute Library: IArray&lt; T &gt; Class Template Reference</title>
10 <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>
15 <script type="text/javascript" src="navtreedata.js"></script>
16 <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"/>
22 <script type="text/javascript" src="search/searchdata.js"></script>
23 <script type="text/javascript" src="search/search.js"></script>
24 <script type="text/javascript">
25   $(document).ready(function() { init_search(); });
26 </script>
27 <script type="text/x-mathjax-config">
28   MathJax.Hub.Config({
29     extensions: ["tex2jax.js"],
30     jax: ["input/TeX","output/HTML-CSS"],
31 });
32 </script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
33 <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;">
42    <div id="projectname">ARM Compute Library
43    &#160;<span id="projectnumber">17.04</span>
44    </div>
45   </td>
46  </tr>
47  </tbody>
48 </table>
49 </div>
50 <!-- end header part -->
51 <!-- Generated by Doxygen 1.8.11 -->
52 <script type="text/javascript">
53 var 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>
58       <li><a href="namespaces.xhtml"><span>Namespaces</span></a></li>
59       <li class="current"><a href="annotated.xhtml"><span>Data&#160;Structures</span></a></li>
60       <li><a href="files.xhtml"><span>Files</span></a></li>
61       <li>
62         <div id="MSearchBox" class="MSearchBoxInactive">
63         <span class="left">
64           <img id="MSearchSelect" src="search/mag_sel.png"
65                onmouseover="return searchBox.OnSearchSelectShow()"
66                onmouseout="return searchBox.OnSearchSelectHide()"
67                alt=""/>
68           <input type="text" id="MSearchField" value="Search" accesskey="S"
69                onfocus="searchBox.OnSearchFieldFocus(true)" 
70                onblur="searchBox.OnSearchFieldFocus(false)" 
71                onkeyup="searchBox.OnSearchFieldChange(event)"/>
72           </span><span class="right">
73             <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
74           </span>
75         </div>
76       </li>
77     </ul>
78   </div>
79   <div id="navrow2" class="tabs2">
80     <ul class="tablist">
81       <li><a href="annotated.xhtml"><span>Data&#160;Structures</span></a></li>
82       <li><a href="classes.xhtml"><span>Data&#160;Structure&#160;Index</span></a></li>
83       <li><a href="inherits.xhtml"><span>Class&#160;Hierarchy</span></a></li>
84       <li><a href="functions.xhtml"><span>Data&#160;Fields</span></a></li>
85     </ul>
86   </div>
87 </div><!-- top -->
88 <div id="side-nav" class="ui-resizable side-nav-resizable">
89   <div id="nav-tree">
90     <div id="nav-tree-contents">
91       <div id="nav-sync" class="sync"></div>
92     </div>
93   </div>
94   <div id="splitbar" style="-moz-user-select:none;" 
95        class="ui-resizable-handle">
96   </div>
97 </div>
98 <script type="text/javascript">
99 $(document).ready(function(){initNavTree('classarm__compute_1_1_i_array.xhtml','');});
100 </script>
101 <div id="doc-content">
102 <!-- window showing the filter options -->
103 <div id="MSearchSelectWindow"
104      onmouseover="return searchBox.OnSearchSelectShow()"
105      onmouseout="return searchBox.OnSearchSelectHide()"
106      onkeydown="return searchBox.OnSearchSelectKey(event)">
107 </div>
108
109 <!-- iframe showing the search results (closed by default) -->
110 <div id="MSearchResultsWindow">
111 <iframe src="javascript:void(0)" frameborder="0" 
112         name="MSearchResults" id="MSearchResults">
113 </iframe>
114 </div>
115
116 <div class="header">
117   <div class="summary">
118 <a href="#pub-methods">Public Member Functions</a>  </div>
119   <div class="headertitle">
120 <div class="title">IArray&lt; T &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
121 </div><!--header-->
122 <div class="contents">
123
124 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of type T.  
125  <a href="classarm__compute_1_1_i_array.xhtml#details">More...</a></p>
126
127 <p><code>#include &lt;<a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>&gt;</code></p>
128 <table class="memberdecls">
129 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
130 Public Member Functions</h2></td></tr>
131 <tr class="memitem:a409cec620a7e56a535b079a0fe37695a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_array.xhtml#a409cec620a7e56a535b079a0fe37695a">IArray</a> ()</td></tr>
132 <tr class="memdesc:a409cec620a7e56a535b079a0fe37695a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor.  <a href="#a409cec620a7e56a535b079a0fe37695a">More...</a><br /></td></tr>
133 <tr class="separator:a409cec620a7e56a535b079a0fe37695a"><td class="memSeparator" colspan="2">&#160;</td></tr>
134 <tr class="memitem:a7ddd3791f151a0ad74b270776ff3726c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_array.xhtml#a7ddd3791f151a0ad74b270776ff3726c">IArray</a> (size_t <a class="el" href="classarm__compute_1_1_i_array.xhtml#a2ff0fb106d58091d2b4363e808f200a3">max_num_values</a>)</td></tr>
135 <tr class="memdesc:a7ddd3791f151a0ad74b270776ff3726c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor: initializes an array which can contain up to max_num_points values.  <a href="#a7ddd3791f151a0ad74b270776ff3726c">More...</a><br /></td></tr>
136 <tr class="separator:a7ddd3791f151a0ad74b270776ff3726c"><td class="memSeparator" colspan="2">&#160;</td></tr>
137 <tr class="memitem:a2ff0fb106d58091d2b4363e808f200a3"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_array.xhtml#a2ff0fb106d58091d2b4363e808f200a3">max_num_values</a> () const </td></tr>
138 <tr class="memdesc:a2ff0fb106d58091d2b4363e808f200a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum number of values which can be stored in this array.  <a href="#a2ff0fb106d58091d2b4363e808f200a3">More...</a><br /></td></tr>
139 <tr class="separator:a2ff0fb106d58091d2b4363e808f200a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
140 <tr class="memitem:acaeb87c4bcccaf15bb25bd2c8e44658a"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_array.xhtml#acaeb87c4bcccaf15bb25bd2c8e44658a">~IArray</a> ()=default</td></tr>
141 <tr class="memdesc:acaeb87c4bcccaf15bb25bd2c8e44658a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default virtual destructor.  <a href="#acaeb87c4bcccaf15bb25bd2c8e44658a">More...</a><br /></td></tr>
142 <tr class="separator:acaeb87c4bcccaf15bb25bd2c8e44658a"><td class="memSeparator" colspan="2">&#160;</td></tr>
143 <tr class="memitem:a6dc031c18a14371984493b25a4230f59"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_array.xhtml#a6dc031c18a14371984493b25a4230f59">num_values</a> () const </td></tr>
144 <tr class="memdesc:a6dc031c18a14371984493b25a4230f59"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of values currently stored in the array.  <a href="#a6dc031c18a14371984493b25a4230f59">More...</a><br /></td></tr>
145 <tr class="separator:a6dc031c18a14371984493b25a4230f59"><td class="memSeparator" colspan="2">&#160;</td></tr>
146 <tr class="memitem:a9031bfcabdaae3ac3e6e349446e282ff"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_array.xhtml#a9031bfcabdaae3ac3e6e349446e282ff">push_back</a> (const T &amp;val)</td></tr>
147 <tr class="memdesc:a9031bfcabdaae3ac3e6e349446e282ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Append the passed argument to the end of the array if there is room.  <a href="#a9031bfcabdaae3ac3e6e349446e282ff">More...</a><br /></td></tr>
148 <tr class="separator:a9031bfcabdaae3ac3e6e349446e282ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
149 <tr class="memitem:ac8bb3912a3ce86b15842e79d0b421204"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_array.xhtml#ac8bb3912a3ce86b15842e79d0b421204">clear</a> ()</td></tr>
150 <tr class="memdesc:ac8bb3912a3ce86b15842e79d0b421204"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear all the points from the array.  <a href="#ac8bb3912a3ce86b15842e79d0b421204">More...</a><br /></td></tr>
151 <tr class="separator:ac8bb3912a3ce86b15842e79d0b421204"><td class="memSeparator" colspan="2">&#160;</td></tr>
152 <tr class="memitem:afd912c5902331232c8a806fcb2d6eaad"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_array.xhtml#afd912c5902331232c8a806fcb2d6eaad">overflow</a> () const </td></tr>
153 <tr class="memdesc:afd912c5902331232c8a806fcb2d6eaad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Did we lose some values because the array is too small?  <a href="#afd912c5902331232c8a806fcb2d6eaad">More...</a><br /></td></tr>
154 <tr class="separator:afd912c5902331232c8a806fcb2d6eaad"><td class="memSeparator" colspan="2">&#160;</td></tr>
155 <tr class="memitem:a4b55468220c2029e7ee1594e34b2b21f"><td class="memItemLeft" align="right" valign="top">virtual T *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_array.xhtml#a4b55468220c2029e7ee1594e34b2b21f">buffer</a> () const =0</td></tr>
156 <tr class="memdesc:a4b55468220c2029e7ee1594e34b2b21f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer to the first element of the array.  <a href="#a4b55468220c2029e7ee1594e34b2b21f">More...</a><br /></td></tr>
157 <tr class="separator:a4b55468220c2029e7ee1594e34b2b21f"><td class="memSeparator" colspan="2">&#160;</td></tr>
158 <tr class="memitem:a861d8aa0fbeb6a0a33ec8d556b7e8657"><td class="memItemLeft" align="right" valign="top">virtual T &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_array.xhtml#a861d8aa0fbeb6a0a33ec8d556b7e8657">at</a> (size_t index) const </td></tr>
159 <tr class="memdesc:a861d8aa0fbeb6a0a33ec8d556b7e8657"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reference to the element of the array located at the given index.  <a href="#a861d8aa0fbeb6a0a33ec8d556b7e8657">More...</a><br /></td></tr>
160 <tr class="separator:a861d8aa0fbeb6a0a33ec8d556b7e8657"><td class="memSeparator" colspan="2">&#160;</td></tr>
161 <tr class="memitem:ae21b0e95ded2dcfb5e62848ea0193828"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_array.xhtml#ae21b0e95ded2dcfb5e62848ea0193828">resize</a> (size_t num)</td></tr>
162 <tr class="memdesc:ae21b0e95ded2dcfb5e62848ea0193828"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resizes the array to contain "num" elements.  <a href="#ae21b0e95ded2dcfb5e62848ea0193828">More...</a><br /></td></tr>
163 <tr class="separator:ae21b0e95ded2dcfb5e62848ea0193828"><td class="memSeparator" colspan="2">&#160;</td></tr>
164 </table>
165 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
166 <div class="textblock"><h3>template&lt;class T&gt;<br />
167 class arm_compute::IArray&lt; T &gt;</h3>
168
169 <p><a class="el" href="classarm__compute_1_1_array.xhtml" title="Basic implementation of the IArray interface which allocates a static number of T values...">Array</a> of type T. </p>
170
171 <p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00040">40</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
172 </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
173 <a class="anchor" id="a409cec620a7e56a535b079a0fe37695a"></a>
174 <div class="memitem">
175 <div class="memproto">
176 <table class="mlabels">
177   <tr>
178   <td class="mlabels-left">
179       <table class="memname">
180         <tr>
181           <td class="memname"><a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a> </td>
182           <td>(</td>
183           <td class="paramname"></td><td>)</td>
184           <td></td>
185         </tr>
186       </table>
187   </td>
188   <td class="mlabels-right">
189 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
190   </tr>
191 </table>
192 </div><div class="memdoc">
193
194 <p>Default constructor. </p>
195
196 <p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00044">44</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
197 <div class="fragment"><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;        : _num_values(0), _max_size(0) {};</div></div><!-- fragment -->
198 </div>
199 </div>
200 <a class="anchor" id="a7ddd3791f151a0ad74b270776ff3726c"></a>
201 <div class="memitem">
202 <div class="memproto">
203 <table class="mlabels">
204   <tr>
205   <td class="mlabels-left">
206       <table class="memname">
207         <tr>
208           <td class="memname"><a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a> </td>
209           <td>(</td>
210           <td class="paramtype">size_t&#160;</td>
211           <td class="paramname"><em>max_num_values</em></td><td>)</td>
212           <td></td>
213         </tr>
214       </table>
215   </td>
216   <td class="mlabels-right">
217 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
218   </tr>
219 </table>
220 </div><div class="memdoc">
221
222 <p>Constructor: initializes an array which can contain up to max_num_points values. </p>
223 <dl class="params"><dt>Parameters</dt><dd>
224   <table class="params">
225     <tr><td class="paramdir">[in]</td><td class="paramname">max_num_values</td><td>Maximum number of values the array will be able to stored </td></tr>
226   </table>
227   </dd>
228 </dl>
229
230 <p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00050">50</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
231 <div class="fragment"><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;        : _num_values(0), _max_size(<a class="code" href="classarm__compute_1_1_i_array.xhtml#a2ff0fb106d58091d2b4363e808f200a3">max_num_values</a>)</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    {</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    }</div><div class="ttc" id="classarm__compute_1_1_i_array_xhtml_a2ff0fb106d58091d2b4363e808f200a3"><div class="ttname"><a href="classarm__compute_1_1_i_array.xhtml#a2ff0fb106d58091d2b4363e808f200a3">arm_compute::IArray::max_num_values</a></div><div class="ttdeci">size_t max_num_values() const </div><div class="ttdoc">Maximum number of values which can be stored in this array. </div><div class="ttdef"><b>Definition:</b> <a href="_i_array_8h_source.xhtml#l00058">IArray.h:58</a></div></div>
232 </div><!-- fragment -->
233 </div>
234 </div>
235 <a class="anchor" id="acaeb87c4bcccaf15bb25bd2c8e44658a"></a>
236 <div class="memitem">
237 <div class="memproto">
238 <table class="mlabels">
239   <tr>
240   <td class="mlabels-left">
241       <table class="memname">
242         <tr>
243           <td class="memname">virtual ~<a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a> </td>
244           <td>(</td>
245           <td class="paramname"></td><td>)</td>
246           <td></td>
247         </tr>
248       </table>
249   </td>
250   <td class="mlabels-right">
251 <span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">default</span></span>  </td>
252   </tr>
253 </table>
254 </div><div class="memdoc">
255
256 <p>Default virtual destructor. </p>
257
258 <p>Referenced by <a class="el" href="_i_array_8h_source.xhtml#l00058">IArray&lt; NELKInternalKeypoint &gt;::max_num_values()</a>.</p>
259
260 </div>
261 </div>
262 <h2 class="groupheader">Member Function Documentation</h2>
263 <a class="anchor" id="a861d8aa0fbeb6a0a33ec8d556b7e8657"></a>
264 <div class="memitem">
265 <div class="memproto">
266 <table class="mlabels">
267   <tr>
268   <td class="mlabels-left">
269       <table class="memname">
270         <tr>
271           <td class="memname">virtual T&amp; at </td>
272           <td>(</td>
273           <td class="paramtype">size_t&#160;</td>
274           <td class="paramname"><em>index</em></td><td>)</td>
275           <td> const</td>
276         </tr>
277       </table>
278   </td>
279   <td class="mlabels-right">
280 <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
281   </tr>
282 </table>
283 </div><div class="memdoc">
284
285 <p>Reference to the element of the array located at the given index. </p>
286 <dl class="params"><dt>Parameters</dt><dd>
287   <table class="params">
288     <tr><td class="paramdir">[in]</td><td class="paramname">index</td><td>Index of the element</td></tr>
289   </table>
290   </dd>
291 </dl>
292 <dl class="section return"><dt>Returns</dt><dd>A reference to the element of the array located at the given index. </dd></dl>
293
294 <p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00117">117</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
295
296 <p>Referenced by <a class="el" href="_i_array_8h_source.xhtml#l00078">IArray&lt; NELKInternalKeypoint &gt;::push_back()</a>.</p>
297 <div class="fragment"><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;    {</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(<a class="code" href="classarm__compute_1_1_i_array.xhtml#a4b55468220c2029e7ee1594e34b2b21f">buffer</a>() == <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;        <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(index &gt;= <a class="code" href="classarm__compute_1_1_i_array.xhtml#a2ff0fb106d58091d2b4363e808f200a3">max_num_values</a>());</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="classarm__compute_1_1_i_array.xhtml#a4b55468220c2029e7ee1594e34b2b21f">buffer</a>()[index];</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    }</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00100">Error.h:100</a></div></div>
298 <div class="ttc" id="classarm__compute_1_1_i_array_xhtml_a4b55468220c2029e7ee1594e34b2b21f"><div class="ttname"><a href="classarm__compute_1_1_i_array.xhtml#a4b55468220c2029e7ee1594e34b2b21f">arm_compute::IArray::buffer</a></div><div class="ttdeci">virtual T * buffer() const =0</div><div class="ttdoc">Pointer to the first element of the array. </div></div>
299 <div class="ttc" id="classarm__compute_1_1_i_array_xhtml_a2ff0fb106d58091d2b4363e808f200a3"><div class="ttname"><a href="classarm__compute_1_1_i_array.xhtml#a2ff0fb106d58091d2b4363e808f200a3">arm_compute::IArray::max_num_values</a></div><div class="ttdeci">size_t max_num_values() const </div><div class="ttdoc">Maximum number of values which can be stored in this array. </div><div class="ttdef"><b>Definition:</b> <a href="_i_array_8h_source.xhtml#l00058">IArray.h:58</a></div></div>
300 </div><!-- fragment -->
301 </div>
302 </div>
303 <a class="anchor" id="a4b55468220c2029e7ee1594e34b2b21f"></a>
304 <div class="memitem">
305 <div class="memproto">
306 <table class="mlabels">
307   <tr>
308   <td class="mlabels-left">
309       <table class="memname">
310         <tr>
311           <td class="memname">virtual T* buffer </td>
312           <td>(</td>
313           <td class="paramname"></td><td>)</td>
314           <td> const</td>
315         </tr>
316       </table>
317   </td>
318   <td class="mlabels-right">
319 <span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
320   </tr>
321 </table>
322 </div><div class="memdoc">
323
324 <p>Pointer to the first element of the array. </p>
325 <p>Other elements of the array can be accessed using <a class="el" href="classarm__compute_1_1_i_array.xhtml#a4b55468220c2029e7ee1594e34b2b21f" title="Pointer to the first element of the array. ">buffer()</a>[idx] for 0 &lt;= idx &lt; num_poins().</p>
326 <dl class="section return"><dt>Returns</dt><dd>A pointer to the first element of the array </dd></dl>
327
328 <p>Implemented in <a class="el" href="classarm__compute_1_1_i_c_l_array.xhtml#a46fdef12397c4404e7706cba3568b42d">ICLArray&lt; T &gt;</a>, <a class="el" href="classarm__compute_1_1_array.xhtml#a46fdef12397c4404e7706cba3568b42d">Array&lt; T &gt;</a>, and <a class="el" href="classarm__compute_1_1_array.xhtml#a46fdef12397c4404e7706cba3568b42d">Array&lt; NELKInternalKeypoint &gt;</a>.</p>
329
330 <p>Referenced by <a class="el" href="_i_array_8h_source.xhtml#l00117">IArray&lt; NELKInternalKeypoint &gt;::at()</a>, and <a class="el" href="_i_array_8h_source.xhtml#l00100">IArray&lt; NELKInternalKeypoint &gt;::overflow()</a>.</p>
331
332 </div>
333 </div>
334 <a class="anchor" id="ac8bb3912a3ce86b15842e79d0b421204"></a>
335 <div class="memitem">
336 <div class="memproto">
337 <table class="mlabels">
338   <tr>
339   <td class="mlabels-left">
340       <table class="memname">
341         <tr>
342           <td class="memname">void clear </td>
343           <td>(</td>
344           <td class="paramname"></td><td>)</td>
345           <td></td>
346         </tr>
347       </table>
348   </td>
349   <td class="mlabels-right">
350 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
351   </tr>
352 </table>
353 </div><div class="memdoc">
354
355 <p>Clear all the points from the array. </p>
356
357 <p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00091">91</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
358 <div class="fragment"><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;    {</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        _num_values = 0;</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;    }</div></div><!-- fragment -->
359 </div>
360 </div>
361 <a class="anchor" id="a2ff0fb106d58091d2b4363e808f200a3"></a>
362 <div class="memitem">
363 <div class="memproto">
364 <table class="mlabels">
365   <tr>
366   <td class="mlabels-left">
367       <table class="memname">
368         <tr>
369           <td class="memname">size_t max_num_values </td>
370           <td>(</td>
371           <td class="paramname"></td><td>)</td>
372           <td> const</td>
373         </tr>
374       </table>
375   </td>
376   <td class="mlabels-right">
377 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
378   </tr>
379 </table>
380 </div><div class="memdoc">
381
382 <p>Maximum number of values which can be stored in this array. </p>
383 <dl class="section return"><dt>Returns</dt><dd>Maximum number of values </dd></dl>
384
385 <p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00058">58</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
386
387 <p>Referenced by <a class="el" href="_i_array_8h_source.xhtml#l00117">IArray&lt; NELKInternalKeypoint &gt;::at()</a>, <a class="el" href="_c_l_array_8h_source.xhtml#l00075">CLArray&lt; T &gt;::cl_buffer()</a>, <a class="el" href="_i_array_8h_source.xhtml#l00100">IArray&lt; NELKInternalKeypoint &gt;::overflow()</a>, <a class="el" href="_i_array_8h_source.xhtml#l00078">IArray&lt; NELKInternalKeypoint &gt;::push_back()</a>, and <a class="el" href="_i_array_8h_source.xhtml#l00128">IArray&lt; NELKInternalKeypoint &gt;::resize()</a>.</p>
388 <div class="fragment"><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    {</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        <span class="keywordflow">return</span> _max_size;</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    }</div></div><!-- fragment -->
389 </div>
390 </div>
391 <a class="anchor" id="a6dc031c18a14371984493b25a4230f59"></a>
392 <div class="memitem">
393 <div class="memproto">
394 <table class="mlabels">
395   <tr>
396   <td class="mlabels-left">
397       <table class="memname">
398         <tr>
399           <td class="memname">size_t num_values </td>
400           <td>(</td>
401           <td class="paramname"></td><td>)</td>
402           <td> const</td>
403         </tr>
404       </table>
405   </td>
406   <td class="mlabels-right">
407 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
408   </tr>
409 </table>
410 </div><div class="memdoc">
411
412 <p>Number of values currently stored in the array. </p>
413 <dl class="section return"><dt>Returns</dt><dd>Number of values currently stored in the array or max_num_values + 1 if the array is overflowed. </dd></dl>
414
415 <p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00068">68</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
416 <div class="fragment"><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    {</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;        <span class="keywordflow">return</span> _num_values;</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    }</div></div><!-- fragment -->
417 </div>
418 </div>
419 <a class="anchor" id="afd912c5902331232c8a806fcb2d6eaad"></a>
420 <div class="memitem">
421 <div class="memproto">
422 <table class="mlabels">
423   <tr>
424   <td class="mlabels-left">
425       <table class="memname">
426         <tr>
427           <td class="memname">bool overflow </td>
428           <td>(</td>
429           <td class="paramname"></td><td>)</td>
430           <td> const</td>
431         </tr>
432       </table>
433   </td>
434   <td class="mlabels-right">
435 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
436   </tr>
437 </table>
438 </div><div class="memdoc">
439
440 <p>Did we lose some values because the array is too small? </p>
441 <dl class="section return"><dt>Returns</dt><dd>True if we tried to add a value using <a class="el" href="classarm__compute_1_1_i_array.xhtml#a9031bfcabdaae3ac3e6e349446e282ff" title="Append the passed argument to the end of the array if there is room. ">push_back()</a> but there wasn't any room left to store it. False if all the values were successfully added to the array. </dd></dl>
442
443 <p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00100">100</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
444 <div class="fragment"><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    {</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;        <span class="keywordflow">return</span> _num_values &gt; <a class="code" href="classarm__compute_1_1_i_array.xhtml#a2ff0fb106d58091d2b4363e808f200a3">max_num_values</a>();</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    }</div><div class="ttc" id="classarm__compute_1_1_i_array_xhtml_a2ff0fb106d58091d2b4363e808f200a3"><div class="ttname"><a href="classarm__compute_1_1_i_array.xhtml#a2ff0fb106d58091d2b4363e808f200a3">arm_compute::IArray::max_num_values</a></div><div class="ttdeci">size_t max_num_values() const </div><div class="ttdoc">Maximum number of values which can be stored in this array. </div><div class="ttdef"><b>Definition:</b> <a href="_i_array_8h_source.xhtml#l00058">IArray.h:58</a></div></div>
445 </div><!-- fragment -->
446 </div>
447 </div>
448 <a class="anchor" id="a9031bfcabdaae3ac3e6e349446e282ff"></a>
449 <div class="memitem">
450 <div class="memproto">
451 <table class="mlabels">
452   <tr>
453   <td class="mlabels-left">
454       <table class="memname">
455         <tr>
456           <td class="memname">bool push_back </td>
457           <td>(</td>
458           <td class="paramtype">const T &amp;&#160;</td>
459           <td class="paramname"><em>val</em></td><td>)</td>
460           <td></td>
461         </tr>
462       </table>
463   </td>
464   <td class="mlabels-right">
465 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
466   </tr>
467 </table>
468 </div><div class="memdoc">
469
470 <p>Append the passed argument to the end of the array if there is room. </p>
471 <dl class="params"><dt>Parameters</dt><dd>
472   <table class="params">
473     <tr><td class="paramdir">[in]</td><td class="paramname">val</td><td>Value to add to the array.</td></tr>
474   </table>
475   </dd>
476 </dl>
477 <dl class="section return"><dt>Returns</dt><dd>True if the point was successfully added to the array. False if the array is full and the point couldn't be added. </dd></dl>
478
479 <p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00078">78</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
480 <div class="fragment"><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    {</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;        <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(0 == _max_size);</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;        <span class="keywordflow">if</span>(_num_values &gt;= <a class="code" href="classarm__compute_1_1_i_array.xhtml#a2ff0fb106d58091d2b4363e808f200a3">max_num_values</a>())</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        {</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;            _num_values = <a class="code" href="classarm__compute_1_1_i_array.xhtml#a2ff0fb106d58091d2b4363e808f200a3">max_num_values</a>() + 1;</div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;        }</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        <a class="code" href="classarm__compute_1_1_i_array.xhtml#a861d8aa0fbeb6a0a33ec8d556b7e8657">at</a>(_num_values) = val;</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;        _num_values++;</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;    }</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00100">Error.h:100</a></div></div>
481 <div class="ttc" id="classarm__compute_1_1_i_array_xhtml_a2ff0fb106d58091d2b4363e808f200a3"><div class="ttname"><a href="classarm__compute_1_1_i_array.xhtml#a2ff0fb106d58091d2b4363e808f200a3">arm_compute::IArray::max_num_values</a></div><div class="ttdeci">size_t max_num_values() const </div><div class="ttdoc">Maximum number of values which can be stored in this array. </div><div class="ttdef"><b>Definition:</b> <a href="_i_array_8h_source.xhtml#l00058">IArray.h:58</a></div></div>
482 <div class="ttc" id="classarm__compute_1_1_i_array_xhtml_a861d8aa0fbeb6a0a33ec8d556b7e8657"><div class="ttname"><a href="classarm__compute_1_1_i_array.xhtml#a861d8aa0fbeb6a0a33ec8d556b7e8657">arm_compute::IArray::at</a></div><div class="ttdeci">virtual T &amp; at(size_t index) const </div><div class="ttdoc">Reference to the element of the array located at the given index. </div><div class="ttdef"><b>Definition:</b> <a href="_i_array_8h_source.xhtml#l00117">IArray.h:117</a></div></div>
483 </div><!-- fragment -->
484 </div>
485 </div>
486 <a class="anchor" id="ae21b0e95ded2dcfb5e62848ea0193828"></a>
487 <div class="memitem">
488 <div class="memproto">
489 <table class="mlabels">
490   <tr>
491   <td class="mlabels-left">
492       <table class="memname">
493         <tr>
494           <td class="memname">void resize </td>
495           <td>(</td>
496           <td class="paramtype">size_t&#160;</td>
497           <td class="paramname"><em>num</em></td><td>)</td>
498           <td></td>
499         </tr>
500       </table>
501   </td>
502   <td class="mlabels-right">
503 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
504   </tr>
505 </table>
506 </div><div class="memdoc">
507
508 <p>Resizes the array to contain "num" elements. </p>
509 <p>If "num" is smaller than the maximum array size, the content is reduced to its first "num" elements, "num" elements can't be bigger than the maximum number of values which can be stored in this array.</p>
510 <dl class="params"><dt>Parameters</dt><dd>
511   <table class="params">
512     <tr><td class="paramdir">[in]</td><td class="paramname">num</td><td>The new array size in number of elements </td></tr>
513   </table>
514   </dd>
515 </dl>
516
517 <p>Definition at line <a class="el" href="_i_array_8h_source.xhtml#l00128">128</a> of file <a class="el" href="_i_array_8h_source.xhtml">IArray.h</a>.</p>
518 <div class="fragment"><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    {</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        <a class="code" href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a>(num &gt; <a class="code" href="classarm__compute_1_1_i_array.xhtml#a2ff0fb106d58091d2b4363e808f200a3">max_num_values</a>());</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        _num_values = num;</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    };</div><div class="ttc" id="_error_8h_xhtml_a54a6080c9f4df1f908e57a9bbb46f5da"><div class="ttname"><a href="_error_8h.xhtml#a54a6080c9f4df1f908e57a9bbb46f5da">ARM_COMPUTE_ERROR_ON</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON(cond)</div><div class="ttdoc">If the condition is true then an error message is printed and an exception thrown. </div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00100">Error.h:100</a></div></div>
519 <div class="ttc" id="classarm__compute_1_1_i_array_xhtml_a2ff0fb106d58091d2b4363e808f200a3"><div class="ttname"><a href="classarm__compute_1_1_i_array.xhtml#a2ff0fb106d58091d2b4363e808f200a3">arm_compute::IArray::max_num_values</a></div><div class="ttdeci">size_t max_num_values() const </div><div class="ttdoc">Maximum number of values which can be stored in this array. </div><div class="ttdef"><b>Definition:</b> <a href="_i_array_8h_source.xhtml#l00058">IArray.h:58</a></div></div>
520 </div><!-- fragment -->
521 </div>
522 </div>
523 <hr/>The documentation for this class was generated from the following file:<ul>
524 <li>arm_compute/core/<a class="el" href="_i_array_8h_source.xhtml">IArray.h</a></li>
525 </ul>
526 </div><!-- contents -->
527 </div><!-- doc-content -->
528 <!-- start footer part -->
529 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
530   <ul>
531     <li class="navelem"><a class="el" href="namespacearm__compute.xhtml">arm_compute</a></li><li class="navelem"><a class="el" href="classarm__compute_1_1_i_array.xhtml">IArray</a></li>
532     <li class="footer">Generated on Wed Apr 12 2017 14:26:06 for ARM Compute Library by
533     <a href="http://www.doxygen.org/index.html">
534     <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
535   </ul>
536 </div>
537 </body>
538 </html>