You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

110 lines
10 KiB

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
  3. <title>tbb::flow::interface6::broadcast_node&lt; T &gt; Class Template Reference</title>
  4. <link href="doxygen.css" rel="stylesheet" type="text/css">
  5. <link href="tabs.css" rel="stylesheet" type="text/css">
  6. </head><body>
  7. <!-- Generated by Doxygen 1.4.7 -->
  8. <div class="tabs">
  9. <ul>
  10. <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
  11. <li><a href="modules.html"><span>Modules</span></a></li>
  12. <li><a href="namespaces.html"><span>Namespaces</span></a></li>
  13. <li id="current"><a href="annotated.html"><span>Classes</span></a></li>
  14. <li><a href="files.html"><span>Files</span></a></li>
  15. <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  16. </ul></div>
  17. <div class="tabs">
  18. <ul>
  19. <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
  20. <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
  21. <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
  22. </ul></div>
  23. <div class="nav">
  24. <a class="el" href="a00428.html">tbb</a>::<b>flow</b>::<b>interface6</b>::<a class="el" href="a00274.html">broadcast_node</a></div>
  25. <h1>tbb::flow::interface6::broadcast_node&lt; T &gt; Class Template Reference</h1><!-- doxytag: class="tbb::flow::interface6::broadcast_node" --><!-- doxytag: inherits="tbb::flow::interface6::graph_node,tbb::flow::interface6::receiver,tbb::flow::interface6::sender" -->Forwards messages of type T to all successors.
  26. <a href="#_details">More...</a>
  27. <p>
  28. <code>#include &lt;flow_graph.h&gt;</code>
  29. <p>
  30. <p>Inheritance diagram for tbb::flow::interface6::broadcast_node&lt; T &gt;:
  31. <p><center><img src="a00274.png" usemap="#tbb::flow::interface6::broadcast_node< T >_map" border="0" alt=""></center>
  32. <map name="tbb::flow::interface6::broadcast_node< T >_map">
  33. <area href="a00301.html" alt="tbb::flow::interface6::graph_node" shape="rect" coords="0,0,249,24">
  34. <area href="a00333.html" alt="tbb::flow::interface6::receiver< T >" shape="rect" coords="259,0,508,24">
  35. <area href="a00339.html" alt="tbb::flow::interface6::sender< T >" shape="rect" coords="518,0,767,24">
  36. </map>
  37. <a href="a00073.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
  38. <tr><td></td></tr>
  39. <tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
  40. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="43c775d80e98cc601de69764983319f9"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::input_type" ref="43c775d80e98cc601de69764983319f9" args="" -->
  41. typedef T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00274.html#43c775d80e98cc601de69764983319f9">input_type</a></td></tr>
  42. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The input type of this receiver. <br></td></tr>
  43. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8fd8d3075823e08b879be46c1215ab0f"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::output_type" ref="8fd8d3075823e08b879be46c1215ab0f" args="" -->
  44. typedef T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00274.html#8fd8d3075823e08b879be46c1215ab0f">output_type</a></td></tr>
  45. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The output type of this sender. <br></td></tr>
  46. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0e2ad9a121cb286aa0d0142fef33c646"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::predecessor_type" ref="0e2ad9a121cb286aa0d0142fef33c646" args="" -->
  47. typedef <a class="el" href="a00339.html">sender</a>&lt; <a class="el" href="a00274.html#43c775d80e98cc601de69764983319f9">input_type</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00274.html#0e2ad9a121cb286aa0d0142fef33c646">predecessor_type</a></td></tr>
  48. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The predecessor type for this node. <br></td></tr>
  49. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cc6a0eb1c4ee65465770628d8366f055"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::successor_type" ref="cc6a0eb1c4ee65465770628d8366f055" args="" -->
  50. typedef <a class="el" href="a00333.html">receiver</a>&lt; <a class="el" href="a00274.html#8fd8d3075823e08b879be46c1215ab0f">output_type</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00274.html#cc6a0eb1c4ee65465770628d8366f055">successor_type</a></td></tr>
  51. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The successor type for this node. <br></td></tr>
  52. <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
  53. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="89e20f24ae56d38a5ee52f8d41e1a79c"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::broadcast_node" ref="89e20f24ae56d38a5ee52f8d41e1a79c" args="(graph &amp;g)" -->
  54. &nbsp;</td><td class="memItemRight" valign="bottom"><b>broadcast_node</b> (<a class="el" href="a00300.html">graph</a> &amp;g)</td></tr>
  55. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bdcf84bf5b52c3af2d5332dc9d5fec07"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::broadcast_node" ref="bdcf84bf5b52c3af2d5332dc9d5fec07" args="(const broadcast_node &amp;src)" -->
  56. &nbsp;</td><td class="memItemRight" valign="bottom"><b>broadcast_node</b> (const <a class="el" href="a00274.html">broadcast_node</a> &amp;src)</td></tr>
  57. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fd0324c9ddb51fe6f95b3d015d338941"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::register_successor" ref="fd0324c9ddb51fe6f95b3d015d338941" args="(receiver&lt; T &gt; &amp;r)" -->
  58. virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00274.html#fd0324c9ddb51fe6f95b3d015d338941">register_successor</a> (<a class="el" href="a00333.html">receiver</a>&lt; T &gt; &amp;r)</td></tr>
  59. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a successor. <br></td></tr>
  60. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="366efcc046ec08a104281109801ae629"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::remove_successor" ref="366efcc046ec08a104281109801ae629" args="(receiver&lt; T &gt; &amp;r)" -->
  61. virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00274.html#366efcc046ec08a104281109801ae629">remove_successor</a> (<a class="el" href="a00333.html">receiver</a>&lt; T &gt; &amp;r)</td></tr>
  62. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes s as a successor. <br></td></tr>
  63. <tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
  64. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b4804d99e0fb0576f1061ab7269e5939"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::try_put_task" ref="b4804d99e0fb0576f1061ab7269e5939" args="(const T &amp;t)" -->
  65. <a class="el" href="a00349.html">task</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00274.html#b4804d99e0fb0576f1061ab7269e5939">try_put_task</a> (const T &amp;t)</td></tr>
  66. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">build a task to run the successor if possible. Default is old behavior. <br></td></tr>
  67. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0f6d6d9e50a9cebe40df876a3c7a8804"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::reset" ref="0f6d6d9e50a9cebe40df876a3c7a8804" args="()" -->
  68. void&nbsp;</td><td class="memItemRight" valign="bottom"><b>reset</b> ()</td></tr>
  69. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4e216903c618e25d2e3780483c763f67"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::reset_receiver" ref="4e216903c618e25d2e3780483c763f67" args="()" -->
  70. void&nbsp;</td><td class="memItemRight" valign="bottom"><b>reset_receiver</b> ()</td></tr>
  71. <tr><td colspan="2"><br><h2>Friends</h2></td></tr>
  72. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="621bab40a858d214db69ef08d88b67c1"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::run_and_put_task" ref="621bab40a858d214db69ef08d88b67c1" args="" -->
  73. class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00274.html#621bab40a858d214db69ef08d88b67c1">run_and_put_task</a></td></tr>
  74. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">put item to successor; return task to run the successor if possible. <br></td></tr>
  75. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e4fa30d87bc0bfa80942f97a8d58f1bd"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::internal::broadcast_cache" ref="e4fa30d87bc0bfa80942f97a8d58f1bd" args="" -->
  76. class&nbsp;</td><td class="memItemRight" valign="bottom"><b>internal::broadcast_cache</b></td></tr>
  77. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="31ba00ea3e3e5a421b38840bd0dc2589"></a><!-- doxytag: member="tbb::flow::interface6::broadcast_node::internal::round_robin_cache" ref="31ba00ea3e3e5a421b38840bd0dc2589" args="" -->
  78. class&nbsp;</td><td class="memItemRight" valign="bottom"><b>internal::round_robin_cache</b></td></tr>
  79. </table>
  80. <hr><a name="_details"></a><h2>Detailed Description</h2>
  81. <h3>template&lt;typename T&gt;<br>
  82. class tbb::flow::interface6::broadcast_node&lt; T &gt;</h3>
  83. Forwards messages of type T to all successors.
  84. <p>
  85. <hr>The documentation for this class was generated from the following file:<ul>
  86. <li><a class="el" href="a00385.html">flow_graph.h</a></ul>
  87. <hr>
  88. <p></p>
  89. Copyright &copy; 2005-2013 Intel Corporation. All Rights Reserved.
  90. <p></p>
  91. Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are
  92. registered trademarks or trademarks of Intel Corporation or its
  93. subsidiaries in the United States and other countries.
  94. <p></p>
  95. * Other names and brands may be claimed as the property of others.