Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
Go to the documentation of this file.
17 #ifndef __TBB__flow_graph_item_buffer_impl_H
18 #define __TBB__flow_graph_item_buffer_impl_H
20 #ifndef __TBB_flow_graph_H
21 #error Do not #include this internal file directly; use public TBB headers instead.
39 template <
typename T,
typename A=cache_aligned_allocator<T> >
107 #if !TBB_DEPRECATED_SEQUENCER_DUPLICATES
173 char *new_space = (
char *)&(new_array[i&(
new_size-1)].
first);
246 template<
typename T,
typename A=cache_aligned_allocator<T> >
283 #endif // __TBB__flow_graph_item_buffer_impl_H
void grow_my_array(size_t minimum_size)
Grows the internal array.
void swap_items(size_t i, size_t j)
void move_item(size_t to, size_t from)
#define __TBB_ASSERT(predicate, comment)
No-op version of __TBB_ASSERT.
aligned_pair< item_type, buffer_item_state >::type buffer_item_type
bool my_item_reserved(size_type i) const
type mimicking std::pair but with trailing fill to ensure each element of an array
bool pop_front(item_type &v)
void destroy_item(size_type i)
const item_type & get_my_item(size_t i) const
bool pop_back(item_type &v)
allocator_traits< Alloc >::template rebind_alloc< T >::other type
void set_my_item(size_t i, const item_type &o)
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 new_size
buffer_item_type & item(size_type i)
void clean_up_buffer(bool reset_pointers)
buffer_item_type * my_array
bool buffer_empty() const
const buffer_item_type & item(size_type i) const
auto first(Container &c) -> decltype(begin(c))
item_buffer()
Constructor.
size_type size(size_t new_tail=0)
const item_type & front() const
bool place_item(size_t here, const item_type &me)
const item_type & back() const
void reserve_item(size_type i)
void release_item(size_type i)
static const size_type initial_buffer_size
item_buffer with reservable front-end. NOTE: if reserving, do not
bool push_back(item_type &v)
bool my_item_valid(size_type i) const
void fetch_item(size_t i, item_type &o)
tbb::internal::allocator_rebind< A, buffer_item_type >::type allocator_type
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.