Home ⌂Doc Index ◂Up ▴
Intel(R) Threading Building Blocks Doxygen Documentation  version 4.2.3
tbb::flow::interface11::internal::successor_cache< T, M > Class Template Reference

An abstract cache of successors. More...

#include <flow_graph.h>

Inheritance diagram for tbb::flow::interface11::internal::successor_cache< T, M >:
Collaboration diagram for tbb::flow::interface11::internal::successor_cache< T, M >:

Public Member Functions

 successor_cache ()
 
void set_owner (owner_type *owner)
 
virtual ~successor_cache ()
 
void register_successor (successor_type &r)
 
void remove_successor (successor_type &r)
 
bool empty ()
 
void clear ()
 

Protected Types

typedef M mutex_type
 
typedef untyped_receiver successor_type
 
typedef untyped_receiverpointer_type
 
typedef untyped_sender owner_type
 
typedef std::list< pointer_typesuccessors_type
 

Protected Attributes

mutex_type my_mutex
 
successors_type my_successors
 
owner_typemy_owner
 

Additional Inherited Members

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

Detailed Description

template<typename T, typename M = spin_rw_mutex>
class tbb::flow::interface11::internal::successor_cache< T, M >

An abstract cache of successors.

Definition at line 127 of file flow_graph.h.

Member Typedef Documentation

◆ mutex_type

template<typename T, typename M = spin_rw_mutex>
typedef M tbb::flow::interface11::internal::successor_cache< T, M >::mutex_type
protected

Definition at line 277 of file flow_graph.h.

◆ owner_type

template<typename T, typename M = spin_rw_mutex>
typedef untyped_sender tbb::flow::interface11::internal::successor_cache< T, M >::owner_type
protected

Definition at line 283 of file flow_graph.h.

◆ pointer_type

template<typename T, typename M = spin_rw_mutex>
typedef untyped_receiver* tbb::flow::interface11::internal::successor_cache< T, M >::pointer_type
protected

Definition at line 282 of file flow_graph.h.

◆ successor_type

template<typename T, typename M = spin_rw_mutex>
typedef untyped_receiver tbb::flow::interface11::internal::successor_cache< T, M >::successor_type
protected

Definition at line 281 of file flow_graph.h.

◆ successors_type

template<typename T, typename M = spin_rw_mutex>
typedef std::list< pointer_type > tbb::flow::interface11::internal::successor_cache< T, M >::successors_type
protected

Definition at line 289 of file flow_graph.h.

Constructor & Destructor Documentation

◆ successor_cache()

template<typename T, typename M = spin_rw_mutex>
tbb::flow::interface11::internal::successor_cache< T, M >::successor_cache ( )
inline

Definition at line 325 of file flow_graph.h.

326 { return false; }

◆ ~successor_cache()

template<typename T, typename M = spin_rw_mutex>
virtual tbb::flow::interface11::internal::successor_cache< T, M >::~successor_cache ( )
inlinevirtual

Definition at line 329 of file flow_graph.h.

329 { return false; }

Member Function Documentation

◆ clear()

◆ empty()

◆ register_successor()

template<typename T, typename M = spin_rw_mutex>
void tbb::flow::interface11::internal::successor_cache< T, M >::register_successor ( successor_type r)
inline

Definition at line 331 of file flow_graph.h.

341  :

Referenced by tbb::flow::interface11::limiter_node< T, DecrementType >::register_successor(), and tbb::flow::interface11::overwrite_node< T >::register_successor().

Here is the caller graph for this function:

◆ remove_successor()

template<typename T, typename M = spin_rw_mutex>
void tbb::flow::interface11::internal::successor_cache< T, M >::remove_successor ( successor_type r)
inline

Definition at line 336 of file flow_graph.h.

341  :
343  template< typename X >
344  bool try_get( X &t ) {
static const void * to_void_ptr(const T &t)
Definition: flow_graph.h:229

Referenced by tbb::flow::interface11::limiter_node< T, DecrementType >::remove_successor(), tbb::flow::interface11::overwrite_node< T >::remove_successor(), and tbb::flow::interface11::internal::unfolded_join_node< 10, key_matching_port, OutputTuple, key_matching< K, KHash > >::unfolded_join_node().

Here is the caller graph for this function:

◆ set_owner()

template<typename T, typename M = spin_rw_mutex>
void tbb::flow::interface11::internal::successor_cache< T, M >::set_owner ( owner_type owner)
inline

Definition at line 327 of file flow_graph.h.

329 { return false; }

Referenced by tbb::flow::interface11::broadcast_node< T >::broadcast_node(), tbb::flow::interface11::limiter_node< T, DecrementType >::initialize(), tbb::flow::interface11::overwrite_node< T >::overwrite_node(), and tbb::flow::interface11::source_node< Output >::source_node().

Here is the caller graph for this function:

Member Data Documentation

◆ my_mutex

template<typename T, typename M = spin_rw_mutex>
mutex_type tbb::flow::interface11::internal::successor_cache< T, M >::my_mutex
protected

Definition at line 278 of file flow_graph.h.

◆ my_owner

template<typename T, typename M = spin_rw_mutex>
owner_type* tbb::flow::interface11::internal::successor_cache< T, M >::my_owner
protected

Definition at line 295 of file flow_graph.h.

◆ my_successors

template<typename T, typename M = spin_rw_mutex>
successors_type tbb::flow::interface11::internal::successor_cache< T, M >::my_successors
protected

Definition at line 293 of file flow_graph.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.