21 #ifndef __TBB_parallel_for_each_H 22 #define __TBB_parallel_for_each_H 32 template <
typename Function,
typename Iterator>
44 template <
typename Function,
typename Iterator>
54 for(Iterator it = range.
begin(),
end = range.
end(); it !=
end; ++it) {
60 template<
typename Iterator,
typename Function,
typename Generic>
62 #if __TBB_TASK_GROUP_CONTEXT 64 internal::parallel_for_each_body_do<Function, Iterator> body(f);
69 internal::parallel_for_each_body_do<Function, Iterator> body(f);
73 template<
typename Iterator,
typename Function>
75 #if __TBB_TASK_GROUP_CONTEXT 77 internal::parallel_for_each_body_for<Function, Iterator> body(f);
82 internal::parallel_for_each_body_for<Function, Iterator> body(f);
94 #if __TBB_TASK_GROUP_CONTEXT 95 template<
typename Iterator,
typename Function>
97 internal::parallel_for_each_impl<Iterator, Function, typename std::iterator_traits<Iterator>::iterator_category>::doit(
first,
last, f, context);
102 template<
typename Range,
typename Function>
109 template<
typename Range,
typename Function>
116 template<
typename Iterator,
typename Function>
118 internal::parallel_for_each_impl<Iterator, Function, typename std::iterator_traits<Iterator>::iterator_category>::doit(
first,
last, f);
122 template<
typename Range,
typename Function>
128 template<
typename Range,
typename Function>
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d void ITT_FORMAT p void ITT_FORMAT p __itt_model_site __itt_model_site_instance ITT_FORMAT p __itt_model_task __itt_model_task_instance ITT_FORMAT p void ITT_FORMAT p void ITT_FORMAT p void size_t ITT_FORMAT d void ITT_FORMAT p const wchar_t ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s no args void ITT_FORMAT p size_t ITT_FORMAT d no args const wchar_t const wchar_t ITT_FORMAT s __itt_heap_function void size_t int ITT_FORMAT d __itt_heap_function void ITT_FORMAT p __itt_heap_function void void size_t int ITT_FORMAT d no args no args unsigned int ITT_FORMAT u const __itt_domain __itt_id ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain __itt_id ITT_FORMAT p const __itt_domain __itt_id __itt_timestamp __itt_timestamp end
const_iterator begin() const
Beginning of range.
A range over which to iterate.
auto first(Container &c) -> decltype(begin(c))
Used to form groups of tasks.
void operator()(typename std::iterator_traits< Iterator >::reference value) const
static void doit(Iterator first, Iterator last, const Function &f)
parallel_for_each_body_for(const Function &_func)
static void doit(Iterator first, Iterator last, const Function &f, task_group_context &context)
auto last(Container &c) -> decltype(begin(c))
const_iterator end() const
One past last value in range.
void parallel_for_each(Iterator first, Iterator last, const Function &f, task_group_context &context)
Calls function f for all items from [first, last) interval using user-supplied context.
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d void ITT_FORMAT p void ITT_FORMAT p __itt_model_site __itt_model_site_instance ITT_FORMAT p __itt_model_task __itt_model_task_instance ITT_FORMAT p void ITT_FORMAT p void ITT_FORMAT p void size_t ITT_FORMAT d void ITT_FORMAT p const wchar_t ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s no args void ITT_FORMAT p size_t ITT_FORMAT d no args const wchar_t const wchar_t ITT_FORMAT s __itt_heap_function void size_t int ITT_FORMAT d __itt_heap_function void ITT_FORMAT p __itt_heap_function void void size_t int ITT_FORMAT d no args no args unsigned int ITT_FORMAT u const __itt_domain __itt_id ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain __itt_id ITT_FORMAT p const __itt_domain __itt_id __itt_timestamp __itt_timestamp ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain ITT_FORMAT p const __itt_domain __itt_string_handle unsigned long long value
void parallel_for(const Range &range, const Body &body)
Parallel iteration over range with default partitioner.
void operator()(tbb::blocked_range< Iterator > range) const
static void doit(Iterator first, Iterator last, const Function &f, task_group_context &context)
void parallel_do(Iterator first, Iterator last, const Body &body)
Parallel iteration over a range, with optional addition of more work.
parallel_for_each_body_do(const Function &_func)
static void doit(Iterator first, Iterator last, const Function &f)