| <!-- HTML header for doxygen 1.8.15--> |
| <!-- Remember to use version doxygen 1.8.15 +--> |
| <!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.15"/> |
| <meta name="robots" content="NOINDEX, NOFOLLOW" /> <!-- Prevent indexing by search engines --> |
| <title>Compute Library: GCKernel 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"> |
| /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ |
| $(document).ready(initResizable); |
| /* @license-end */</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/x-mathjax-config"> |
| MathJax.Hub.Config({ |
| extensions: ["tex2jax.js"], |
| jax: ["input/TeX","output/HTML-CSS"], |
| }); |
| </script><script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script> |
| <link href="doxygen.css" rel="stylesheet" type="text/css" /> |
| <link href="stylesheet.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;"> |
| <img alt="Compute Library" src="https://raw.githubusercontent.com/ARM-software/ComputeLibrary/gh-pages/ACL_logo.png" style="max-width: 100%;margin-top: 15px;margin-left: 10px"/> |
| <td style="padding-left: 0.5em;"> |
| <div id="projectname"> |
|  <span id="projectnumber">19.08</span> |
| </div> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| <!-- end header part --> |
| <!-- Generated by Doxygen 1.8.15 --> |
| <script type="text/javascript"> |
| /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ |
| var searchBox = new SearchBox("searchBox", "search",false,'Search'); |
| /* @license-end */ |
| </script> |
| <script type="text/javascript" src="menudata.js"></script> |
| <script type="text/javascript" src="menu.js"></script> |
| <script type="text/javascript"> |
| /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ |
| $(function() { |
| initMenu('',true,false,'search.php','Search'); |
| $(document).ready(function() { init_search(); }); |
| }); |
| /* @license-end */</script> |
| <div id="main-nav"></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"> |
| /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ |
| $(document).ready(function(){initNavTree('classarm__compute_1_1_g_c_kernel.xhtml','');}); |
| /* @license-end */ |
| </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">GCKernel Class Reference</div> </div> |
| </div><!--header--> |
| <div class="contents"> |
| |
| <p><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml" title="GCKernel class.">GCKernel</a> class. |
| <a href="classarm__compute_1_1_g_c_kernel.xhtml#details">More...</a></p> |
| |
| <p><code>#include <<a class="el" href="_g_c_kernel_library_8h_source.xhtml">GCKernelLibrary.h</a>></code></p> |
| <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:a4e7b1870ca694b9b2b6c4a0f50e1de3c"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#a4e7b1870ca694b9b2b6c4a0f50e1de3c">GCKernel</a> ()</td></tr> |
| <tr class="memdesc:a4e7b1870ca694b9b2b6c4a0f50e1de3c"><td class="mdescLeft"> </td><td class="mdescRight">Default Constructor. <a href="#a4e7b1870ca694b9b2b6c4a0f50e1de3c">More...</a><br /></td></tr> |
| <tr class="separator:a4e7b1870ca694b9b2b6c4a0f50e1de3c"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a9c258aec518fbcef82144d787374c0f4"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#a9c258aec518fbcef82144d787374c0f4">GCKernel</a> (const <a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a> &)=default</td></tr> |
| <tr class="memdesc:a9c258aec518fbcef82144d787374c0f4"><td class="mdescLeft"> </td><td class="mdescRight">Default Copy Constructor. <a href="#a9c258aec518fbcef82144d787374c0f4">More...</a><br /></td></tr> |
| <tr class="separator:a9c258aec518fbcef82144d787374c0f4"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a2e770306c0b7e7d560d73fe1f9330e77"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#a2e770306c0b7e7d560d73fe1f9330e77">GCKernel</a> (<a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a> &&)=default</td></tr> |
| <tr class="memdesc:a2e770306c0b7e7d560d73fe1f9330e77"><td class="mdescLeft"> </td><td class="mdescRight">Default Move Constructor. <a href="#a2e770306c0b7e7d560d73fe1f9330e77">More...</a><br /></td></tr> |
| <tr class="separator:a2e770306c0b7e7d560d73fe1f9330e77"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:af29ae815590ed07fc2ce2dc3f77a23a7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#af29ae815590ed07fc2ce2dc3f77a23a7">operator=</a> (const <a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a> &)=default</td></tr> |
| <tr class="memdesc:af29ae815590ed07fc2ce2dc3f77a23a7"><td class="mdescLeft"> </td><td class="mdescRight">Default copy assignment operator. <a href="#af29ae815590ed07fc2ce2dc3f77a23a7">More...</a><br /></td></tr> |
| <tr class="separator:af29ae815590ed07fc2ce2dc3f77a23a7"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ab3eebd489d16da5b5f3378781df02052"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#ab3eebd489d16da5b5f3378781df02052">operator=</a> (<a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a> &&)=default</td></tr> |
| <tr class="memdesc:ab3eebd489d16da5b5f3378781df02052"><td class="mdescLeft"> </td><td class="mdescRight">Default move assignment operator. <a href="#ab3eebd489d16da5b5f3378781df02052">More...</a><br /></td></tr> |
| <tr class="separator:ab3eebd489d16da5b5f3378781df02052"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ab344625b341d67d80da2d63854401617"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#ab344625b341d67d80da2d63854401617">GCKernel</a> (std::string <a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#a1d89c28bd42ba9a52da008bb69367171">name</a>, GLuint program)</td></tr> |
| <tr class="memdesc:ab344625b341d67d80da2d63854401617"><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#ab344625b341d67d80da2d63854401617">More...</a><br /></td></tr> |
| <tr class="separator:ab344625b341d67d80da2d63854401617"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a1b2e4d932f06eda71c000133bd277688"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#a1b2e4d932f06eda71c000133bd277688">~GCKernel</a> ()</td></tr> |
| <tr class="memdesc:a1b2e4d932f06eda71c000133bd277688"><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="#a1b2e4d932f06eda71c000133bd277688">More...</a><br /></td></tr> |
| <tr class="separator:a1b2e4d932f06eda71c000133bd277688"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a1d89c28bd42ba9a52da008bb69367171"><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#a1d89c28bd42ba9a52da008bb69367171">name</a> () const</td></tr> |
| <tr class="memdesc:a1d89c28bd42ba9a52da008bb69367171"><td class="mdescLeft"> </td><td class="mdescRight">Returns kernel name. <a href="#a1d89c28bd42ba9a52da008bb69367171">More...</a><br /></td></tr> |
| <tr class="separator:a1d89c28bd42ba9a52da008bb69367171"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:af88e933209c9201dfdafa052d3181aac"><td class="memItemLeft" align="right" valign="top">GLuint </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#af88e933209c9201dfdafa052d3181aac">get_program</a> () const</td></tr> |
| <tr class="memdesc:af88e933209c9201dfdafa052d3181aac"><td class="mdescLeft"> </td><td class="mdescRight">Get program id. <a href="#af88e933209c9201dfdafa052d3181aac">More...</a><br /></td></tr> |
| <tr class="separator:af88e933209c9201dfdafa052d3181aac"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a8a05de24712939691a7cf8934d9e5c5f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#a8a05de24712939691a7cf8934d9e5c5f">use</a> ()</td></tr> |
| <tr class="memdesc:a8a05de24712939691a7cf8934d9e5c5f"><td class="mdescLeft"> </td><td class="mdescRight">Use current program. <a href="#a8a05de24712939691a7cf8934d9e5c5f">More...</a><br /></td></tr> |
| <tr class="separator:a8a05de24712939691a7cf8934d9e5c5f"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ae02bc07b18ddc44c29318c100a063d3a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#ae02bc07b18ddc44c29318c100a063d3a">unuse</a> ()</td></tr> |
| <tr class="memdesc:ae02bc07b18ddc44c29318c100a063d3a"><td class="mdescLeft"> </td><td class="mdescRight">Unuse current program. <a href="#ae02bc07b18ddc44c29318c100a063d3a">More...</a><br /></td></tr> |
| <tr class="separator:ae02bc07b18ddc44c29318c100a063d3a"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ad5cfd50c152f0aa984f53bb034d1461b"><td class="memTemplParams" colspan="2">template<class T > </td></tr> |
| <tr class="memitem:ad5cfd50c152f0aa984f53bb034d1461b"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#ad5cfd50c152f0aa984f53bb034d1461b">set_argument</a> (unsigned int idx, T value)</td></tr> |
| <tr class="memdesc:ad5cfd50c152f0aa984f53bb034d1461b"><td class="mdescLeft"> </td><td class="mdescRight">Set argument value at index of shader params. <a href="#ad5cfd50c152f0aa984f53bb034d1461b">More...</a><br /></td></tr> |
| <tr class="separator:ad5cfd50c152f0aa984f53bb034d1461b"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a2ff24cc62df8324f57dcc2f3c9e533a9"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#a2ff24cc62df8324f57dcc2f3c9e533a9">clear_arguments</a> ()</td></tr> |
| <tr class="memdesc:a2ff24cc62df8324f57dcc2f3c9e533a9"><td class="mdescLeft"> </td><td class="mdescRight">Clear shader arguments. <a href="#a2ff24cc62df8324f57dcc2f3c9e533a9">More...</a><br /></td></tr> |
| <tr class="separator:a2ff24cc62df8324f57dcc2f3c9e533a9"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ae722344eb4eb8a404d600561914859ab"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#ae722344eb4eb8a404d600561914859ab">set_shader_params_binding_point</a> (unsigned int binding)</td></tr> |
| <tr class="memdesc:ae722344eb4eb8a404d600561914859ab"><td class="mdescLeft"> </td><td class="mdescRight">Set shader params binding point. <a href="#ae722344eb4eb8a404d600561914859ab">More...</a><br /></td></tr> |
| <tr class="separator:ae722344eb4eb8a404d600561914859ab"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a7c2752de95fae1daedbae97fa9b031e4"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#a7c2752de95fae1daedbae97fa9b031e4">update_shader_params</a> ()</td></tr> |
| <tr class="memdesc:a7c2752de95fae1daedbae97fa9b031e4"><td class="mdescLeft"> </td><td class="mdescRight">Update shader params. <a href="#a7c2752de95fae1daedbae97fa9b031e4">More...</a><br /></td></tr> |
| <tr class="separator:a7c2752de95fae1daedbae97fa9b031e4"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a4b66d5e31b5dc18b314c8a68163263bd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml#a4b66d5e31b5dc18b314c8a68163263bd">cleanup</a> ()</td></tr> |
| <tr class="memdesc:a4b66d5e31b5dc18b314c8a68163263bd"><td class="mdescLeft"> </td><td class="mdescRight">Clean up program and ubo. <a href="#a4b66d5e31b5dc18b314c8a68163263bd">More...</a><br /></td></tr> |
| <tr class="separator:a4b66d5e31b5dc18b314c8a68163263bd"><td class="memSeparator" colspan="2"> </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_g_c_kernel.xhtml" title="GCKernel class.">GCKernel</a> class. </p> |
| |
| <p class="definition">Definition at line <a class="el" href="_g_c_kernel_library_8h_source.xhtml#l00087">87</a> of file <a class="el" href="_g_c_kernel_library_8h_source.xhtml">GCKernelLibrary.h</a>.</p> |
| </div><h2 class="groupheader">Constructor & Destructor Documentation</h2> |
| <a id="a4e7b1870ca694b9b2b6c4a0f50e1de3c"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a4e7b1870ca694b9b2b6c4a0f50e1de3c">◆ </a></span>GCKernel() <span class="overload">[1/4]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a> </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Default Constructor. </p> |
| |
| <p class="definition">Definition at line <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml#l00131">131</a> of file <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml">GCKernelLibrary.cpp</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  : _name(), _program(), _shader_arguments(), _shader_params_ubo_name(), _shader_params_binding_point(), _shader_params_index(), _shader_params_size()</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span> {</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span> }</div></div><!-- fragment --> |
| </div> |
| </div> |
| <a id="a9c258aec518fbcef82144d787374c0f4"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a9c258aec518fbcef82144d787374c0f4">◆ </a></span>GCKernel() <span class="overload">[2/4]</span></h2> |
| |
| <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_g_c_kernel.xhtml">GCKernel</a> </td> |
| <td>(</td> |
| <td class="paramtype">const <a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a> & </td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">default</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Default Copy Constructor. </p> |
| |
| </div> |
| </div> |
| <a id="a2e770306c0b7e7d560d73fe1f9330e77"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a2e770306c0b7e7d560d73fe1f9330e77">◆ </a></span>GCKernel() <span class="overload">[3/4]</span></h2> |
| |
| <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_g_c_kernel.xhtml">GCKernel</a> </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a> && </td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">default</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Default Move Constructor. </p> |
| |
| </div> |
| </div> |
| <a id="ab344625b341d67d80da2d63854401617"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#ab344625b341d67d80da2d63854401617">◆ </a></span>GCKernel() <span class="overload">[4/4]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a> </td> |
| <td>(</td> |
| <td class="paramtype">std::string </td> |
| <td class="paramname"><em>name</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">GLuint </td> |
| <td class="paramname"><em>program</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Constructor. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a> name. </td></tr> |
| <tr><td class="paramdir">[in]</td><td class="paramname">program</td><td>Built program. </td></tr> |
| </table> |
| </dd> |
| </dl> |
| |
| <p class="definition">Definition at line <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml#l00141">141</a> of file <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml">GCKernelLibrary.cpp</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  : _name(std::move(<a class="code" href="classarm__compute_1_1_g_c_kernel.xhtml#a1d89c28bd42ba9a52da008bb69367171">name</a>)),</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  _program(program),</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  _shader_arguments(),</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  _shader_params_ubo_name(0),</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  _shader_params_binding_point(0),</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  _shader_params_index(0),</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  _shader_params_size(0)</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span> {</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  _shader_arguments.clear();</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#a68154b66955d77ae9c5192218e02ebdc">glGenBuffers</a>(1, &_shader_params_ubo_name));</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  _shader_params_index = <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#a81b3135fe4b76436b0e901032fc4df1b">glGetUniformBlockIndex</a>(_program, _shader_params_name));</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(_shader_params_index == GL_INVALID_INDEX, <span class="stringliteral">"Failed to get index of %s"</span>, _shader_params_name);</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#a21827516ba1b8b4c12c6238b3fd67200">glGetActiveUniformBlockiv</a>(_program, _shader_params_index, GL_UNIFORM_BLOCK_DATA_SIZE, &_shader_params_size));</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>(_shader_params_size == 0, <span class="stringliteral">"Failed to get size of %s"</span>, _shader_params_name);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span> }</div><div class="ttc" id="_open_g_l_e_s_8h_xhtml_a496c7b08ac063d996956854207366913"><div class="ttname"><a href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a></div><div class="ttdeci">#define ARM_COMPUTE_GL_CHECK(x)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8h_source.xhtml#l00045">OpenGLES.h:45</a></div></div> |
| <div class="ttc" id="classarm__compute_1_1_g_c_kernel_xhtml_a1d89c28bd42ba9a52da008bb69367171"><div class="ttname"><a href="classarm__compute_1_1_g_c_kernel.xhtml#a1d89c28bd42ba9a52da008bb69367171">arm_compute::GCKernel::name</a></div><div class="ttdeci">std::string name() const</div><div class="ttdoc">Returns kernel name.</div><div class="ttdef"><b>Definition:</b> <a href="_g_c_kernel_library_8h_source.xhtml#l00113">GCKernelLibrary.h:113</a></div></div> |
| <div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_a81b3135fe4b76436b0e901032fc4df1b"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#a81b3135fe4b76436b0e901032fc4df1b">glGetUniformBlockIndex</a></div><div class="ttdeci">GLuint GL_APIENTRY glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00711">OpenGLES.cpp:711</a></div></div> |
| <div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_a68154b66955d77ae9c5192218e02ebdc"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#a68154b66955d77ae9c5192218e02ebdc">glGenBuffers</a></div><div class="ttdeci">void GL_APIENTRY glGenBuffers(GLsizei n, GLuint *buffers)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00568">OpenGLES.cpp:568</a></div></div> |
| <div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_a21827516ba1b8b4c12c6238b3fd67200"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#a21827516ba1b8b4c12c6238b3fd67200">glGetActiveUniformBlockiv</a></div><div class="ttdeci">void GL_APIENTRY glGetActiveUniformBlockiv(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00685">OpenGLES.cpp:685</a></div></div> |
| <div class="ttc" id="_error_8h_xhtml_a5bbdcf574d3f5e412fa6a1117911e67b"><div class="ttname"><a href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_MSG(cond,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00328">Error.h:328</a></div></div> |
| </div><!-- fragment --> |
| <p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="_open_g_l_e_s_8h_source.xhtml#l00045">ARM_COMPUTE_GL_CHECK</a>, <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00568">glGenBuffers()</a>, <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00685">glGetActiveUniformBlockiv()</a>, and <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00711">glGetUniformBlockIndex()</a>.</p> |
| |
| </div> |
| </div> |
| <a id="a1b2e4d932f06eda71c000133bd277688"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a1b2e4d932f06eda71c000133bd277688">◆ </a></span>~GCKernel()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">~<a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a> </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Destructor. </p> |
| |
| <p class="definition">Definition at line <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml#l00137">137</a> of file <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml">GCKernelLibrary.cpp</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00138"></a><span class="lineno"> 138</span> {</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span> }</div></div><!-- fragment --> |
| </div> |
| </div> |
| <h2 class="groupheader">Member Function Documentation</h2> |
| <a id="a4b66d5e31b5dc18b314c8a68163263bd"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a4b66d5e31b5dc18b314c8a68163263bd">◆ </a></span>cleanup()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void cleanup </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Clean up program and ubo. </p> |
| |
| <p class="definition">Definition at line <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml#l00160">160</a> of file <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml">GCKernelLibrary.cpp</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00161"></a><span class="lineno"> 161</span> {</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#a528e76a977061a313bad3ab6fe7747fe">glDeleteBuffers</a>(1, &_shader_params_ubo_name));</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#ad9528d3fb71b7ee1e23fab6aed1cba83">glBindBuffer</a>(GL_UNIFORM_BUFFER, 0));</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#a334ce7125cfb54a811b748f23f228417">glDeleteProgram</a>(_program));</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#ab685deb85a327c7a4c22285619c3f26a">glUseProgram</a>(0));</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span> }</div><div class="ttc" id="_open_g_l_e_s_8h_xhtml_a496c7b08ac063d996956854207366913"><div class="ttname"><a href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a></div><div class="ttdeci">#define ARM_COMPUTE_GL_CHECK(x)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8h_source.xhtml#l00045">OpenGLES.h:45</a></div></div> |
| <div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_a528e76a977061a313bad3ab6fe7747fe"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#a528e76a977061a313bad3ab6fe7747fe">glDeleteBuffers</a></div><div class="ttdeci">void GL_APIENTRY glDeleteBuffers(GLsizei n, const GLuint *buffers)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00529">OpenGLES.cpp:529</a></div></div> |
| <div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_ad9528d3fb71b7ee1e23fab6aed1cba83"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#ad9528d3fb71b7ee1e23fab6aed1cba83">glBindBuffer</a></div><div class="ttdeci">void GL_APIENTRY glBindBuffer(GLenum target, GLuint buffer)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00490">OpenGLES.cpp:490</a></div></div> |
| <div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_a334ce7125cfb54a811b748f23f228417"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#a334ce7125cfb54a811b748f23f228417">glDeleteProgram</a></div><div class="ttdeci">void GL_APIENTRY glDeleteProgram(GLuint program)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00360">OpenGLES.cpp:360</a></div></div> |
| <div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_ab685deb85a327c7a4c22285619c3f26a"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#ab685deb85a327c7a4c22285619c3f26a">glUseProgram</a></div><div class="ttdeci">void GL_APIENTRY glUseProgram(GLuint program)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00477">OpenGLES.cpp:477</a></div></div> |
| </div><!-- fragment --> |
| <p class="reference">References <a class="el" href="_open_g_l_e_s_8h_source.xhtml#l00045">ARM_COMPUTE_GL_CHECK</a>, <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00490">glBindBuffer()</a>, <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00529">glDeleteBuffers()</a>, <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00360">glDeleteProgram()</a>, and <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00477">glUseProgram()</a>.</p> |
| |
| </div> |
| </div> |
| <a id="a2ff24cc62df8324f57dcc2f3c9e533a9"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a2ff24cc62df8324f57dcc2f3c9e533a9">◆ </a></span>clear_arguments()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void clear_arguments </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Clear shader arguments. </p> |
| |
| <p class="definition">Definition at line <a class="el" href="_g_c_kernel_library_8h_source.xhtml#l00154">154</a> of file <a class="el" href="_g_c_kernel_library_8h_source.xhtml">GCKernelLibrary.h</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  {</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  _shader_arguments.clear();</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  }</div></div><!-- fragment --> |
| <p class="reference">Referenced by <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml#l00340">GCKernelLibrary::create_kernel()</a>.</p> |
| |
| </div> |
| </div> |
| <a id="af88e933209c9201dfdafa052d3181aac"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#af88e933209c9201dfdafa052d3181aac">◆ </a></span>get_program()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">GLuint get_program </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">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Get program id. </p> |
| <dl class="section return"><dt>Returns</dt><dd>program id. </dd></dl> |
| |
| <p class="definition">Definition at line <a class="el" href="_g_c_kernel_library_8h_source.xhtml#l00121">121</a> of file <a class="el" href="_g_c_kernel_library_8h_source.xhtml">GCKernelLibrary.h</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  {</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <span class="keywordflow">return</span> _program;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  }</div></div><!-- fragment --> |
| <p class="reference">Referenced by <a class="el" href="_i_g_c_kernel_8cpp_source.xhtml#l00041">arm_compute::enqueue()</a>.</p> |
| |
| </div> |
| </div> |
| <a id="a1d89c28bd42ba9a52da008bb69367171"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a1d89c28bd42ba9a52da008bb69367171">◆ </a></span>name()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">std::string name </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">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Returns kernel name. </p> |
| <dl class="section return"><dt>Returns</dt><dd><a class="el" href="classarm__compute_1_1_kernel.xhtml" title="Kernel class.">Kernel</a>'s name. </dd></dl> |
| |
| <p class="definition">Definition at line <a class="el" href="_g_c_kernel_library_8h_source.xhtml#l00113">113</a> of file <a class="el" href="_g_c_kernel_library_8h_source.xhtml">GCKernelLibrary.h</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  {</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <span class="keywordflow">return</span> _name;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  }</div></div><!-- fragment --> |
| </div> |
| </div> |
| <a id="af29ae815590ed07fc2ce2dc3f77a23a7"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#af29ae815590ed07fc2ce2dc3f77a23a7">◆ </a></span>operator=() <span class="overload">[1/2]</span></h2> |
| |
| <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_g_c_kernel.xhtml">GCKernel</a>& operator= </td> |
| <td>(</td> |
| <td class="paramtype">const <a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a> & </td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">default</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Default copy assignment operator. </p> |
| |
| </div> |
| </div> |
| <a id="ab3eebd489d16da5b5f3378781df02052"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#ab3eebd489d16da5b5f3378781df02052">◆ </a></span>operator=() <span class="overload">[2/2]</span></h2> |
| |
| <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_g_c_kernel.xhtml">GCKernel</a>& operator= </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classarm__compute_1_1_g_c_kernel.xhtml">GCKernel</a> && </td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">default</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Default move assignment operator. </p> |
| |
| </div> |
| </div> |
| <a id="ad5cfd50c152f0aa984f53bb034d1461b"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#ad5cfd50c152f0aa984f53bb034d1461b">◆ </a></span>set_argument()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void set_argument </td> |
| <td>(</td> |
| <td class="paramtype">unsigned int </td> |
| <td class="paramname"><em>idx</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">T </td> |
| <td class="paramname"><em>value</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Set argument value at index of shader params. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramdir">[in]</td><td class="paramname">idx</td><td>Index in shader params. </td></tr> |
| <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Argument value to be set. </td></tr> |
| </table> |
| </dd> |
| </dl> |
| |
| <p class="definition">Definition at line <a class="el" href="_g_c_kernel_library_8h_source.xhtml#l00141">141</a> of file <a class="el" href="_g_c_kernel_library_8h_source.xhtml">GCKernelLibrary.h</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  {</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  <span class="keywordflow">if</span>(idx >= _shader_arguments.size())</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  {</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  _shader_arguments.resize(idx + 1, 0);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  }</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span> </div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> *p = reinterpret_cast<unsigned int *>(&value);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  _shader_arguments[idx] = *p;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  }</div></div><!-- fragment --> |
| </div> |
| </div> |
| <a id="ae722344eb4eb8a404d600561914859ab"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#ae722344eb4eb8a404d600561914859ab">◆ </a></span>set_shader_params_binding_point()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void set_shader_params_binding_point </td> |
| <td>(</td> |
| <td class="paramtype">unsigned int </td> |
| <td class="paramname"><em>binding</em></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Set shader params binding point. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramdir">[in]</td><td class="paramname">binding</td><td>Shader params binding point. </td></tr> |
| </table> |
| </dd> |
| </dl> |
| |
| <p class="definition">Definition at line <a class="el" href="_g_c_kernel_library_8h_source.xhtml#l00162">162</a> of file <a class="el" href="_g_c_kernel_library_8h_source.xhtml">GCKernelLibrary.h</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  {</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  _shader_params_binding_point = binding;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  }</div></div><!-- fragment --> |
| <p class="reference">Referenced by <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml#l00340">GCKernelLibrary::create_kernel()</a>.</p> |
| |
| </div> |
| </div> |
| <a id="ae02bc07b18ddc44c29318c100a063d3a"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#ae02bc07b18ddc44c29318c100a063d3a">◆ </a></span>unuse()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void unuse </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Unuse current program. </p> |
| <dl class="section return"><dt>Returns</dt><dd>program id. </dd></dl> |
| |
| <p class="definition">Definition at line <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml#l00173">173</a> of file <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml">GCKernelLibrary.cpp</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00174"></a><span class="lineno"> 174</span> {</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#ab685deb85a327c7a4c22285619c3f26a">glUseProgram</a>(0));</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span> }</div><div class="ttc" id="_open_g_l_e_s_8h_xhtml_a496c7b08ac063d996956854207366913"><div class="ttname"><a href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a></div><div class="ttdeci">#define ARM_COMPUTE_GL_CHECK(x)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8h_source.xhtml#l00045">OpenGLES.h:45</a></div></div> |
| <div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_ab685deb85a327c7a4c22285619c3f26a"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#ab685deb85a327c7a4c22285619c3f26a">glUseProgram</a></div><div class="ttdeci">void GL_APIENTRY glUseProgram(GLuint program)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00477">OpenGLES.cpp:477</a></div></div> |
| </div><!-- fragment --> |
| <p class="reference">References <a class="el" href="_open_g_l_e_s_8h_source.xhtml#l00045">ARM_COMPUTE_GL_CHECK</a>, and <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00477">glUseProgram()</a>.</p> |
| |
| </div> |
| </div> |
| <a id="a7c2752de95fae1daedbae97fa9b031e4"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a7c2752de95fae1daedbae97fa9b031e4">◆ </a></span>update_shader_params()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void update_shader_params </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Update shader params. </p> |
| |
| <p class="definition">Definition at line <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml#l00178">178</a> of file <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml">GCKernelLibrary.cpp</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00179"></a><span class="lineno"> 179</span> {</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  <a class="code" href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a>((_shader_params_size != (<span class="keywordtype">int</span>)(_shader_arguments.size() * <span class="keyword">sizeof</span>(_shader_arguments[0]))), <span class="stringliteral">"Arguments size (%d) is not equal to shader params block size (%d)"</span>,</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  _shader_arguments.size() * <span class="keyword">sizeof</span>(_shader_arguments[0]), _shader_params_size);</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#a5943aadf8a3d988af82624d19cbd1c0a">glUniformBlockBinding</a>(_program, _shader_params_index, _shader_params_binding_point));</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#a377c2f368dc6d8961943363077581dbd">glBindBufferBase</a>(GL_UNIFORM_BUFFER, _shader_params_binding_point, _shader_params_ubo_name));</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#ad9528d3fb71b7ee1e23fab6aed1cba83">glBindBuffer</a>(GL_UNIFORM_BUFFER, _shader_params_ubo_name));</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#a4991c46050f5040b9fc85fc35f8297ed">glBufferData</a>(GL_UNIFORM_BUFFER, _shader_params_size, _shader_arguments.data(), GL_DYNAMIC_DRAW));</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#ad9528d3fb71b7ee1e23fab6aed1cba83">glBindBuffer</a>(GL_UNIFORM_BUFFER, 0));</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span> }</div><div class="ttc" id="_open_g_l_e_s_8h_xhtml_a496c7b08ac063d996956854207366913"><div class="ttname"><a href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a></div><div class="ttdeci">#define ARM_COMPUTE_GL_CHECK(x)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8h_source.xhtml#l00045">OpenGLES.h:45</a></div></div> |
| <div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_a5943aadf8a3d988af82624d19cbd1c0a"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#a5943aadf8a3d988af82624d19cbd1c0a">glUniformBlockBinding</a></div><div class="ttdeci">void GL_APIENTRY glUniformBlockBinding(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00698">OpenGLES.cpp:698</a></div></div> |
| <div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_ad9528d3fb71b7ee1e23fab6aed1cba83"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#ad9528d3fb71b7ee1e23fab6aed1cba83">glBindBuffer</a></div><div class="ttdeci">void GL_APIENTRY glBindBuffer(GLenum target, GLuint buffer)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00490">OpenGLES.cpp:490</a></div></div> |
| <div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_a377c2f368dc6d8961943363077581dbd"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#a377c2f368dc6d8961943363077581dbd">glBindBufferBase</a></div><div class="ttdeci">void GL_APIENTRY glBindBufferBase(GLenum target, GLuint index, GLuint buffer)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00503">OpenGLES.cpp:503</a></div></div> |
| <div class="ttc" id="_error_8h_xhtml_a5bbdcf574d3f5e412fa6a1117911e67b"><div class="ttname"><a href="_error_8h.xhtml#a5bbdcf574d3f5e412fa6a1117911e67b">ARM_COMPUTE_ERROR_ON_MSG</a></div><div class="ttdeci">#define ARM_COMPUTE_ERROR_ON_MSG(cond,...)</div><div class="ttdef"><b>Definition:</b> <a href="_error_8h_source.xhtml#l00328">Error.h:328</a></div></div> |
| <div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_a4991c46050f5040b9fc85fc35f8297ed"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#a4991c46050f5040b9fc85fc35f8297ed">glBufferData</a></div><div class="ttdeci">void GL_APIENTRY glBufferData(GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00516">OpenGLES.cpp:516</a></div></div> |
| </div><!-- fragment --> |
| <p class="reference">References <a class="el" href="_error_8h_source.xhtml#l00328">ARM_COMPUTE_ERROR_ON_MSG</a>, <a class="el" href="_open_g_l_e_s_8h_source.xhtml#l00045">ARM_COMPUTE_GL_CHECK</a>, <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00490">glBindBuffer()</a>, <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00503">glBindBufferBase()</a>, <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00516">glBufferData()</a>, and <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00698">glUniformBlockBinding()</a>.</p> |
| |
| </div> |
| </div> |
| <a id="a8a05de24712939691a7cf8934d9e5c5f"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a8a05de24712939691a7cf8934d9e5c5f">◆ </a></span>use()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void use </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Use current program. </p> |
| <dl class="section return"><dt>Returns</dt><dd>program id. </dd></dl> |
| |
| <p class="definition">Definition at line <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml#l00168">168</a> of file <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml">GCKernelLibrary.cpp</a>.</p> |
| <div class="fragment"><div class="line"><a name="l00169"></a><span class="lineno"> 169</span> {</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  <a class="code" href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a>(<a class="code" href="_open_g_l_e_s_8cpp.xhtml#ab685deb85a327c7a4c22285619c3f26a">glUseProgram</a>(_program));</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span> }</div><div class="ttc" id="_open_g_l_e_s_8h_xhtml_a496c7b08ac063d996956854207366913"><div class="ttname"><a href="_open_g_l_e_s_8h.xhtml#a496c7b08ac063d996956854207366913">ARM_COMPUTE_GL_CHECK</a></div><div class="ttdeci">#define ARM_COMPUTE_GL_CHECK(x)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8h_source.xhtml#l00045">OpenGLES.h:45</a></div></div> |
| <div class="ttc" id="_open_g_l_e_s_8cpp_xhtml_ab685deb85a327c7a4c22285619c3f26a"><div class="ttname"><a href="_open_g_l_e_s_8cpp.xhtml#ab685deb85a327c7a4c22285619c3f26a">glUseProgram</a></div><div class="ttdeci">void GL_APIENTRY glUseProgram(GLuint program)</div><div class="ttdef"><b>Definition:</b> <a href="_open_g_l_e_s_8cpp_source.xhtml#l00477">OpenGLES.cpp:477</a></div></div> |
| </div><!-- fragment --> |
| <p class="reference">References <a class="el" href="_open_g_l_e_s_8h_source.xhtml#l00045">ARM_COMPUTE_GL_CHECK</a>, and <a class="el" href="_open_g_l_e_s_8cpp_source.xhtml#l00477">glUseProgram()</a>.</p> |
| |
| <p class="reference">Referenced by <a class="el" href="_g_c_kernel_library_8cpp_source.xhtml#l00340">GCKernelLibrary::create_kernel()</a>.</p> |
| |
| </div> |
| </div> |
| <hr/>The documentation for this class was generated from the following files:<ul> |
| <li>arm_compute/core/GLES_COMPUTE/<a class="el" href="_g_c_kernel_library_8h_source.xhtml">GCKernelLibrary.h</a></li> |
| <li>src/core/GLES_COMPUTE/<a class="el" href="_g_c_kernel_library_8cpp_source.xhtml">GCKernelLibrary.cpp</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_g_c_kernel.xhtml">GCKernel</a></li> |
| <li class="footer">Generated on Mon Sep 2 2019 11:47:35 for Compute Library by |
| <a href="http://www.doxygen.org/index.html"> |
| <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li> |
| </ul> |
| </div> |
| </body> |
| </html> |