21 #ifndef __TBB_combinable_H 22 #define __TBB_combinable_H 24 #include "enumerable_thread_specific.h" 25 #include "cache_aligned_allocator.h" 45 template <
typename finit>
53 #if __TBB_ETS_USE_CPP11 58 my_ets = other.my_ets;
62 #if __TBB_ETS_USE_CPP11 64 my_ets=std::move(other.my_ets);
69 void clear() { my_ets.
clear(); }
71 T& local() {
return my_ets.
local(); }
73 T& local(
bool & exists) {
return my_ets.
local(exists); }
76 template <
typename combine_func_t>
77 T combine(combine_func_t f_combine) {
return my_ets.combine(f_combine); }
80 template <
typename combine_func_t>
81 void combine_each(combine_func_t f_combine) { my_ets.combine_each(f_combine); }
void clear()
Destroys local copies.
Definition: enumerable_thread_specific.h:931
reference local()
returns reference to local, discarding exists
Definition: enumerable_thread_specific.h:896
~combinable()
destructor
Definition: combinable.h:49
The enumerable_thread_specific container.
Definition: enumerable_thread_specific.h:54
Meets "allocator" requirements of ISO C++ Standard, Section 20.1.5.
Definition: cache_aligned_allocator.h:60
The namespace tbb contains all components of the library.
Definition: parallel_for.h:44
Thread-local storage with optional reduction.
Definition: combinable.h:34