blob: baaf71fa7bdef7282e4a2e145340c2da863950a3 [file] [log] [blame]
<!-- HTML header for doxygen 1.8.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<meta name="robots" content="NOINDEX, NOFOLLOW" /> <!-- Prevent indexing by search engines -->
<title>Compute Library: ICLDistribution1D Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">Compute Library
&#160;<span id="projectnumber">v17.06</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.xhtml"><span>Main&#160;Page</span></a></li>
<li><a href="pages.xhtml"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.xhtml"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.xhtml"><span>Data&#160;Structures</span></a></li>
<li><a href="files.xhtml"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.xhtml"><span>Data&#160;Structures</span></a></li>
<li><a href="classes.xhtml"><span>Data&#160;Structure&#160;Index</span></a></li>
<li><a href="inherits.xhtml"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.xhtml"><span>Data&#160;Fields</span></a></li>
</ul>
</div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classarm__compute_1_1_i_c_l_distribution1_d.xhtml','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> </div>
<div class="headertitle">
<div class="title">ICLDistribution1D Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">
<p><a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml" title="ICLDistribution1D interface class. ">ICLDistribution1D</a> interface class.
<a href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="_i_c_l_distribution1_d_8h_source.xhtml">ICLDistribution1D.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for ICLDistribution1D:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="classarm__compute_1_1_i_c_l_distribution1_d__coll__graph.svg" width="138" height="187"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.xhtml">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a0289f4eb4c6ca9ddcdc7d0926592a98f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml#a0289f4eb4c6ca9ddcdc7d0926592a98f">ICLDistribution1D</a> (size_t <a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml#ae3664b841732a09d7749953ca5b81373">num_bins</a>, int32_t <a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml#ad952765741736e8e669876dd06636873">offset</a>, uint32_t <a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml#ac548d0ee88978d0ba481323aab25e46a">range</a>)</td></tr>
<tr class="memdesc:a0289f4eb4c6ca9ddcdc7d0926592a98f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor: Creates a 1D CLDistribution of a consecutive interval [offset, offset + range - 1] defined by a start offset and valid range, divided equally into num_bins parts. <a href="#a0289f4eb4c6ca9ddcdc7d0926592a98f">More...</a><br /></td></tr>
<tr class="separator:a0289f4eb4c6ca9ddcdc7d0926592a98f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a298d976d9b3cf2a86f114292c1a58839"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml#a298d976d9b3cf2a86f114292c1a58839">ICLDistribution1D</a> (const <a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml">ICLDistribution1D</a> &amp;)=delete</td></tr>
<tr class="memdesc:a298d976d9b3cf2a86f114292c1a58839"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prevent instances of this class from being copied (As this class contains pointers). <a href="#a298d976d9b3cf2a86f114292c1a58839">More...</a><br /></td></tr>
<tr class="separator:a298d976d9b3cf2a86f114292c1a58839"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0182f7f14809fcf8e7d1b9c8afebeafd"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml">ICLDistribution1D</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml#a0182f7f14809fcf8e7d1b9c8afebeafd">operator=</a> (const <a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml">ICLDistribution1D</a> &amp;)=delete</td></tr>
<tr class="memdesc:a0182f7f14809fcf8e7d1b9c8afebeafd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prevent instances of this class from being copied (As this class contains pointers). <a href="#a0182f7f14809fcf8e7d1b9c8afebeafd">More...</a><br /></td></tr>
<tr class="separator:a0182f7f14809fcf8e7d1b9c8afebeafd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0abc7a5c0d172947f0e6a0c0dde3df0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml#ac0abc7a5c0d172947f0e6a0c0dde3df0">map</a> (cl::CommandQueue &amp;q, bool blocking=true)</td></tr>
<tr class="memdesc:ac0abc7a5c0d172947f0e6a0c0dde3df0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enqueue a map operation of the allocated buffer on the given queue. <a href="#ac0abc7a5c0d172947f0e6a0c0dde3df0">More...</a><br /></td></tr>
<tr class="separator:ac0abc7a5c0d172947f0e6a0c0dde3df0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af974a2360069c2ef8df4496d00e4f6cc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml#af974a2360069c2ef8df4496d00e4f6cc">unmap</a> (cl::CommandQueue &amp;q)</td></tr>
<tr class="memdesc:af974a2360069c2ef8df4496d00e4f6cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enqueue an unmap operation of the allocated and mapped buffer on the given queue. <a href="#af974a2360069c2ef8df4496d00e4f6cc">More...</a><br /></td></tr>
<tr class="separator:af974a2360069c2ef8df4496d00e4f6cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea577b83a6734249a78ac036a23d5c6b"><td class="memItemLeft" align="right" valign="top">virtual cl::Buffer &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml#aea577b83a6734249a78ac036a23d5c6b">cl_buffer</a> ()=0</td></tr>
<tr class="memdesc:aea577b83a6734249a78ac036a23d5c6b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to be implemented by the child class to return a reference to the OpenCL buffer containing the distribution's data. <a href="#aea577b83a6734249a78ac036a23d5c6b">More...</a><br /></td></tr>
<tr class="separator:aea577b83a6734249a78ac036a23d5c6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a383529771c579b362ede2307c6bab9"><td class="memItemLeft" align="right" valign="top">uint32_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml#a0a383529771c579b362ede2307c6bab9">buffer</a> () const override</td></tr>
<tr class="memdesc:a0a383529771c579b362ede2307c6bab9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the start of the distribution. <a href="#a0a383529771c579b362ede2307c6bab9">More...</a><br /></td></tr>
<tr class="separator:a0a383529771c579b362ede2307c6bab9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classarm__compute_1_1_i_distribution1_d"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarm__compute_1_1_i_distribution1_d')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml">IDistribution1D</a></td></tr>
<tr class="memitem:a9c3a40b0dbbd79ed909471d9e05283aa inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml#a9c3a40b0dbbd79ed909471d9e05283aa">IDistribution1D</a> (size_t <a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml#ae3664b841732a09d7749953ca5b81373">num_bins</a>, int32_t <a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml#ad952765741736e8e669876dd06636873">offset</a>, uint32_t <a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml#ac548d0ee88978d0ba481323aab25e46a">range</a>)</td></tr>
<tr class="memdesc:a9c3a40b0dbbd79ed909471d9e05283aa inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor: Creates a 1D Distribution of a consecutive interval [offset, offset + range - 1] defined by a start offset and valid range, divided equally into num_bins parts. <a href="#a9c3a40b0dbbd79ed909471d9e05283aa">More...</a><br /></td></tr>
<tr class="separator:a9c3a40b0dbbd79ed909471d9e05283aa inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3664b841732a09d7749953ca5b81373 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><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_distribution1_d.xhtml#ae3664b841732a09d7749953ca5b81373">num_bins</a> () const </td></tr>
<tr class="memdesc:ae3664b841732a09d7749953ca5b81373 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the number of bins that the distribution has. <a href="#ae3664b841732a09d7749953ca5b81373">More...</a><br /></td></tr>
<tr class="separator:ae3664b841732a09d7749953ca5b81373 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad952765741736e8e669876dd06636873 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml#ad952765741736e8e669876dd06636873">offset</a> () const </td></tr>
<tr class="memdesc:ad952765741736e8e669876dd06636873 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the offset of the distribution. <a href="#ad952765741736e8e669876dd06636873">More...</a><br /></td></tr>
<tr class="separator:ad952765741736e8e669876dd06636873 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac548d0ee88978d0ba481323aab25e46a inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml#ac548d0ee88978d0ba481323aab25e46a">range</a> () const </td></tr>
<tr class="memdesc:ac548d0ee88978d0ba481323aab25e46a inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the range of the distribution. <a href="#ac548d0ee88978d0ba481323aab25e46a">More...</a><br /></td></tr>
<tr class="separator:ac548d0ee88978d0ba481323aab25e46a inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a862904f65dffef9c8a72d3aeadc56be1 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml#a862904f65dffef9c8a72d3aeadc56be1">window</a> () const </td></tr>
<tr class="memdesc:a862904f65dffef9c8a72d3aeadc56be1 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the window of the distribution, which is the range divided by the number of bins. <a href="#a862904f65dffef9c8a72d3aeadc56be1">More...</a><br /></td></tr>
<tr class="separator:a862904f65dffef9c8a72d3aeadc56be1 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9027aed7fdb902ebc243647c8c3fbea2 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml#a9027aed7fdb902ebc243647c8c3fbea2">set_range</a> (uint32_t <a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml#ac548d0ee88978d0ba481323aab25e46a">range</a>)</td></tr>
<tr class="memdesc:a9027aed7fdb902ebc243647c8c3fbea2 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the range of the distribution. <a href="#a9027aed7fdb902ebc243647c8c3fbea2">More...</a><br /></td></tr>
<tr class="separator:a9027aed7fdb902ebc243647c8c3fbea2 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7701a09a964eab360a8e51fa7ad2c16 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><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_distribution1_d.xhtml#ad7701a09a964eab360a8e51fa7ad2c16">size</a> () const override</td></tr>
<tr class="memdesc:ad7701a09a964eab360a8e51fa7ad2c16 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the total size in bytes of the distribution. <a href="#ad7701a09a964eab360a8e51fa7ad2c16">More...</a><br /></td></tr>
<tr class="separator:ad7701a09a964eab360a8e51fa7ad2c16 inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad251169c06da412071bdfb6e92444e6e inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><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_distribution1_d.xhtml#ad251169c06da412071bdfb6e92444e6e">dimensions</a> () const override</td></tr>
<tr class="memdesc:ad251169c06da412071bdfb6e92444e6e inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the dimensions of the distribution. <a href="#ad251169c06da412071bdfb6e92444e6e">More...</a><br /></td></tr>
<tr class="separator:ad251169c06da412071bdfb6e92444e6e inherit pub_methods_classarm__compute_1_1_i_distribution1_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classarm__compute_1_1_i_distribution"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarm__compute_1_1_i_distribution')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classarm__compute_1_1_i_distribution.xhtml">IDistribution</a></td></tr>
<tr class="memitem:a9ee18d758810dbcfb1c9717956f51c38 inherit pub_methods_classarm__compute_1_1_i_distribution"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_distribution.xhtml#a9ee18d758810dbcfb1c9717956f51c38">~IDistribution</a> ()=default</td></tr>
<tr class="memdesc:a9ee18d758810dbcfb1c9717956f51c38 inherit pub_methods_classarm__compute_1_1_i_distribution"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default virtual destructor. <a href="#a9ee18d758810dbcfb1c9717956f51c38">More...</a><br /></td></tr>
<tr class="separator:a9ee18d758810dbcfb1c9717956f51c38 inherit pub_methods_classarm__compute_1_1_i_distribution"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b0c20bea8c40bf73b3160cb1e0da350 inherit pub_methods_classarm__compute_1_1_i_distribution"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_distribution.xhtml#a5b0c20bea8c40bf73b3160cb1e0da350">clear</a> () const </td></tr>
<tr class="memdesc:a5b0c20bea8c40bf73b3160cb1e0da350 inherit pub_methods_classarm__compute_1_1_i_distribution"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears the distribution by setting every element to zero. <a href="#a5b0c20bea8c40bf73b3160cb1e0da350">More...</a><br /></td></tr>
<tr class="separator:a5b0c20bea8c40bf73b3160cb1e0da350 inherit pub_methods_classarm__compute_1_1_i_distribution"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml" title="ICLDistribution1D interface class. ">ICLDistribution1D</a> interface class. </p>
<p>Definition at line <a class="el" href="_i_c_l_distribution1_d_8h_source.xhtml#l00041">41</a> of file <a class="el" href="_i_c_l_distribution1_d_8h_source.xhtml">ICLDistribution1D.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a0289f4eb4c6ca9ddcdc7d0926592a98f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml">ICLDistribution1D</a> </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>num_bins</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t&#160;</td>
<td class="paramname"><em>offset</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>range</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor: Creates a 1D CLDistribution of a consecutive interval [offset, offset + range - 1] defined by a start offset and valid range, divided equally into num_bins parts. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">num_bins</td><td>The number of bins the distribution is divided in. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">offset</td><td>The start of the values to use. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">range</td><td>The total number of the consecutive values of the distribution interval. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="a298d976d9b3cf2a86f114292c1a58839"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml">ICLDistribution1D</a> </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml">ICLDistribution1D</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Prevent instances of this class from being copied (As this class contains pointers). </p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a0a383529771c579b362ede2307c6bab9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint32_t* buffer </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a pointer to the start of the distribution. </p>
<p>Other elements of the array can be accessed using <a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml#a0a383529771c579b362ede2307c6bab9" title="Returns a pointer to the start of the distribution. ">buffer()</a>[idx] for 0 &lt;= idx &lt; <a class="el" href="classarm__compute_1_1_i_distribution1_d.xhtml#ae3664b841732a09d7749953ca5b81373" title="Returns the number of bins that the distribution has. ">num_bins()</a></p>
<dl class="section return"><dt>Returns</dt><dd>Pointer to the start of the distribution. </dd></dl>
<p>Implements <a class="el" href="classarm__compute_1_1_i_distribution.xhtml#a0eb5856c63562cb144938ed77d6823a0">IDistribution</a>.</p>
</div>
</div>
<a class="anchor" id="aea577b83a6734249a78ac036a23d5c6b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual cl::Buffer&amp; cl_buffer </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Interface to be implemented by the child class to return a reference to the OpenCL buffer containing the distribution's data. </p>
<dl class="section return"><dt>Returns</dt><dd>A reference to an OpenCL buffer containing the distribution's data. </dd></dl>
<p>Implemented in <a class="el" href="classarm__compute_1_1_c_l_distribution1_d.xhtml#a55dcc12377d15f244c59975f7cd1f623">CLDistribution1D</a>.</p>
</div>
</div>
<a class="anchor" id="ac0abc7a5c0d172947f0e6a0c0dde3df0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void map </td>
<td>(</td>
<td class="paramtype">cl::CommandQueue &amp;&#160;</td>
<td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>blocking</em> = <code>true</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Enqueue a map operation of the allocated buffer on the given queue. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in,out]</td><td class="paramname">q</td><td>The CL command queue to use for the mapping operation. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">blocking</td><td>If true, then the mapping will be ready to use by the time this method returns, else it is the caller's responsibility to flush the queue and wait for the mapping operation to have completed before using the returned mapping pointer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="a0182f7f14809fcf8e7d1b9c8afebeafd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml">ICLDistribution1D</a>&amp; operator= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_c_l_distribution1_d.xhtml">ICLDistribution1D</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Prevent instances of this class from being copied (As this class contains pointers). </p>
</div>
</div>
<a class="anchor" id="af974a2360069c2ef8df4496d00e4f6cc"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void unmap </td>
<td>(</td>
<td class="paramtype">cl::CommandQueue &amp;&#160;</td>
<td class="paramname"><em>q</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Enqueue an unmap operation of the allocated and mapped buffer on the given queue. </p>
<dl class="section note"><dt>Note</dt><dd>This method simply enqueues the unmap operation, it is the caller's responsibility to flush the queue and make sure the unmap is finished before the memory is accessed by the device.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in,out]</td><td class="paramname">q</td><td>The CL command queue to use for the mapping operation. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>arm_compute/core/CL/<a class="el" href="_i_c_l_distribution1_d_8h_source.xhtml">ICLDistribution1D.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<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_c_l_distribution1_d.xhtml">ICLDistribution1D</a></li>
<li class="footer">Generated on Fri Jun 23 2017 15:44:35 for Compute Library by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
</ul>
</div>
</body>
</html>