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.
 
 
 
 

125 lines
10 KiB

<!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.4"/>
<title>tbb::flow::interface7::sender&lt; T &gt; Class Template 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="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<!-- end header part -->
<!-- Generated by Doxygen 1.8.4 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="modules.html"><span>Modules</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>
</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="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="a00222.html">tbb</a></li><li class="navelem"><b>flow</b></li><li class="navelem"><b>interface7</b></li><li class="navelem"><a class="el" href="a00124.html">sender</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="a00308.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">tbb::flow::interface7::sender&lt; T &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">
<p>Pure virtual template class that defines a sender of messages of type T.
<a href="a00124.html#details">More...</a></p>
<p><code>#include &lt;flow_graph.h&gt;</code></p>
<div class="dynheader">
Inheritance diagram for tbb::flow::interface7::sender&lt; T &gt;:</div>
<div class="dyncontent">
<div class="center">
<img src="a00124.png" usemap="#tbb::flow::interface7::sender&lt; T &gt;_map" alt=""/>
<map id="tbb::flow::interface7::sender&lt; T &gt;_map" name="tbb::flow::interface7::sender&lt; T &gt;_map">
<area href="a00025.html" title="Forwards messages of type T to all successors. " alt="tbb::flow::interface7::broadcast_node&lt; T &gt;" shape="rect" coords="0,56,352,80"/>
<area href="a00027.html" title="Forwards messages in arbitrary order. " alt="tbb::flow::interface7::buffer_node&lt; T, A &gt;" shape="rect" coords="362,56,714,80"/>
<area href="a00072.html" title="Forwards messages only if the threshold has not been reached. " alt="tbb::flow::interface7::limiter_node&lt; T &gt;" shape="rect" coords="724,56,1076,80"/>
<area href="a00086.html" alt="tbb::flow::interface7::overwrite_node&lt; T &gt;" shape="rect" coords="1086,56,1438,80"/>
<area href="a00091.html" title="Forwards messages in priority order. " alt="tbb::flow::interface7::priority_queue_node&lt; T, Compare, A &gt;" shape="rect" coords="181,112,533,136"/>
<area href="a00092.html" title="Forwards messages in FIFO order. " alt="tbb::flow::interface7::queue_node&lt; T, A &gt;" shape="rect" coords="543,112,895,136"/>
<area href="a00159.html" alt="tbb::flow::interface7::write_once_node&lt; T &gt;" shape="rect" coords="1086,112,1438,136"/>
<area href="a00125.html" title="Forwards messages in sequence order. " alt="tbb::flow::interface7::sequencer_node&lt; T, A &gt;" shape="rect" coords="543,168,895,192"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:add86fddf72758d8e5b05b07650c6eeed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="add86fddf72758d8e5b05b07650c6eeed"></a>
typedef T&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00124.html#add86fddf72758d8e5b05b07650c6eeed">output_type</a></td></tr>
<tr class="memdesc:add86fddf72758d8e5b05b07650c6eeed"><td class="mdescLeft">&#160;</td><td class="mdescRight">The output type of this sender. <br/></td></tr>
<tr class="separator:add86fddf72758d8e5b05b07650c6eeed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7779627063a29d4d2a1fc905a5cae8db"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7779627063a29d4d2a1fc905a5cae8db"></a>
typedef <a class="el" href="a00106.html">receiver</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00124.html#a7779627063a29d4d2a1fc905a5cae8db">successor_type</a></td></tr>
<tr class="memdesc:a7779627063a29d4d2a1fc905a5cae8db"><td class="mdescLeft">&#160;</td><td class="mdescRight">The successor type for this node. <br/></td></tr>
<tr class="separator:a7779627063a29d4d2a1fc905a5cae8db"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><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:a4dac8f53a1f8373c1f3a874b9617e4ec"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4dac8f53a1f8373c1f3a874b9617e4ec"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00124.html#a4dac8f53a1f8373c1f3a874b9617e4ec">register_successor</a> (<a class="el" href="a00124.html#a7779627063a29d4d2a1fc905a5cae8db">successor_type</a> &amp;r)=0</td></tr>
<tr class="memdesc:a4dac8f53a1f8373c1f3a874b9617e4ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a new successor to this node. <br/></td></tr>
<tr class="separator:a4dac8f53a1f8373c1f3a874b9617e4ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac1ae19f49e31c6ca94dcf14732eb7a64"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac1ae19f49e31c6ca94dcf14732eb7a64"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00124.html#ac1ae19f49e31c6ca94dcf14732eb7a64">remove_successor</a> (<a class="el" href="a00124.html#a7779627063a29d4d2a1fc905a5cae8db">successor_type</a> &amp;r)=0</td></tr>
<tr class="memdesc:ac1ae19f49e31c6ca94dcf14732eb7a64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a successor from this node. <br/></td></tr>
<tr class="separator:ac1ae19f49e31c6ca94dcf14732eb7a64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad50b8ac93e79cbdcd2bba11d35432f2c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad50b8ac93e79cbdcd2bba11d35432f2c"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00124.html#ad50b8ac93e79cbdcd2bba11d35432f2c">try_get</a> (T &amp;)</td></tr>
<tr class="memdesc:ad50b8ac93e79cbdcd2bba11d35432f2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request an item from the sender. <br/></td></tr>
<tr class="separator:ad50b8ac93e79cbdcd2bba11d35432f2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1b9dcf77ab558530ff93a706b4c4b5d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa1b9dcf77ab558530ff93a706b4c4b5d"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00124.html#aa1b9dcf77ab558530ff93a706b4c4b5d">try_reserve</a> (T &amp;)</td></tr>
<tr class="memdesc:aa1b9dcf77ab558530ff93a706b4c4b5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reserves an item in the sender. <br/></td></tr>
<tr class="separator:aa1b9dcf77ab558530ff93a706b4c4b5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97ac316ddfb6bd7c7f2f56e3e819a30a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a97ac316ddfb6bd7c7f2f56e3e819a30a"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00124.html#a97ac316ddfb6bd7c7f2f56e3e819a30a">try_release</a> ()</td></tr>
<tr class="memdesc:a97ac316ddfb6bd7c7f2f56e3e819a30a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Releases the reserved item. <br/></td></tr>
<tr class="separator:a97ac316ddfb6bd7c7f2f56e3e819a30a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad404d5218c7ae2556261ffa880cdf804"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad404d5218c7ae2556261ffa880cdf804"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00124.html#ad404d5218c7ae2556261ffa880cdf804">try_consume</a> ()</td></tr>
<tr class="memdesc:ad404d5218c7ae2556261ffa880cdf804"><td class="mdescLeft">&#160;</td><td class="mdescRight">Consumes the reserved item. <br/></td></tr>
<tr class="separator:ad404d5218c7ae2556261ffa880cdf804"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename T&gt;<br/>
class tbb::flow::interface7::sender&lt; T &gt;</h3>
<p>Pure virtual template class that defines a sender of messages of type T. </p>
</div><hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="a00179.html">flow_graph.h</a></li>
</ul>
</div><!-- contents -->
<hr>
<p></p>
Copyright &copy; 2005-2014 Intel Corporation. All Rights Reserved.
<p></p>
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are
registered trademarks or trademarks of Intel Corporation or its
subsidiaries in the United States and other countries.
<p></p>
* Other names and brands may be claimed as the property of others.