Home ⌂Doc Index ◂Up ▴
Intel(R) Threading Building Blocks Doxygen Documentation  version 4.2.3
internal::decrementer< T, continue_msg, void > Class Template Reference

#include <_flow_graph_body_impl.h>

Inheritance diagram for internal::decrementer< T, continue_msg, void >:
Collaboration diagram for internal::decrementer< T, continue_msg, void >:

Public Types

typedef continue_msg input_type
 
typedef continue_msg output_type
 

Public Member Functions

 decrementer (int number_of_predecessors=0)
 
void set_owner (T *node)
 

Protected Member Functions

graph & graph_reference () const __TBB_override
 

Private Member Functions

taskexecute () __TBB_override
 
- Private Member Functions inherited from tbb::internal::no_copy
 no_copy (const no_copy &)=delete
 
 no_copy ()=default
 

Private Attributes

T * my_node
 

Detailed Description

template<typename T>
class internal::decrementer< T, continue_msg, void >

Definition at line 474 of file _flow_graph_body_impl.h.

Member Typedef Documentation

◆ input_type

template<typename T >
typedef continue_msg internal::decrementer< T, continue_msg, void >::input_type

Definition at line 490 of file _flow_graph_body_impl.h.

◆ output_type

template<typename T >
typedef continue_msg internal::decrementer< T, continue_msg, void >::output_type

Definition at line 491 of file _flow_graph_body_impl.h.

Constructor & Destructor Documentation

◆ decrementer()

template<typename T >
internal::decrementer< T, continue_msg, void >::decrementer ( int  number_of_predecessors = 0)
inline

Definition at line 492 of file _flow_graph_body_impl.h.

493  : continue_receiver(
495  )
496  // Since decrementer does not make use of possibly unconstructed owner inside its
497  // constructor, my_node can be directly initialized with 'this' pointer passed from the
498  // owner, hence making method 'set_owner' needless.
499  , my_node(NULL)
500  {}
#define __TBB_FLOW_GRAPH_PRIORITY_ARG1(arg1, priority)
static const node_priority_t no_priority

Member Function Documentation

◆ execute()

template<typename T >
task* internal::decrementer< T, continue_msg, void >::execute ( )
inlineprivate

Definition at line 478 of file _flow_graph_body_impl.h.

478  {
479  return my_node->decrement_counter( 1 );
480  }

◆ graph_reference()

template<typename T >
graph& internal::decrementer< T, continue_msg, void >::graph_reference ( ) const
inlineprotected

Definition at line 484 of file _flow_graph_body_impl.h.

484  {
485  return my_node->my_graph;
486  }

◆ set_owner()

template<typename T >
void internal::decrementer< T, continue_msg, void >::set_owner ( T *  node)
inline

Member Data Documentation

◆ my_node

template<typename T >
T* internal::decrementer< T, continue_msg, void >::my_node
private

Definition at line 476 of file _flow_graph_body_impl.h.


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

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.