<!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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>mxnet: Class Members - Functions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.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 id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">mxnet
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- 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="contents">
&#160;

<h3><a id="index__"></a>- _ -</h3><ul>
<li>__assign()
: <a class="el" href="classmshadow_1_1expr_1_1RValueExp.html#a97259deba3e7b8b1876e1c032f62bd08">mshadow::expr::RValueExp&lt; Container, DType &gt;</a>
</li>
<li>__REGISTER__()
: <a class="el" href="classdmlc_1_1Registry.html#a0b71def33966eca79ad304b9da04fecc">dmlc::Registry&lt; EntryType &gt;</a>
, <a class="el" href="classmxnet_1_1cpp_1_1OptimizerRegistry.html#a460f6d69ac1c9d8afa260a9f15208a9d">mxnet::cpp::OptimizerRegistry</a>
</li>
<li>__REGISTER_OR_FIND__()
: <a class="el" href="classmxnet_1_1op_1_1SimpleOpRegistry.html#a376e3412e9f425db998c384e5d3f0523">mxnet::op::SimpleOpRegistry</a>
</li>
<li>__REGISTER_OR_GET__()
: <a class="el" href="classdmlc_1_1Registry.html#a92bb4906a07d6b41cc3b3a52cc929440">dmlc::Registry&lt; EntryType &gt;</a>
</li>
<li>_dfs_util()
: <a class="el" href="classmxnet_1_1ext_1_1Graph.html#a1990d92633c09d529c17e3d5052b9379">mxnet::ext::Graph</a>
</li>
<li>_GetOrAllocRuntimeTypeIndex()
: <a class="el" href="classmxnet_1_1runtime_1_1Object.html#a9a14f0cacdb1dc322de5b98714450586">mxnet::runtime::Object</a>
</li>
<li>_GetSharedRef()
: <a class="el" href="classmxnet_1_1common_1_1ObjectPool.html#ac6e5e05a710c3f094efb4ba13d36ab89">mxnet::common::ObjectPool&lt; T &gt;</a>
, <a class="el" href="classmxnet_1_1Engine.html#ab6417f2ae519b946c104f975d84d55d5">mxnet::Engine</a>
, <a class="el" href="classmxnet_1_1Storage.html#a4c5e9c239447ee223ab912716d53d7c7">mxnet::Storage</a>
</li>
<li>_setParams()
: <a class="el" href="classmxnet_1_1ext_1_1Graph.html#a9233c8bb6aa95b7f8d03de17960723b6">mxnet::ext::Graph</a>
</li>
<li>_setPassResource()
: <a class="el" href="classmxnet_1_1ext_1_1Graph.html#a4158fd61578679630e5eba3a6d889ca3">mxnet::ext::Graph</a>
, <a class="el" href="classmxnet_1_1ext_1_1Node.html#aac12981007cdb017f652d1242cf9ab05">mxnet::ext::Node</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Jan 5 2023 00:58:44 for mxnet by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>
