- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Public Types | Public Member Functions | Protected Types | Protected Member Functions | List of all members
tbb::flow::interface7::queue_node< T, A > Class Template Reference

Forwards messages in FIFO order. More...

`#include <flow_graph.h>`

Inheritance diagram for tbb::flow::interface7::queue_node< T, A >:

## Public Types
typedef T | input_type
typedef T | output_type
typedef sender< input_type > | predecessor_type
typedef receiver< output_type > | successor_type
Public Types inherited from tbb::flow::interface7::buffer_node< T, A >
typedef T | input_type
typedef T | output_type
typedef sender< input_type > | predecessor_type
typedef receiver< output_type > | successor_type
typedef buffer_node< T, A > | my_class
typedef std::vector < predecessor_type * > | predecessor_vector_type
typedef std::vector < successor_type * > | successor_vector_type
Public Types inherited from tbb::flow::interface7::receiver< T >
typedef T | input_type
| The input type of this receiver.
typedef sender< T > | predecessor_type
| The predecessor type for this node.
Public Types inherited from tbb::flow::interface7::sender< T >
typedef T | output_type
| The output type of this sender.
typedef receiver< T > | successor_type
| The successor type for this node.

## Public Member Functions
| queue_node (graph &g)
| Constructor.
| queue_node (const queue_node &src)
| Copy constructor.
void | set_name (const char *name)
void | reset (__TBB_PFG_RESET_ARG(reset_flags f))
Public Member Functions inherited from tbb::flow::interface7::buffer_node< T, A >
| buffer_node (graph &g)
| Constructor.
| buffer_node (const buffer_node &src)
| Copy constructor.
bool | register_successor (successor_type &r)
| Adds a new successor. More...
void | internal_add_built_successor (successor_type &r)
| interface to record edges for traversal & deletion
void | internal_delete_built_successor (successor_type &r)
void | internal_add_built_predecessor (predecessor_type &p)
void | internal_delete_built_predecessor (predecessor_type &p)
size_t | predecessor_count ()
size_t | successor_count ()
void | copy_predecessors (predecessor_vector_type &v)
void | copy_successors (successor_vector_type &v)
bool | remove_successor (successor_type &r)
| Removes a successor. More...
bool | try_get (T &v)
| Request an item from the buffer_node. More...
bool | try_reserve (T &v)
| Reserves an item. More...
bool | try_release ()
| Release a reserved item. More...
bool | try_consume ()
| Consumes a reserved item. More...
Public Member Functions inherited from tbb::flow::interface7::graph_node
| graph_node (graph &g)
virtual void | extract (reset_flags f=rf_extract)
Public Member Functions inherited from tbb::flow::interface7::receiver< T >
virtual | ~receiver ()
| Destructor.
bool | try_put (const T &t)
| Put an item to the receiver.
virtual bool | register_predecessor (predecessor_type &)
| Add a predecessor to the node.
virtual bool | remove_predecessor (predecessor_type &)
| Remove a predecessor from the node.
virtual void | copy_predecessors (std::vector< predecessor_type * > &)=0
Public Member Functions inherited from tbb::flow::interface7::sender< T >
virtual void | copy_successors (std::vector< successor_type * > &)=0

## Protected Types
enum | op_stat { WAIT =0, SUCCEEDED, FAILED }
typedef buffer_node< T, A > | base_type
typedef base_type::size_type | size_type
typedef base_type::buffer_operation | queue_operation
Protected Types inherited from tbb::flow::interface7::buffer_node< T, A >
enum | op_type { reg_succ, rem_succ, req_item, res_item, rel_res, con_res, put_item, try_fwd_task, add_blt_succ, del_blt_succ, add_blt_pred, del_blt_pred, blt_succ_cnt, blt_pred_cnt, blt_succ_cpy, blt_pred_cpy }
enum | op_stat { WAIT =0, SUCCEEDED, FAILED }
typedef size_t | size_type
typedef internal::aggregating_functor < my_class, buffer_operation > | my_handler

## Protected Member Functions
void | internal_forward_task (queue_operation *op)
| Tries to forward valid items to successors.
void | internal_pop (queue_operation *op)
void | internal_reserve (queue_operation *op)
void | internal_consume (queue_operation *op)
Protected Member Functions inherited from tbb::flow::interface7::buffer_node< T, A >
virtual void | handle_operations (buffer_operation *op_list)
task * | grab_forwarding_task (buffer_operation &op_data)
bool | enqueue_forwarding_task (buffer_operation &op_data)
virtual task * | forward_task ()
| This is executed by an enqueued task, the "forwarder".
virtual void | internal_reg_succ (buffer_operation *op)
| Register successor.
virtual void | internal_rem_succ (buffer_operation *op)
| Remove successor.
virtual void | internal_add_built_succ (buffer_operation *op)
virtual void | internal_del_built_succ (buffer_operation *op)
virtual void | internal_add_built_pred (buffer_operation *op)
virtual void | internal_del_built_pred (buffer_operation *op)
virtual void | internal_succ_cnt (buffer_operation *op)
virtual void | internal_pred_cnt (buffer_operation *op)
virtual void | internal_copy_succs (buffer_operation *op)
virtual void | internal_copy_preds (buffer_operation *op)
virtual void | internal_push (buffer_operation *op)
virtual void | internal_release (buffer_operation *op)
task * | try_put_task (const T &t)
| receive an item, return a task *if possible
void | reset (__TBB_PFG_RESET_ARG(reset_flags f))
void | reset_receiver (__TBB_PFG_RESET_ARG(reset_flags))
Protected Member Functions inherited from tbb::flow::interface7::graph_node
virtual void | reset (__TBB_PFG_RESET_ARG(reset_flags f=rf_reset_protocol))=0
Protected Member Functions inherited from tbb::flow::interface7::receiver< T >
virtual void | reset_receiver (__TBB_PFG_RESET_ARG(reset_flags f=rf_reset_protocol))=0
virtual bool | is_continue_receiver ()

## Additional Inherited Members
Protected Attributes inherited from tbb::flow::interface7::buffer_node< T, A >
internal::round_robin_cache< T, null_rw_mutex > | my_successors
edge_container< predecessor_type > | my_built_predecessors
bool | forwarder_busy
internal::aggregator < my_handler, buffer_operation > | my_aggregator

## Detailed Description

### template<typename T, typename A = cache_aligned_allocator<T>>
class tbb::flow::interface7::queue_node< T, A >

Forwards messages in FIFO order.

The documentation for this class was generated from the following file:

- flow_graph.h

Copyright © 2005-2014 Intel Corporation. All Rights Reserved.

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.

* Other names and brands may be claimed as the property of others.