Intel(R) Threading Building Blocks Doxygen Documentation  version 4.2.3
tbb::flow::interface11::async_node< Input, Output, Policy, Allocator >::receiver_gateway_impl Class Reference
Inheritance diagram for tbb::flow::interface11::async_node< Input, Output, Policy, Allocator >::receiver_gateway_impl:
Collaboration diagram for tbb::flow::interface11::async_node< Input, Output, Policy, Allocator >::receiver_gateway_impl:

Public Member Functions

 receiver_gateway_impl (async_node *node)
 
void reserve_wait () __TBB_override
 Inform a graph that messages may come from outside, to prevent premature graph completion. More...
 
void release_wait () __TBB_override
 Inform a graph that a previous call to reserve_wait is no longer in effect. More...
 
bool try_put (const Output &i) __TBB_override
 Implements gateway_type::try_put for an external activity to submit a message to FG. More...
 
- Public Member Functions inherited from tbb::flow::interface11::graph_proxy
virtual ~graph_proxy ()
 

Private Attributes

async_nodemy_node
 

Additional Inherited Members

- Public Types inherited from tbb::flow::interface11::receiver_gateway< Output >
typedef Output input_type
 Type of inputing data into FG. More...
 

Detailed Description

template<typename Input, typename Output, typename Policy = queueing_lightweight, typename Allocator = __TBB_DEFAULT_NODE_ALLOCATOR(Input)>
class tbb::flow::interface11::async_node< Input, Output, Policy, Allocator >::receiver_gateway_impl

Definition at line 4239 of file flow_graph.h.

Constructor & Destructor Documentation

◆ receiver_gateway_impl()

template<typename Input , typename Output , typename Policy = queueing_lightweight, typename Allocator = __TBB_DEFAULT_NODE_ALLOCATOR(Input)>
tbb::flow::interface11::async_node< Input, Output, Policy, Allocator >::receiver_gateway_impl::receiver_gateway_impl ( async_node node)
inline

Definition at line 4241 of file flow_graph.h.

4241 : my_node(node) {}

Member Function Documentation

◆ release_wait()

template<typename Input , typename Output , typename Policy = queueing_lightweight, typename Allocator = __TBB_DEFAULT_NODE_ALLOCATOR(Input)>
void tbb::flow::interface11::async_node< Input, Output, Policy, Allocator >::receiver_gateway_impl::release_wait ( )
inlinevirtual

Inform a graph that a previous call to reserve_wait is no longer in effect.

Implements tbb::flow::interface11::graph_proxy.

Definition at line 4247 of file flow_graph.h.

4247  {
4250  }

References tbb::internal::fgt_async_commit().

Here is the call graph for this function:

◆ reserve_wait()

template<typename Input , typename Output , typename Policy = queueing_lightweight, typename Allocator = __TBB_DEFAULT_NODE_ALLOCATOR(Input)>
void tbb::flow::interface11::async_node< Input, Output, Policy, Allocator >::receiver_gateway_impl::reserve_wait ( )
inlinevirtual

Inform a graph that messages may come from outside, to prevent premature graph completion.

Implements tbb::flow::interface11::graph_proxy.

Definition at line 4242 of file flow_graph.h.

4242  {
4245  }

References tbb::internal::fgt_async_reserve().

Here is the call graph for this function:

◆ try_put()

template<typename Input , typename Output , typename Policy = queueing_lightweight, typename Allocator = __TBB_DEFAULT_NODE_ALLOCATOR(Input)>
bool tbb::flow::interface11::async_node< Input, Output, Policy, Allocator >::receiver_gateway_impl::try_put ( const Output &  i)
inlinevirtual

Implements gateway_type::try_put for an external activity to submit a message to FG.

Implements tbb::flow::interface11::receiver_gateway< Output >.

Definition at line 4253 of file flow_graph.h.

4253  {
4254  return my_node->try_put_impl(i);
4255  }

Member Data Documentation

◆ my_node

template<typename Input , typename Output , typename Policy = queueing_lightweight, typename Allocator = __TBB_DEFAULT_NODE_ALLOCATOR(Input)>
async_node* tbb::flow::interface11::async_node< Input, Output, Policy, Allocator >::receiver_gateway_impl::my_node
private

Definition at line 4258 of file flow_graph.h.


The documentation for this class was generated from the following file:
tbb::flow::interface11::graph_node::my_graph
graph & my_graph
Definition: _flow_graph_impl.h:464
tbb::flow::interface10::graph::release_wait
void release_wait() __TBB_override
Deregisters an external entity that may have interacted with the graph.
Definition: flow_graph.h:812
tbb::internal::fgt_async_reserve
static void fgt_async_reserve(void *, void *)
Definition: _flow_graph_trace_impl.h:341
tbb::flow::interface11::async_node::receiver_gateway_impl::my_node
async_node * my_node
Definition: flow_graph.h:4258
tbb::flow::interface11::async_node::receiver_type
receiver< input_type > receiver_type
Definition: flow_graph.h:4219
tbb::flow::interface11::async_node::try_put_impl
bool try_put_impl(const Output &i)
Implements gateway_type::try_put for an external activity to submit a message to FG.
Definition: flow_graph.h:4265
tbb::internal::fgt_async_commit
static void fgt_async_commit(void *, void *)
Definition: _flow_graph_trace_impl.h:342
tbb::flow::interface10::graph::reserve_wait
void reserve_wait() __TBB_override
Used to register that an external entity may still interact with the graph.
Definition: flow_graph.h:805

Copyright © 2005-2020 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.