tbb::interface6 Namespace Reference

## Namespaces

| internal

## Classes

class | aggregator
| Basic aggregator interface. More...
class | aggregator_ext
| Aggregator base class and expert interface. More...
class | aggregator_operation
class | concurrent_lru_cache
class | enumerable_thread_specific
| The enumerable_thread_specific container. More...
class | filter_t
| Class representing a chain of type-safe pipeline filters. More...
class | fixed_pool
class | flattened2d
class | flow_control
| input_filter control to signal end-of-input for parallel_pipeline More...
class | memory_pool
| Thread-safe growable pool allocator for variable-size requests. More...
class | memory_pool_allocator
| Meets "allocator" requirements of ISO C++ Standard, Section 20.1.5. More...
class | memory_pool_allocator< void, P >
| Analogous to std::allocator<void>, as defined in ISO C++ Standard, Section 20.4.1. More...
class | runtime_loader
| Load TBB at runtime. More...
class | task_scheduler_observer

## Functions

template<typename T >
atomic< T > | make_atomic (T t)
| Make an atomic for use in an initialization (list), as an alternative to zero-initialization or normal assignment. More...
template<typename Container >
flattened2d< Container > | flatten2d (const Container &c, const typename Container::const_iterator b, const typename Container::const_iterator e)
template<typename Container >
flattened2d< Container > | flatten2d (const Container &c)
template<typename T , typename U , typename P >
bool | operator== (const memory_pool_allocator< T, P > &a, const memory_pool_allocator< U, P > &b)
template<typename T , typename U , typename P >
bool | operator!= (const memory_pool_allocator< T, P > &a, const memory_pool_allocator< U, P > &b)
template<typename T , typename U , typename Body >
filter_t< T, U > | make_filter (tbb::filter::mode mode, const Body &body)
| Create a filter to participate in parallel_pipeline. More...
template<typename T , typename V , typename U >
filter_t< T, U > | operator& (const filter_t< T, V > &left, const filter_t< V, U > &right)
void | parallel_pipeline (size_t max_number_of_live_tokens, const filter_t< void, void > &filter_chain, tbb::task_group_context &context)
void | parallel_pipeline (size_t max_number_of_live_tokens, const filter_t< void, void > &filter_chain)

## Function Documentation

## flatten2d() [1/2]

template<typename Container >

flattened2d<Container> tbb::interface6::flatten2d | ( | const Container & | c | ) |

Definition at line 1154 of file enumerable_thread_specific.h.

{
return flattened2d<Container>(c);
}

## flatten2d() [2/2]

template<typename Container >

flattened2d<Container> tbb::interface6::flatten2d | ( | const Container & | c,
|  | const typename Container::const_iterator | b,
|  | const typename Container::const_iterator | e
| ) |  |

Definition at line 1149 of file enumerable_thread_specific.h.

{
return flattened2d<Container>(c, b, e);
}

## make_atomic()

template<typename T >

atomic<T> tbb::interface6::make_atomic | ( | T | t | ) |

Make an atomic for use in an initialization (list), as an alternative to zero-initialization or normal assignment.

Definition at line 554 of file atomic.h.

{
atomic<T> a;
store<relaxed>(a,t);
return a;
}

## make_filter()

template<typename T , typename U , typename Body >

filter_t<T,U> tbb::interface6::make_filter | ( | tbb::filter::mode | mode,
|  | const Body & | body
| ) |  |

Create a filter to participate in parallel_pipeline.

Definition at line 587 of file pipeline.h.

{
return new internal::filter_node_leaf<T,U,Body>(mode, body);
}

References mode.

## operator!=()

template<typename T , typename U , typename P >

bool tbb::interface6::operator!= | ( | const memory_pool_allocator< T, P > & | a,
|  | const memory_pool_allocator< U, P > & | b
| ) |  |

inline

Definition at line 183 of file memory_pool.h.

{return a.my_pool!=b.my_pool;}

References tbb::interface6::memory_pool_allocator< T, P >::my_pool.

## operator&()

template<typename T , typename V , typename U >

filter_t<T,U> tbb::interface6::operator& | ( | const filter_t< T, V > & | left,
|  | const filter_t< V, U > & | right
| ) |  |

Definition at line 592 of file pipeline.h.

{
__TBB_ASSERT(left.root,"cannot use default-constructed filter_t as left argument of '&'");
__TBB_ASSERT(right.root,"cannot use default-constructed filter_t as right argument of '&'");
return new internal::filter_node_join(*left.root,*right.root);
}

References __TBB_ASSERT, and tbb::interface6::filter_t< T, U >::root.

## operator==()

template<typename T , typename U , typename P >

bool tbb::interface6::operator== | ( | const memory_pool_allocator< T, P > & | a,
|  | const memory_pool_allocator< U, P > & | b
| ) |  |

inline

Definition at line 180 of file memory_pool.h.

{return a.my_pool==b.my_pool;}

References tbb::interface6::memory_pool_allocator< T, P >::my_pool.

## parallel_pipeline() [1/2]

void tbb::interface6::parallel_pipeline | ( | size_t | max_number_of_live_tokens,
|  | const filter_t< void, void > & | filter_chain
| ) |  |

inline

Definition at line 664 of file pipeline.h.

{
tbb::task_group_context context;
parallel_pipeline(max_number_of_live_tokens, filter_chain, context);
}

References parallel_pipeline().

Here is the call graph for this function:

## parallel_pipeline() [2/2]

void tbb::interface6::parallel_pipeline | ( | size_t | max_number_of_live_tokens,
|  | const filter_t< void, void > & | filter_chain,
|  | tbb::task_group_context & | context
| ) |  |

inline

Definition at line 649 of file pipeline.h.

{
internal::pipeline_proxy pipe(filter_chain);
// tbb::pipeline::run() is called via the proxy
pipe->run(max_number_of_live_tokens
#if __TBB_TASK_GROUP_CONTEXT
, context
#endif
);
}

References __TBB_TASK_GROUP_CONTEXT.

Referenced by parallel_pipeline().

Here is the caller graph for this function:
__TBB_ASSERT
#define __TBB_ASSERT(predicate, comment)
No-op version of __TBB_ASSERT.
Definition: tbb_stddef.h:165
__TBB_TASK_GROUP_CONTEXT
#define __TBB_TASK_GROUP_CONTEXT
Definition: tbb_config.h:542
tbb::task_group_context
Used to form groups of tasks.
Definition: task.h:347
mode
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 mode
Definition: ittnotify_static.h:109
tbb::interface6::parallel_pipeline
void parallel_pipeline(size_t max_number_of_live_tokens, const filter_t< void, void > &filter_chain)
Definition: pipeline.h:664

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.