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 move_item(size_t to, size_t from)
size_type size(size_t new_tail=0)
const item_type & get_my_item(size_t i) const
aligned_pair< item_type, buffer_item_state >::type buffer_item_type
const item_type & front() const
void grow_my_array(size_t minimum_size)
Grows the internal array.
item_buffer with reservable front-end. NOTE: if reserving, do not
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
static const size_type initial_buffer_size
bool pop_back(item_type &v)
const item_type & back() const
type mimicking std::pair but with trailing fill to ensure each element of an array
bool my_item_reserved(size_type i) const
bool push_back(item_type &v)
allocator_traits< Alloc >::template rebind_alloc< T >::other type
bool buffer_empty() const
void fetch_item(size_t i, item_type &o)
buffer_item_type & item(size_type i)
bool pop_front(item_type &v)
buffer_item_type * my_array
void set_my_item(size_t i, const item_type &o)
tbb::internal::allocator_rebind< A, buffer_item_type >::type allocator_type
void swap_items(size_t i, size_t j)
bool my_item_valid(size_type i) const
auto first(Container &c) -> decltype(begin(c))
void reserve_item(size_type i)
const buffer_item_type & item(size_type i) const
void destroy_item(size_type i)
#define __TBB_ASSERT(predicate, comment)
No-op version of __TBB_ASSERT.
bool place_item(size_t here, const item_type &me)
void clean_up_buffer(bool reset_pointers)
item_buffer()
Constructor.
void release_item(size_type i)