http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/666a841d/api/classsinga_1_1ReLULayer.html
----------------------------------------------------------------------
diff --git a/api/classsinga_1_1ReLULayer.html b/api/classsinga_1_1ReLULayer.html
new file mode 100644
index 0000000..be2a3c6
--- /dev/null
+++ b/api/classsinga_1_1ReLULayer.html
@@ -0,0 +1,369 @@
+<!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.6"/>
+<title>Apache SINGA: singa::ReLULayer 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="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { searchBox.OnSelectItem(0); });
+</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="projectlogo"><img alt="Logo" src="singa-logo-small.png"/></td>
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">Apache SINGA
+   </div>
+   <div id="projectbrief">A distributed deep learning platform .</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<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.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a 
href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><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.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" 
onclick="searchBox.OnSelectItem(0)"><span 
class="SelectionMark">&#160;</span>All</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span 
class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span 
class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span 
class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span 
class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span 
class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span 
class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" 
href="javascript:void
 (0)" onclick="searchBox.OnSelectItem(7)"><span 
class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span 
class="SelectionMark">&#160;</span>Macros</a></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 id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>singa</b></li><li class="navelem"><a class="el" 
href="classsinga_1_1ReLULayer.html">ReLULayer</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classsinga_1_1ReLULayer-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">singa::ReLULayer Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Inheritance diagram for singa::ReLULayer:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="classsinga_1_1ReLULayer.png" usemap="#singa::ReLULayer_map" 
alt=""/>
+  <map id="singa::ReLULayer_map" name="singa::ReLULayer_map">
+<area href="classsinga_1_1Layer.html" title="Base layer class. " 
alt="singa::Layer" shape="rect" coords="0,0,111,24"/>
+</map>
+ </div></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:aa9bb1353ba3d064edd1f89d5918442aa"><td class="memItemLeft" 
align="right" valign="top">virtual void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="classsinga_1_1ReLULayer.html#aa9bb1353ba3d064edd1f89d5918442aa">Setup</a> 
(const LayerProto &amp;proto, const vector&lt; SLayer &gt; &amp;<a class="el" 
href="classsinga_1_1Layer.html#a836817f842419098c53fff371ae8fc80">srclayers</a>)</td></tr>
+<tr class="memdesc:aa9bb1353ba3d064edd1f89d5918442aa"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Setup layer properties.  <a 
href="#aa9bb1353ba3d064edd1f89d5918442aa">More...</a><br/></td></tr>
+<tr class="separator:aa9bb1353ba3d064edd1f89d5918442aa"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3098f5e7619f7746e3ca6836e0fe979"><td class="memItemLeft" 
align="right" valign="top">virtual void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="classsinga_1_1ReLULayer.html#ad3098f5e7619f7746e3ca6836e0fe979">SetupAfterPartition</a>
 (const LayerProto &amp;proto, const vector&lt; int &gt; &amp;shape, const 
vector&lt; SLayer &gt; &amp;<a class="el" 
href="classsinga_1_1Layer.html#a836817f842419098c53fff371ae8fc80">srclayers</a>)</td></tr>
+<tr class="memdesc:ad3098f5e7619f7746e3ca6836e0fe979"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Setup the layer properties 
except shape.  <a 
href="#ad3098f5e7619f7746e3ca6836e0fe979">More...</a><br/></td></tr>
+<tr class="separator:ad3098f5e7619f7746e3ca6836e0fe979"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a07dd900b22179b3a69d5d4515a258486"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a07dd900b22179b3a69d5d4515a258486"></a>
+virtual void&#160;</td><td class="memItemRight" 
valign="bottom"><b>ComputeFeature</b> (bool training, const vector&lt; 
shared_ptr&lt; <a class="el" href="classsinga_1_1Layer.html">Layer</a> &gt;&gt; 
&amp;<a class="el" 
href="classsinga_1_1Layer.html#a836817f842419098c53fff371ae8fc80">srclayers</a>)</td></tr>
+<tr class="separator:a07dd900b22179b3a69d5d4515a258486"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21d374f2a288de917836eb7322de6c5a"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a21d374f2a288de917836eb7322de6c5a"></a>
+virtual void&#160;</td><td class="memItemRight" 
valign="bottom"><b>ComputeGradient</b> (const vector&lt; shared_ptr&lt; <a 
class="el" href="classsinga_1_1Layer.html">Layer</a> &gt;&gt; &amp;<a 
class="el" 
href="classsinga_1_1Layer.html#a836817f842419098c53fff371ae8fc80">srclayers</a>)</td></tr>
+<tr class="separator:a21d374f2a288de917836eb7322de6c5a"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classsinga_1_1Layer"><td colspan="2" 
onclick="javascript:toggleInherit('pub_methods_classsinga_1_1Layer')"><img 
src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a 
class="el" href="classsinga_1_1Layer.html">singa::Layer</a></td></tr>
+<tr class="memitem:aeec3259af3b38227d4e3b3c5f5340573 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a 
class="el" 
href="classsinga_1_1Layer.html#aeec3259af3b38227d4e3b3c5f5340573">Init</a> 
(const LayerProto &amp;proto)</td></tr>
+<tr class="memdesc:aeec3259af3b38227d4e3b3c5f5340573 inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">simply save the proto configuation.  <a 
href="#aeec3259af3b38227d4e3b3c5f5340573">More...</a><br/></td></tr>
+<tr class="separator:aeec3259af3b38227d4e3b3c5f5340573 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:abc49f57fad4091d99578512c9d24d436 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="abc49f57fad4091d99578512c9d24d436"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="classsinga_1_1Layer.html#abc49f57fad4091d99578512c9d24d436">Init</a> 
(const <a class="el" href="classsinga_1_1Layer.html">Layer</a> &amp;other, 
const vector&lt; int &gt; &amp;shape)</td></tr>
+<tr class="memdesc:abc49f57fad4091d99578512c9d24d436 inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">copy layer configuration from the other <a class="el" 
href="classsinga_1_1Layer.html" title="Base layer class. ">Layer</a>, and set 
the shape. <br/></td></tr>
+<tr class="separator:abc49f57fad4091d99578512c9d24d436 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:aa029c17a260a114802c46d9faa347b7f inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a 
class="el" 
href="classsinga_1_1Layer.html#aa029c17a260a114802c46d9faa347b7f">ToProto</a> 
(LayerProto *layer_proto, bool copyData)</td></tr>
+<tr class="memdesc:aa029c17a260a114802c46d9faa347b7f inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">Marshal layer properties and data into google protobuf 
object (i.e., snapshot).  <a 
href="#aa029c17a260a114802c46d9faa347b7f">More...</a><br/></td></tr>
+<tr class="separator:aa029c17a260a114802c46d9faa347b7f inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:ae691995f08f16d01739f98b6d9bd0335 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a 
class="el" 
href="classsinga_1_1Layer.html#ae691995f08f16d01739f98b6d9bd0335">Setup</a> 
()</td></tr>
+<tr class="memdesc:ae691995f08f16d01739f98b6d9bd0335 inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">Setup layer properties.  <a 
href="#ae691995f08f16d01739f98b6d9bd0335">More...</a><br/></td></tr>
+<tr class="separator:ae691995f08f16d01739f98b6d9bd0335 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a50fbb59219c1eeb5559431e1719e1f97 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a50fbb59219c1eeb5559431e1719e1f97"></a>
+virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="classsinga_1_1Layer.html#a50fbb59219c1eeb5559431e1719e1f97">SetupAfterPartition</a>
 ()</td></tr>
+<tr class="memdesc:a50fbb59219c1eeb5559431e1719e1f97 inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">Setup the layer properties except shape. <br/></td></tr>
+<tr class="separator:a50fbb59219c1eeb5559431e1719e1f97 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:aff0688e641c845aee9964a3d96172731 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top">virtual vector&lt; shared_ptr<br class="typebreak"/>
+&lt; <a class="el" href="classsinga_1_1Param.html">Param</a> &gt; 
&gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="classsinga_1_1Layer.html#aff0688e641c845aee9964a3d96172731">GetParams</a> 
()</td></tr>
+<tr class="memdesc:aff0688e641c845aee9964a3d96172731 inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">Layers that have paramters must overload this function.  <a 
href="#aff0688e641c845aee9964a3d96172731">More...</a><br/></td></tr>
+<tr class="separator:aff0688e641c845aee9964a3d96172731 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a11ef38d1bf31d054a96a1ac45fd49299 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a 
class="el" 
href="classsinga_1_1Layer.html#a11ef38d1bf31d054a96a1ac45fd49299">ComputeFeature</a>
 (bool training, const vector&lt; SLayer &gt; &amp;<a class="el" 
href="classsinga_1_1Layer.html#a836817f842419098c53fff371ae8fc80">srclayers</a>)=0</td></tr>
+<tr class="memdesc:a11ef38d1bf31d054a96a1ac45fd49299 inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">Compute features of this layer based on connected layers.  
<a href="#a11ef38d1bf31d054a96a1ac45fd49299">More...</a><br/></td></tr>
+<tr class="separator:a11ef38d1bf31d054a96a1ac45fd49299 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:af5d9b7aba92f5ead82872e5a70a1def0 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="af5d9b7aba92f5ead82872e5a70a1def0"></a>
+virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="classsinga_1_1Layer.html#af5d9b7aba92f5ead82872e5a70a1def0">ComputeFeature</a>
 (bool training)</td></tr>
+<tr class="separator:af5d9b7aba92f5ead82872e5a70a1def0 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a7eb4b3141896bff0d7c423a24308fd63 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a 
class="el" 
href="classsinga_1_1Layer.html#a7eb4b3141896bff0d7c423a24308fd63">ComputeGradient</a>
 (const vector&lt; SLayer &gt; &amp;<a class="el" 
href="classsinga_1_1Layer.html#a836817f842419098c53fff371ae8fc80">srclayers</a>)=0</td></tr>
+<tr class="memdesc:a7eb4b3141896bff0d7c423a24308fd63 inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">Compute gradients for parameters and connecting layers.  <a 
href="#a7eb4b3141896bff0d7c423a24308fd63">More...</a><br/></td></tr>
+<tr class="separator:a7eb4b3141896bff0d7c423a24308fd63 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a50591a153fbfe349d8d307781d19ebb5 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a50591a153fbfe349d8d307781d19ebb5"></a>
+virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="classsinga_1_1Layer.html#a50591a153fbfe349d8d307781d19ebb5">ComputeGradient</a>
 ()</td></tr>
+<tr class="memdesc:a50591a153fbfe349d8d307781d19ebb5 inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">Compute gradients for parameters and connecting layers. 
<br/></td></tr>
+<tr class="separator:a50591a153fbfe349d8d307781d19ebb5 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a12d268e424e4affada0d5b85ea6d2359 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a 
class="el" 
href="classsinga_1_1Layer.html#a12d268e424e4affada0d5b85ea6d2359">partition_dimension</a>
 () const </td></tr>
+<tr class="memdesc:a12d268e424e4affada0d5b85ea6d2359 inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">decide on which dimension to do the partitioning.  <a 
href="#a12d268e424e4affada0d5b85ea6d2359">More...</a><br/></td></tr>
+<tr class="separator:a12d268e424e4affada0d5b85ea6d2359 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e134c5b4a1a8e442626354d2d869caa inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top">virtual ConnectionType&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="classsinga_1_1Layer.html#a7e134c5b4a1a8e442626354d2d869caa">connection_type</a>
 (int k) const </td></tr>
+<tr class="memdesc:a7e134c5b4a1a8e442626354d2d869caa inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">return connection type between two layers.  <a 
href="#a7e134c5b4a1a8e442626354d2d869caa">More...</a><br/></td></tr>
+<tr class="separator:a7e134c5b4a1a8e442626354d2d869caa inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:ab3c0e1047f36e2fb783a6fd3d4eabd73 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top">virtual PartitionType&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="classsinga_1_1Layer.html#ab3c0e1047f36e2fb783a6fd3d4eabd73">partition_type</a>
 () const </td></tr>
+<tr class="memdesc:ab3c0e1047f36e2fb783a6fd3d4eabd73 inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">return partition type of this layer.  <a 
href="#ab3c0e1047f36e2fb783a6fd3d4eabd73">More...</a><br/></td></tr>
+<tr class="separator:ab3c0e1047f36e2fb783a6fd3d4eabd73 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:addab6c99866d34001471f86aede7f6e8 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="addab6c99866d34001471f86aede7f6e8"></a>
+virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="classsinga_1_1Layer.html#addab6c99866d34001471f86aede7f6e8">set_locationid</a>
 (int id)</td></tr>
+<tr class="memdesc:addab6c99866d34001471f86aede7f6e8 inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">location id is the execution unit (i.e., thread from the 
working group) ID. <br/></td></tr>
+<tr class="separator:addab6c99866d34001471f86aede7f6e8 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:af3170517c202d998fec1f20b97e6a881 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="af3170517c202d998fec1f20b97e6a881"></a>
+virtual int&#160;</td><td class="memItemRight" 
valign="bottom"><b>locationid</b> () const </td></tr>
+<tr class="separator:af3170517c202d998fec1f20b97e6a881 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:af177cc1bdfc8d57b6992855bf437ef9a inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="af177cc1bdfc8d57b6992855bf437ef9a"></a>
+virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="classsinga_1_1Layer.html#af177cc1bdfc8d57b6992855bf437ef9a">set_partitionid</a>
 (int id)</td></tr>
+<tr class="memdesc:af177cc1bdfc8d57b6992855bf437ef9a inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">partition id is the ID of the layer in the original layer. 
<br/></td></tr>
+<tr class="separator:af177cc1bdfc8d57b6992855bf437ef9a inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7f7ec42c3d8086370d9fbdfaa57fe7a inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="ad7f7ec42c3d8086370d9fbdfaa57fe7a"></a>
+virtual int&#160;</td><td class="memItemRight" 
valign="bottom"><b>partitiionid</b> () const </td></tr>
+<tr class="separator:ad7f7ec42c3d8086370d9fbdfaa57fe7a inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:abc01aee87088c70cedadfe54f60d78c7 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="abc01aee87088c70cedadfe54f60d78c7"></a>
+virtual void&#160;</td><td class="memItemRight" 
valign="bottom"><b>set_name</b> (string <a class="el" 
href="classsinga_1_1Layer.html#abc76f037afc13a17ab07082cfae945de">name</a>)</td></tr>
+<tr class="separator:abc01aee87088c70cedadfe54f60d78c7 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a50478bdb3fdeb8272d0f693134e5064e inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a50478bdb3fdeb8272d0f693134e5064e"></a>
+virtual const string&#160;</td><td class="memItemRight" 
valign="bottom"><b>type</b> () const </td></tr>
+<tr class="separator:a50478bdb3fdeb8272d0f693134e5064e inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:abc76f037afc13a17ab07082cfae945de inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="abc76f037afc13a17ab07082cfae945de"></a>
+const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a 
class="el" 
href="classsinga_1_1Layer.html#abc76f037afc13a17ab07082cfae945de">name</a> () 
const </td></tr>
+<tr class="memdesc:abc76f037afc13a17ab07082cfae945de inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">Return name of this layer. <br/></td></tr>
+<tr class="separator:abc76f037afc13a17ab07082cfae945de inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a9c693432b440fdf2078f6d9921ba394f inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a9c693432b440fdf2078f6d9921ba394f"></a>
+const vector&lt; int &gt; &amp;&#160;</td><td class="memItemRight" 
valign="bottom"><b>shape</b> (const <a class="el" 
href="classsinga_1_1Layer.html">Layer</a> *layer=nullptr) const </td></tr>
+<tr class="separator:a9c693432b440fdf2078f6d9921ba394f inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:ad443a1e7f957dad71fd0c9b356a53c20 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top">virtual const <a class="el" href="classBlob.html">Blob</a>&lt; 
float &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a 
class="el" 
href="classsinga_1_1Layer.html#ad443a1e7f957dad71fd0c9b356a53c20">data</a> 
(const <a class="el" href="classsinga_1_1Layer.html">Layer</a> *from=nullptr) 
const </td></tr>
+<tr class="separator:ad443a1e7f957dad71fd0c9b356a53c20 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:ab62f26448810b04d35e892ce013feac8 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="ab62f26448810b04d35e892ce013feac8"></a>
+virtual <a class="el" href="classBlob.html">Blob</a>&lt; float &gt; 
*&#160;</td><td class="memItemRight" valign="bottom"><b>mutable_data</b> (const 
<a class="el" href="classsinga_1_1Layer.html">Layer</a> *from=nullptr)</td></tr>
+<tr class="separator:ab62f26448810b04d35e892ce013feac8 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:ae53f8fe14b76f423e7d79d2bda36523a inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="ae53f8fe14b76f423e7d79d2bda36523a"></a>
+virtual const <a class="el" href="classBlob.html">Blob</a>&lt; float &gt; 
&amp;&#160;</td><td class="memItemRight" valign="bottom"><b>grad</b> (const <a 
class="el" href="classsinga_1_1Layer.html">Layer</a> *from=nullptr) const 
</td></tr>
+<tr class="separator:ae53f8fe14b76f423e7d79d2bda36523a inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4936117ef7d58193726a966f796fafc inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top">virtual <a class="el" href="classBlob.html">Blob</a>&lt; float 
&gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="classsinga_1_1Layer.html#ad4936117ef7d58193726a966f796fafc">mutable_grad</a>
 (const <a class="el" href="classsinga_1_1Layer.html">Layer</a> 
*from=nullptr)</td></tr>
+<tr class="separator:ad4936117ef7d58193726a966f796fafc inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a836817f842419098c53fff371ae8fc80 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a836817f842419098c53fff371ae8fc80"></a>
+virtual const vector&lt; SLayer &gt;&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="classsinga_1_1Layer.html#a836817f842419098c53fff371ae8fc80">srclayers</a> 
() const </td></tr>
+<tr class="memdesc:a836817f842419098c53fff371ae8fc80 inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">return LayerS that connected to this layer <br/></td></tr>
+<tr class="separator:a836817f842419098c53fff371ae8fc80 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c5aeabbc26770bcff169dd907e9c737 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a2c5aeabbc26770bcff169dd907e9c737"></a>
+virtual const vector&lt; SLayer &gt;&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="classsinga_1_1Layer.html#a2c5aeabbc26770bcff169dd907e9c737">dstlayers</a> 
() const </td></tr>
+<tr class="memdesc:a2c5aeabbc26770bcff169dd907e9c737 inherit 
pub_methods_classsinga_1_1Layer"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">return LayerS that this layer connected to <br/></td></tr>
+<tr class="separator:a2c5aeabbc26770bcff169dd907e9c737 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a944081b99606ba317932bd9994b6fee3 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a944081b99606ba317932bd9994b6fee3"></a>
+virtual const int&#160;</td><td class="memItemRight" 
valign="bottom"><b>srclayers_size</b> () const </td></tr>
+<tr class="separator:a944081b99606ba317932bd9994b6fee3 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ebebda5c30c10648c3f1c4af38f49c4 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a9ebebda5c30c10648c3f1c4af38f49c4"></a>
+virtual const int&#160;</td><td class="memItemRight" 
valign="bottom"><b>dstlayers_size</b> () const </td></tr>
+<tr class="separator:a9ebebda5c30c10648c3f1c4af38f49c4 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8fe0fc86daa0d8092257aecbd7662d3 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="ae8fe0fc86daa0d8092257aecbd7662d3"></a>
+virtual void&#160;</td><td class="memItemRight" 
valign="bottom"><b>ClearDstLayers</b> ()</td></tr>
+<tr class="separator:ae8fe0fc86daa0d8092257aecbd7662d3 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a089f56583f89f9b4c02acc8b1664b948 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a089f56583f89f9b4c02acc8b1664b948"></a>
+virtual void&#160;</td><td class="memItemRight" 
valign="bottom"><b>ClearSrcLayers</b> ()</td></tr>
+<tr class="separator:a089f56583f89f9b4c02acc8b1664b948 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:aac3f866084459be028a0f2f931016d33 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="aac3f866084459be028a0f2f931016d33"></a>
+virtual void&#160;</td><td class="memItemRight" 
valign="bottom"><b>AddSrcLayer</b> (SLayer src)</td></tr>
+<tr class="separator:aac3f866084459be028a0f2f931016d33 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a13a01a39dbcd89c752202cbcbb53c36e inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a13a01a39dbcd89c752202cbcbb53c36e"></a>
+virtual void&#160;</td><td class="memItemRight" 
valign="bottom"><b>AddDstLayer</b> (SLayer dst)</td></tr>
+<tr class="separator:a13a01a39dbcd89c752202cbcbb53c36e inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:aad61de583fe620672dc76963173ab248 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="aad61de583fe620672dc76963173ab248"></a>
+virtual bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>is_datalayer</b> () const </td></tr>
+<tr class="separator:aad61de583fe620672dc76963173ab248 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d6c46c2c9e4e0fab3b66b4dae1cb9bc inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a3d6c46c2c9e4e0fab3b66b4dae1cb9bc"></a>
+virtual bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>is_parserlayer</b> () const </td></tr>
+<tr class="separator:a3d6c46c2c9e4e0fab3b66b4dae1cb9bc inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ab4edffdb3cb2a30b70116e725c6246 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a8ab4edffdb3cb2a30b70116e725c6246"></a>
+virtual bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>is_losslayer</b> () const </td></tr>
+<tr class="separator:a8ab4edffdb3cb2a30b70116e725c6246 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a1927b5a9b362e5839471e481f07f8088 inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a1927b5a9b362e5839471e481f07f8088"></a>
+virtual bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>is_bridgesrclayer</b> () const </td></tr>
+<tr class="separator:a1927b5a9b362e5839471e481f07f8088 inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a140a45def081bfb1be4877ff4091c87e inherit 
pub_methods_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a140a45def081bfb1be4877ff4091c87e"></a>
+virtual bool&#160;</td><td class="memItemRight" 
valign="bottom"><b>is_bridgedstlayer</b> () const </td></tr>
+<tr class="separator:a140a45def081bfb1be4877ff4091c87e inherit 
pub_methods_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_attribs_classsinga_1_1Layer"><td colspan="2" 
onclick="javascript:toggleInherit('pro_attribs_classsinga_1_1Layer')"><img 
src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a 
class="el" href="classsinga_1_1Layer.html">singa::Layer</a></td></tr>
+<tr class="memitem:a9307fe49ca9fa70a77f00e262e51b58e inherit 
pro_attribs_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a9307fe49ca9fa70a77f00e262e51b58e"></a>
+string&#160;</td><td class="memItemRight" 
valign="bottom"><b>name_</b></td></tr>
+<tr class="separator:a9307fe49ca9fa70a77f00e262e51b58e inherit 
pro_attribs_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a6244f7e610e5a4add1c827415f5430fb inherit 
pro_attribs_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a6244f7e610e5a4add1c827415f5430fb"></a>
+<a class="el" href="classBlob.html">Blob</a>&lt; float &gt;&#160;</td><td 
class="memItemRight" valign="bottom"><b>data_</b></td></tr>
+<tr class="separator:a6244f7e610e5a4add1c827415f5430fb inherit 
pro_attribs_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a455a662d1be46a83ac5a42705b77e717 inherit 
pro_attribs_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a455a662d1be46a83ac5a42705b77e717"></a>
+<a class="el" href="classBlob.html">Blob</a>&lt; float &gt;&#160;</td><td 
class="memItemRight" valign="bottom"><b>grad_</b></td></tr>
+<tr class="separator:a455a662d1be46a83ac5a42705b77e717 inherit 
pro_attribs_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a528fc84a4714528fa0419e01d6bba5b1 inherit 
pro_attribs_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a528fc84a4714528fa0419e01d6bba5b1"></a>
+LayerProto&#160;</td><td class="memItemRight" 
valign="bottom"><b>layer_proto_</b></td></tr>
+<tr class="separator:a528fc84a4714528fa0419e01d6bba5b1 inherit 
pro_attribs_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a31f4a6569d9531304e5c0c3b1bdacda9 inherit 
pro_attribs_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a31f4a6569d9531304e5c0c3b1bdacda9"></a>
+vector&lt; SLayer &gt;&#160;</td><td class="memItemRight" 
valign="bottom"><b>srclayers_</b></td></tr>
+<tr class="separator:a31f4a6569d9531304e5c0c3b1bdacda9 inherit 
pro_attribs_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+<tr class="memitem:a755a464d39e139aa161e03be77810101 inherit 
pro_attribs_classsinga_1_1Layer"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a755a464d39e139aa161e03be77810101"></a>
+vector&lt; SLayer &gt;&#160;</td><td class="memItemRight" 
valign="bottom"><b>dstlayers_</b></td></tr>
+<tr class="separator:a755a464d39e139aa161e03be77810101 inherit 
pro_attribs_classsinga_1_1Layer"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aa9bb1353ba3d064edd1f89d5918442aa"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void singa::ReLULayer::Setup </td>
+          <td>(</td>
+          <td class="paramtype">const LayerProto &amp;&#160;</td>
+          <td class="paramname"><em>proto</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const vector&lt; SLayer &gt; &amp;&#160;</td>
+          <td class="paramname"><em>srclayers</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Setup layer properties. </p>
+<p>Setup the shapes for data and parameters, also setup some properties based 
on the layer configuration and connected src layers. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">srclayers</td><td>layers connecting to this 
layer </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" 
href="classsinga_1_1Layer.html#aecbe8ed0ff294e40586678cef474ca42">singa::Layer</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ad3098f5e7619f7746e3ca6836e0fe979"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void 
singa::ReLULayer::SetupAfterPartition </td>
+          <td>(</td>
+          <td class="paramtype">const LayerProto &amp;&#160;</td>
+          <td class="paramname"><em>proto</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const vector&lt; int &gt; &amp;&#160;</td>
+          <td class="paramname"><em>shape</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const vector&lt; SLayer &gt; &amp;&#160;</td>
+          <td class="paramname"><em>srclayers</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Setup the layer properties except shape. </p>
+<p>the shape is already set and passed in to set other properties. perperties 
are set according to shapes of itself and connected layers, and configuration. 
this should not change the current shape_( shape check is done outside the 
function). </p>
+
+<p>Implements <a class="el" 
href="classsinga_1_1Layer.html#af8c911e3ca34f8c288eaddee263661aa">singa::Layer</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following 
file:<ul>
+<li>/home/wangwei/program/asf/incubator-singa/include/neuralnet/<a class="el" 
href="layer_8h_source.html">layer.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Thu May 7 2015 17:15:42 for Apache SINGA by &#160;<a 
href="http://www.doxygen.org/index.html";>
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/666a841d/api/classsinga_1_1ReLULayer.png
----------------------------------------------------------------------
diff --git a/api/classsinga_1_1ReLULayer.png b/api/classsinga_1_1ReLULayer.png
new file mode 100644
index 0000000..0845854
Binary files /dev/null and b/api/classsinga_1_1ReLULayer.png differ

http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/666a841d/api/classsinga_1_1Router-members.html
----------------------------------------------------------------------
diff --git a/api/classsinga_1_1Router-members.html 
b/api/classsinga_1_1Router-members.html
new file mode 100644
index 0000000..f90ad71
--- /dev/null
+++ b/api/classsinga_1_1Router-members.html
@@ -0,0 +1,121 @@
+<!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.6"/>
+<title>Apache SINGA: Member List</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/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { searchBox.OnSelectItem(0); });
+</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="projectlogo"><img alt="Logo" src="singa-logo-small.png"/></td>
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">Apache SINGA
+   </div>
+   <div id="projectbrief">A distributed deep learning platform .</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<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.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a 
href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><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.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" 
onclick="searchBox.OnSelectItem(0)"><span 
class="SelectionMark">&#160;</span>All</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span 
class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span 
class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span 
class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span 
class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span 
class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span 
class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" 
href="javascript:void
 (0)" onclick="searchBox.OnSelectItem(7)"><span 
class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span 
class="SelectionMark">&#160;</span>Macros</a></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 id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>singa</b></li><li class="navelem"><a class="el" 
href="classsinga_1_1Router.html">Router</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">singa::Router Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" 
href="classsinga_1_1Router.html">singa::Router</a>, including all inherited 
members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" 
href="classsinga_1_1Router.html#a3b81056cdcb3674cb4c4dee076ca73de">Bind</a>(string
 endpoint)</td><td class="entry"><a class="el" 
href="classsinga_1_1Router.html">singa::Router</a></td><td class="entry"><span 
class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>bufmsg_</b> (defined in <a 
class="el" href="classsinga_1_1Router.html">singa::Router</a>)</td><td 
class="entry"><a class="el" 
href="classsinga_1_1Router.html">singa::Router</a></td><td class="entry"><span 
class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>bufsize_</b> 
(defined in <a class="el" 
href="classsinga_1_1Router.html">singa::Router</a>)</td><td class="entry"><a 
class="el" href="classsinga_1_1Router.html">singa::Router</a></td><td 
class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>id2addr_</b> (defined in <a 
class="el" href="classsinga_1_1Router.html">singa::Router</a>)</td><td 
class="entry"><a class="el" 
href="classsinga_1_1Router.html">singa::Router</a></td><td class="entry"><span 
class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" 
href="classsinga_1_1Router.html#acf78012cf74a12b85a318802807529c9">InternalID</a>()
 const </td><td class="entry"><a class="el" 
href="classsinga_1_1Router.html">singa::Router</a></td><td class="entry"><span 
class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>local_id_</b> (defined in <a 
class="el" href="classsinga_1_1Socket.html">singa::Socket</a>)</td><td 
class="entry"><a class="el" 
href="classsinga_1_1Socket.html">singa::Socket</a></td><td class="entry"><span 
class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>nBufmsg_</b> 
(defined in <a class="el" 
href="classsinga_1_1Router.html">singa::Router</a>)</td><td class="entry"><a 
class="el" href="classsinga_1_1Router.html">singa::Router</a></td><td 
class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>poller_</b> (defined in <a 
class="el" href="classsinga_1_1Router.html">singa::Router</a>)</td><td 
class="entry"><a class="el" 
href="classsinga_1_1Router.html">singa::Router</a></td><td class="entry"><span 
class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" 
href="classsinga_1_1Router.html#af37c2f449e99e1b35042a39ef9fb2389">Receive</a>()</td><td
 class="entry"><a class="el" 
href="classsinga_1_1Router.html">singa::Router</a></td><td class="entry"><span 
class="mlabel">virtual</span></td></tr>
+  <tr><td class="entry"><a class="el" 
href="classsinga_1_1Router.html#a900d3699bc01889cda94178fa0ce204b">Router</a>(int
 bufsize=100)</td><td class="entry"><a class="el" 
href="classsinga_1_1Router.html">singa::Router</a></td><td 
class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>router_</b> (defined 
in <a class="el" href="classsinga_1_1Router.html">singa::Router</a>)</td><td 
class="entry"><a class="el" 
href="classsinga_1_1Router.html">singa::Router</a></td><td class="entry"><span 
class="mlabel">protected</span></td></tr>
+  <tr><td class="entry"><a class="el" 
href="classsinga_1_1Router.html#a4186013f846e404bec26eca4145d8d09">Send</a>(Msg 
*msg)</td><td class="entry"><a class="el" 
href="classsinga_1_1Router.html">singa::Router</a></td><td class="entry"><span 
class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Socket</b>() 
(defined in <a class="el" 
href="classsinga_1_1Socket.html">singa::Socket</a>)</td><td class="entry"><a 
class="el" href="classsinga_1_1Socket.html">singa::Socket</a></td><td 
class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~Router</b>() (defined in <a 
class="el" href="classsinga_1_1Router.html">singa::Router</a>)</td><td 
class="entry"><a class="el" 
href="classsinga_1_1Router.html">singa::Router</a></td><td class="entry"><span 
class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Socket</b>() 
(defined in <a class="el" 
href="classsinga_1_1Socket.html">singa::Socket</a>)</td><td class="entry"><a 
class="el" href="classsinga_1_1Socket.html">singa::Socket</a></td><td 
class="entry"><span class="mlabel">inline</span><span 
class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Thu May 7 2015 17:15:41 for Apache SINGA by &#160;<a 
href="http://www.doxygen.org/index.html";>
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/666a841d/api/classsinga_1_1Router.html
----------------------------------------------------------------------
diff --git a/api/classsinga_1_1Router.html b/api/classsinga_1_1Router.html
new file mode 100644
index 0000000..7612de0
--- /dev/null
+++ b/api/classsinga_1_1Router.html
@@ -0,0 +1,279 @@
+<!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.6"/>
+<title>Apache SINGA: singa::Router 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="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { searchBox.OnSelectItem(0); });
+</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="projectlogo"><img alt="Logo" src="singa-logo-small.png"/></td>
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">Apache SINGA
+   </div>
+   <div id="projectbrief">A distributed deep learning platform .</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<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.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a 
href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><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.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" 
onclick="searchBox.OnSelectItem(0)"><span 
class="SelectionMark">&#160;</span>All</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span 
class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span 
class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span 
class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span 
class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span 
class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span 
class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" 
href="javascript:void
 (0)" onclick="searchBox.OnSelectItem(7)"><span 
class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span 
class="SelectionMark">&#160;</span>Macros</a></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 id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>singa</b></li><li class="navelem"><a class="el" 
href="classsinga_1_1Router.html">Router</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classsinga_1_1Router-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">singa::Router Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Inheritance diagram for singa::Router:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="classsinga_1_1Router.png" usemap="#singa::Router_map" alt=""/>
+  <map id="singa::Router_map" name="singa::Router_map">
+<area href="classsinga_1_1Socket.html" alt="singa::Socket" shape="rect" 
coords="0,0,86,24"/>
+</map>
+ </div></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:a900d3699bc01889cda94178fa0ce204b"><td class="memItemLeft" 
align="right" valign="top">&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="classsinga_1_1Router.html#a900d3699bc01889cda94178fa0ce204b">Router</a> 
(int bufsize=100)</td></tr>
+<tr class="memdesc:a900d3699bc01889cda94178fa0ce204b"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a 
href="#a900d3699bc01889cda94178fa0ce204b">More...</a><br/></td></tr>
+<tr class="separator:a900d3699bc01889cda94178fa0ce204b"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b81056cdcb3674cb4c4dee076ca73de"><td class="memItemLeft" 
align="right" valign="top">virtual int&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="classsinga_1_1Router.html#a3b81056cdcb3674cb4c4dee076ca73de">Bind</a> 
(string endpoint)</td></tr>
+<tr class="memdesc:a3b81056cdcb3674cb4c4dee076ca73de"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Setup the connection with 
dealers.  <a 
href="#a3b81056cdcb3674cb4c4dee076ca73de">More...</a><br/></td></tr>
+<tr class="separator:a3b81056cdcb3674cb4c4dee076ca73de"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4186013f846e404bec26eca4145d8d09"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a4186013f846e404bec26eca4145d8d09"></a>
+virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="classsinga_1_1Router.html#a4186013f846e404bec26eca4145d8d09">Send</a> (<a 
class="el" href="classsinga_1_1Msg.html">Msg</a> *msg)</td></tr>
+<tr class="memdesc:a4186013f846e404bec26eca4145d8d09"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">If the destination socket 
has not connected yet, buffer this the message. <br/></td></tr>
+<tr class="separator:a4186013f846e404bec26eca4145d8d09"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af37c2f449e99e1b35042a39ef9fb2389"><td class="memItemLeft" 
align="right" valign="top">virtual <a class="el" 
href="classsinga_1_1Msg.html">Msg</a> *&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="classsinga_1_1Router.html#af37c2f449e99e1b35042a39ef9fb2389">Receive</a> 
()</td></tr>
+<tr class="memdesc:af37c2f449e99e1b35042a39ef9fb2389"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Receive a message from any 
connected socket.  <a 
href="#af37c2f449e99e1b35042a39ef9fb2389">More...</a><br/></td></tr>
+<tr class="separator:af37c2f449e99e1b35042a39ef9fb2389"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf78012cf74a12b85a318802807529c9"><td class="memItemLeft" 
align="right" valign="top">virtual void *&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="classsinga_1_1Router.html#acf78012cf74a12b85a318802807529c9">InternalID</a>
 () const </td></tr>
+<tr class="separator:acf78012cf74a12b85a318802807529c9"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a57ac9fa86248a3f6a34370df68ebfbb2"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a57ac9fa86248a3f6a34370df68ebfbb2"></a>
+zsock_t *&#160;</td><td class="memItemRight" 
valign="bottom"><b>router_</b></td></tr>
+<tr class="separator:a57ac9fa86248a3f6a34370df68ebfbb2"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac163cdf641549850c9fc8182a65b1a5a"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ac163cdf641549850c9fc8182a65b1a5a"></a>
+zpoller_t *&#160;</td><td class="memItemRight" 
valign="bottom"><b>poller_</b></td></tr>
+<tr class="separator:ac163cdf641549850c9fc8182a65b1a5a"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae42fb8930c9fe39b2c4be0afdd83a6bd"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ae42fb8930c9fe39b2c4be0afdd83a6bd"></a>
+std::map&lt; int, zframe_t * &gt;&#160;</td><td class="memItemRight" 
valign="bottom"><b>id2addr_</b></td></tr>
+<tr class="separator:ae42fb8930c9fe39b2c4be0afdd83a6bd"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a368ede33e80504c7d5ad43821aebc6e7"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a368ede33e80504c7d5ad43821aebc6e7"></a>
+std::map&lt; int, std::vector<br class="typebreak"/>
+&lt; zmsg_t * &gt; &gt;&#160;</td><td class="memItemRight" 
valign="bottom"><b>bufmsg_</b></td></tr>
+<tr class="separator:a368ede33e80504c7d5ad43821aebc6e7"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11ac56ab4fc356ea455ae1cb2ba1c3ff"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a11ac56ab4fc356ea455ae1cb2ba1c3ff"></a>
+int&#160;</td><td class="memItemRight" 
valign="bottom"><b>nBufmsg_</b></td></tr>
+<tr class="separator:a11ac56ab4fc356ea455ae1cb2ba1c3ff"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf0a93158c31ec0f00812bcea47511ba"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="acf0a93158c31ec0f00812bcea47511ba"></a>
+int&#160;</td><td class="memItemRight" 
valign="bottom"><b>bufsize_</b></td></tr>
+<tr class="separator:acf0a93158c31ec0f00812bcea47511ba"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classsinga_1_1Socket"><td colspan="2" 
onclick="javascript:toggleInherit('pro_attribs_classsinga_1_1Socket')"><img 
src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a 
class="el" href="classsinga_1_1Socket.html">singa::Socket</a></td></tr>
+<tr class="memitem:a548707780610342ac0788f9abf21a0c5 inherit 
pro_attribs_classsinga_1_1Socket"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a548707780610342ac0788f9abf21a0c5"></a>
+int&#160;</td><td class="memItemRight" 
valign="bottom"><b>local_id_</b></td></tr>
+<tr class="separator:a548707780610342ac0788f9abf21a0c5 inherit 
pro_attribs_classsinga_1_1Socket"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a900d3699bc01889cda94178fa0ce204b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">singa::Router::Router </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>bufsize</em> = 
<code>100</code></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Constructor. </p>
+<p>There is only one router per procs, hence its local id is 0 and is not set 
explicitly.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">bufsize</td><td>buffer at most this number of 
messages </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a3b81056cdcb3674cb4c4dee076ca73de"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual int singa::Router::Bind </td>
+          <td>(</td>
+          <td class="paramtype">string&#160;</td>
+          <td class="paramname"><em>endpoint</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Setup the connection with dealers. </p>
+<p>It automatically binds to the endpoint for intra-process communication, 
i.e., "inproc://router".</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">endpoint</td><td>the identifier for the <a 
class="el" href="classsinga_1_1Dealer.html">Dealer</a> socket in other process 
to connect. It has the format IP:Port, where IP is the host machine. If 
endpoint is empty, it means that all connections are intra-process connection. 
</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>number of connected dealers. 
</dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="acf78012cf74a12b85a318802807529c9"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void* singa::Router::InternalID </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 
class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<dl class="section return"><dt>Returns</dt><dd>Identifier of the 
implementation dependent socket. E.g., zsock_t* for ZeroMQ implementation and 
rank for MPI implementation. </dd></dl>
+
+<p>Implements <a class="el" 
href="classsinga_1_1Socket.html#a021de3273ade2a1f3b447e04888a0701">singa::Socket</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="af37c2f449e99e1b35042a39ef9fb2389"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual <a class="el" 
href="classsinga_1_1Msg.html">Msg</a>* singa::Router::Receive </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Receive a message from any connected socket. </p>
+<dl class="section return"><dt>Returns</dt><dd>a message pointer if success; 
nullptr if failure </dd></dl>
+
+<p>Implements <a class="el" 
href="classsinga_1_1Socket.html#a66dec7b6c67f6dd1407f2ce53d4eb5cb">singa::Socket</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following 
file:<ul>
+<li>/home/wangwei/program/asf/incubator-singa/include/communication/<a 
class="el" href="socket_8h_source.html">socket.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Thu May 7 2015 17:15:41 for Apache SINGA by &#160;<a 
href="http://www.doxygen.org/index.html";>
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/666a841d/api/classsinga_1_1Router.png
----------------------------------------------------------------------
diff --git a/api/classsinga_1_1Router.png b/api/classsinga_1_1Router.png
new file mode 100644
index 0000000..e811708
Binary files /dev/null and b/api/classsinga_1_1Router.png differ

http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/666a841d/api/classsinga_1_1SGDUpdater-members.html
----------------------------------------------------------------------
diff --git a/api/classsinga_1_1SGDUpdater-members.html 
b/api/classsinga_1_1SGDUpdater-members.html
new file mode 100644
index 0000000..e6850ca
--- /dev/null
+++ b/api/classsinga_1_1SGDUpdater-members.html
@@ -0,0 +1,113 @@
+<!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.6"/>
+<title>Apache SINGA: Member List</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/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { searchBox.OnSelectItem(0); });
+</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="projectlogo"><img alt="Logo" src="singa-logo-small.png"/></td>
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">Apache SINGA
+   </div>
+   <div id="projectbrief">A distributed deep learning platform .</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<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.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a 
href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><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.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" 
onclick="searchBox.OnSelectItem(0)"><span 
class="SelectionMark">&#160;</span>All</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span 
class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span 
class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span 
class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span 
class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span 
class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span 
class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" 
href="javascript:void
 (0)" onclick="searchBox.OnSelectItem(7)"><span 
class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span 
class="SelectionMark">&#160;</span>Macros</a></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 id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>singa</b></li><li class="navelem"><a class="el" 
href="classsinga_1_1SGDUpdater.html">SGDUpdater</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">singa::SGDUpdater Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" 
href="classsinga_1_1SGDUpdater.html">singa::SGDUpdater</a>, including all 
inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>base_lr_</b> 
(defined in <a class="el" 
href="classsinga_1_1SGDUpdater.html">singa::SGDUpdater</a>)</td><td 
class="entry"><a class="el" 
href="classsinga_1_1SGDUpdater.html">singa::SGDUpdater</a></td><td 
class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GetLearningRate</b>(int step) 
(defined in <a class="el" 
href="classsinga_1_1Updater.html">singa::Updater</a>)</td><td class="entry"><a 
class="el" href="classsinga_1_1Updater.html">singa::Updater</a></td><td 
class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Init</b>(const 
UpdaterProto &amp;proto) (defined in <a class="el" 
href="classsinga_1_1SGDUpdater.html">singa::SGDUpdater</a>)</td><td 
class="entry"><a class="el" 
href="classsinga_1_1SGDUpdater.html">singa::SGDUpdater</a></td><td 
class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>momentum_</b> (defined in <a 
class="el" href="classsinga_1_1SGDUpdater.html">singa::SGDUpdater</a>)</td><td 
class="entry"><a class="el" 
href="classsinga_1_1SGDUpdater.html">singa::SGDUpdater</a></td><td 
class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>proto_</b> (defined 
in <a class="el" href="classsinga_1_1Updater.html">singa::Updater</a>)</td><td 
class="entry"><a class="el" 
href="classsinga_1_1Updater.html">singa::Updater</a></td><td 
class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>Update</b>(int step, 
shared_ptr&lt; Param &gt; param, float grad_scale=1.0f) (defined in <a 
class="el" href="classsinga_1_1SGDUpdater.html">singa::SGDUpdater</a>)</td><td 
class="entry"><a class="el" 
href="classsinga_1_1SGDUpdater.html">singa::SGDUpdater</a></td><td 
class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>weight_decay_</b> 
(defined in <a class="el" 
href="classsinga_1_1SGDUpdater.html">singa::SGDUpdater</a>)</td><td 
class="entry"><a class="el" 
href="classsinga_1_1SGDUpdater.html">singa::SGDUpdater</a></td><td 
class="entry"><span class="mlabel">protected</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Thu May 7 2015 17:15:43 for Apache SINGA by &#160;<a 
href="http://www.doxygen.org/index.html";>
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/666a841d/api/classsinga_1_1SGDUpdater.html
----------------------------------------------------------------------
diff --git a/api/classsinga_1_1SGDUpdater.html 
b/api/classsinga_1_1SGDUpdater.html
new file mode 100644
index 0000000..a007562
--- /dev/null
+++ b/api/classsinga_1_1SGDUpdater.html
@@ -0,0 +1,149 @@
+<!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.6"/>
+<title>Apache SINGA: singa::SGDUpdater 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="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { searchBox.OnSelectItem(0); });
+</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="projectlogo"><img alt="Logo" src="singa-logo-small.png"/></td>
+  <td style="padding-left: 0.5em;">
+   <div id="projectname">Apache SINGA
+   </div>
+   <div id="projectbrief">A distributed deep learning platform .</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<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.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a 
href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><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.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" 
onclick="searchBox.OnSelectItem(0)"><span 
class="SelectionMark">&#160;</span>All</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span 
class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span 
class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span 
class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span 
class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span 
class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span 
class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" 
href="javascript:void
 (0)" onclick="searchBox.OnSelectItem(7)"><span 
class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span 
class="SelectionMark">&#160;</span>Macros</a></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 id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><b>singa</b></li><li class="navelem"><a class="el" 
href="classsinga_1_1SGDUpdater.html">SGDUpdater</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="classsinga_1_1SGDUpdater-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">singa::SGDUpdater Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+<div class="dynheader">
+Inheritance diagram for singa::SGDUpdater:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="classsinga_1_1SGDUpdater.png" usemap="#singa::SGDUpdater_map" 
alt=""/>
+  <map id="singa::SGDUpdater_map" name="singa::SGDUpdater_map">
+<area href="classsinga_1_1Updater.html" title="Updater for Param. " 
alt="singa::Updater" shape="rect" coords="0,0,118,24"/>
+</map>
+ </div></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:add5f8f23819b94af52951a7e29d58386"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="add5f8f23819b94af52951a7e29d58386"></a>
+virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>Init</b> 
(const UpdaterProto &amp;proto)</td></tr>
+<tr class="separator:add5f8f23819b94af52951a7e29d58386"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3a54d7c00d1cdcfecf6d9f68d2017d9"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ad3a54d7c00d1cdcfecf6d9f68d2017d9"></a>
+virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>Update</b> 
(int step, shared_ptr&lt; <a class="el" 
href="classsinga_1_1Param.html">Param</a> &gt; param, float 
grad_scale=1.0f)</td></tr>
+<tr class="separator:ad3a54d7c00d1cdcfecf6d9f68d2017d9"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classsinga_1_1Updater"><td colspan="2" 
onclick="javascript:toggleInherit('pub_methods_classsinga_1_1Updater')"><img 
src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a 
class="el" href="classsinga_1_1Updater.html">singa::Updater</a></td></tr>
+<tr class="memitem:a4189828903aa55cddefe468575f9f2c8 inherit 
pub_methods_classsinga_1_1Updater"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="a4189828903aa55cddefe468575f9f2c8"></a>
+float&#160;</td><td class="memItemRight" 
valign="bottom"><b>GetLearningRate</b> (int step)</td></tr>
+<tr class="separator:a4189828903aa55cddefe468575f9f2c8 inherit 
pub_methods_classsinga_1_1Updater"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a935afb6f2f55643df3ab35b8f56fd0e2"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a935afb6f2f55643df3ab35b8f56fd0e2"></a>
+float&#160;</td><td class="memItemRight" 
valign="bottom"><b>base_lr_</b></td></tr>
+<tr class="separator:a935afb6f2f55643df3ab35b8f56fd0e2"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ac19a53751d8d1018798e978bb5e4ed"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="a5ac19a53751d8d1018798e978bb5e4ed"></a>
+float&#160;</td><td class="memItemRight" 
valign="bottom"><b>momentum_</b></td></tr>
+<tr class="separator:a5ac19a53751d8d1018798e978bb5e4ed"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade178f7af362a6d3fac048425f40a330"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ade178f7af362a6d3fac048425f40a330"></a>
+float&#160;</td><td class="memItemRight" 
valign="bottom"><b>weight_decay_</b></td></tr>
+<tr class="separator:ade178f7af362a6d3fac048425f40a330"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_classsinga_1_1Updater"><td colspan="2" 
onclick="javascript:toggleInherit('pro_attribs_classsinga_1_1Updater')"><img 
src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a 
class="el" href="classsinga_1_1Updater.html">singa::Updater</a></td></tr>
+<tr class="memitem:aad5f46dc2f78aa73b6698a11447aad2d inherit 
pro_attribs_classsinga_1_1Updater"><td class="memItemLeft" align="right" 
valign="top"><a class="anchor" id="aad5f46dc2f78aa73b6698a11447aad2d"></a>
+UpdaterProto&#160;</td><td class="memItemRight" 
valign="bottom"><b>proto_</b></td></tr>
+<tr class="separator:aad5f46dc2f78aa73b6698a11447aad2d inherit 
pro_attribs_classsinga_1_1Updater"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+</table>
+<hr/>The documentation for this class was generated from the following 
file:<ul>
+<li>/home/wangwei/program/asf/incubator-singa/include/utils/<a class="el" 
href="updater_8h_source.html">updater.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Thu May 7 2015 17:15:43 for Apache SINGA by &#160;<a 
href="http://www.doxygen.org/index.html";>
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-singa/blob/666a841d/api/classsinga_1_1SGDUpdater.png
----------------------------------------------------------------------
diff --git a/api/classsinga_1_1SGDUpdater.png b/api/classsinga_1_1SGDUpdater.png
new file mode 100644
index 0000000..01203a9
Binary files /dev/null and b/api/classsinga_1_1SGDUpdater.png differ

Reply via email to