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.
 
 
 
 

139 lines
13 KiB

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>tbb::flow::interface6::priority_queue_node&lt; T, Compare, A &gt; Class Template Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.7 -->
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li id="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
</ul></div>
<div class="tabs">
<ul>
<li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
<li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
</ul></div>
<div class="nav">
<a class="el" href="a00428.html">tbb</a>::<b>flow</b>::<b>interface6</b>::<a class="el" href="a00324.html">priority_queue_node</a></div>
<h1>tbb::flow::interface6::priority_queue_node&lt; T, Compare, A &gt; Class Template Reference</h1><!-- doxytag: class="tbb::flow::interface6::priority_queue_node" --><!-- doxytag: inherits="tbb::flow::interface6::buffer_node" -->Forwards messages in priority order.
<a href="#_details">More...</a>
<p>
<code>#include &lt;flow_graph.h&gt;</code>
<p>
<p>Inheritance diagram for tbb::flow::interface6::priority_queue_node&lt; T, Compare, A &gt;:
<p><center><img src="a00324.png" usemap="#tbb::flow::interface6::priority_queue_node< T, Compare, A >_map" border="0" alt=""></center>
<map name="tbb::flow::interface6::priority_queue_node< T, Compare, A >_map">
<area href="a00275.html" alt="tbb::flow::interface6::buffer_node< T, A >" shape="rect" coords="362,56,714,80">
<area href="a00301.html" alt="tbb::flow::interface6::graph_node" shape="rect" coords="0,0,352,24">
<area href="a00333.html" alt="tbb::flow::interface6::receiver< T >" shape="rect" coords="362,0,714,24">
<area href="a00339.html" alt="tbb::flow::interface6::sender< T >" shape="rect" coords="724,0,1076,24">
</map>
<a href="a00078.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b2829b518979874ad3d2a939e14ae7bd"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::input_type" ref="b2829b518979874ad3d2a939e14ae7bd" args="" -->
typedef T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00324.html#b2829b518979874ad3d2a939e14ae7bd">input_type</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The input type of this receiver. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2cb099b590246b6bc93cc15e78c6ee5c"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::output_type" ref="2cb099b590246b6bc93cc15e78c6ee5c" args="" -->
typedef T&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00324.html#2cb099b590246b6bc93cc15e78c6ee5c">output_type</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The output type of this sender. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4968bda48aceffa4d65445bf8d0f8048"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::base_type" ref="4968bda48aceffa4d65445bf8d0f8048" args="" -->
typedef <a class="el" href="a00275.html">buffer_node</a>&lt; T, A &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><b>base_type</b></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fdea783bf9d5a4c98e794ac7e0f84ccf"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::predecessor_type" ref="fdea783bf9d5a4c98e794ac7e0f84ccf" args="" -->
typedef <a class="el" href="a00339.html">sender</a>&lt; <a class="el" href="a00324.html#b2829b518979874ad3d2a939e14ae7bd">input_type</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00324.html#fdea783bf9d5a4c98e794ac7e0f84ccf">predecessor_type</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The predecessor type for this node. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="09ab5064ca8192e68c03da47603e68eb"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::successor_type" ref="09ab5064ca8192e68c03da47603e68eb" args="" -->
typedef <a class="el" href="a00333.html">receiver</a>&lt; <a class="el" href="a00324.html#2cb099b590246b6bc93cc15e78c6ee5c">output_type</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00324.html#09ab5064ca8192e68c03da47603e68eb">successor_type</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The successor type for this node. <br></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="497ec2612615249bf5a294eb1b7b93b3"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::priority_queue_node" ref="497ec2612615249bf5a294eb1b7b93b3" args="(graph &amp;g)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00324.html#497ec2612615249bf5a294eb1b7b93b3">priority_queue_node</a> (<a class="el" href="a00300.html">graph</a> &amp;g)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="17a4f66e23d54100b64805405e905d62"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::priority_queue_node" ref="17a4f66e23d54100b64805405e905d62" args="(const priority_queue_node &amp;src)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00324.html#17a4f66e23d54100b64805405e905d62">priority_queue_node</a> (const <a class="el" href="a00324.html">priority_queue_node</a> &amp;src)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy constructor. <br></td></tr>
<tr><td colspan="2"><br><h2>Protected Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d1c6c5e02b9cc144b2b3ccc9f18bf047"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::size_type" ref="d1c6c5e02b9cc144b2b3ccc9f18bf047" args="" -->
typedef <a class="el" href="a00275.html">buffer_node</a>&lt; T, A <br>
&gt;::size_type&nbsp;</td><td class="memItemRight" valign="bottom"><b>size_type</b></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eb98634e74bee4d82676f1aca0f6864c"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::item_type" ref="eb98634e74bee4d82676f1aca0f6864c" args="" -->
typedef <a class="el" href="a00275.html">buffer_node</a>&lt; T, A <br>
&gt;::item_type&nbsp;</td><td class="memItemRight" valign="bottom"><b>item_type</b></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f80f04dc8886a8a6b177123f094bdb43"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::prio_operation" ref="f80f04dc8886a8a6b177123f094bdb43" args="" -->
typedef <a class="el" href="a00275.html">buffer_node</a>&lt; T, A <br>
&gt;::buffer_operation&nbsp;</td><td class="memItemRight" valign="bottom"><b>prio_operation</b></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="274cc306c7a22cf9e27c4c2c3a66ce8e579c547cd1c044d3e6190401d87ee101"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::WAIT" ref="274cc306c7a22cf9e27c4c2c3a66ce8e579c547cd1c044d3e6190401d87ee101" args="" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>WAIT</b> = 0</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="274cc306c7a22cf9e27c4c2c3a66ce8e67ced6b76fb4bcd40404499619fbd0b9"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::SUCCEEDED" ref="274cc306c7a22cf9e27c4c2c3a66ce8e67ced6b76fb4bcd40404499619fbd0b9" args="" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>SUCCEEDED</b></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="274cc306c7a22cf9e27c4c2c3a66ce8eb74545a431cbeaf85ab0bfcec52261ff"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::FAILED" ref="274cc306c7a22cf9e27c4c2c3a66ce8eb74545a431cbeaf85ab0bfcec52261ff" args="" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>FAILED</b></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><b>op_stat</b> { <b>WAIT</b> = 0,
<b>SUCCEEDED</b>,
<b>FAILED</b>
}</td></tr>
<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="534a669bacdb8b335c8eaaadc9462795"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::reset" ref="534a669bacdb8b335c8eaaadc9462795" args="()" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>reset</b> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="abff2e0891477135c24f44747e991c6c"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::handle_operations" ref="abff2e0891477135c24f44747e991c6c" args="(prio_operation *op_list)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>handle_operations</b> (prio_operation *op_list)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9249c25621a6ee7a741a6b7eac710ba4"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::internal_forward_task" ref="9249c25621a6ee7a741a6b7eac710ba4" args="(prio_operation *op)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00324.html#9249c25621a6ee7a741a6b7eac710ba4">internal_forward_task</a> (prio_operation *op)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Tries to forward valid items to successors. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="05d8747ea54ca84a7196f8cacdc81ca5"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::internal_push" ref="05d8747ea54ca84a7196f8cacdc81ca5" args="(prio_operation *op)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>internal_push</b> (prio_operation *op)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6c7cd11240fbe0737344f36b587492f9"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::internal_pop" ref="6c7cd11240fbe0737344f36b587492f9" args="(prio_operation *op)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>internal_pop</b> (prio_operation *op)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9238c5c44ccc46ed1be218651f36feea"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::internal_reserve" ref="9238c5c44ccc46ed1be218651f36feea" args="(prio_operation *op)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>internal_reserve</b> (prio_operation *op)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="caefc7ba7a16a7120b6b37de42e705b4"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::internal_consume" ref="caefc7ba7a16a7120b6b37de42e705b4" args="(prio_operation *op)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>internal_consume</b> (prio_operation *op)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="400304719e359e66e9560157577fc2fe"></a><!-- doxytag: member="tbb::flow::interface6::priority_queue_node::internal_release" ref="400304719e359e66e9560157577fc2fe" args="(prio_operation *op)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>internal_release</b> (prio_operation *op)</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<h3>template&lt;typename T, typename Compare = std::less&lt;T&gt;, typename A = cache_aligned_allocator&lt;T&gt;&gt;<br>
class tbb::flow::interface6::priority_queue_node&lt; T, Compare, A &gt;</h3>
Forwards messages in priority order.
<p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="a00385.html">flow_graph.h</a></ul>
<hr>
<p></p>
Copyright &copy; 2005-2013 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.