Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
#include <flow_graph.h>
Public Types | |
enum | buffer_item_state { no_item =0, has_item =1, reserved_item =2 } |
typedef T | item_type |
Public Member Functions | |
item_buffer () | |
Constructor. More... | |
~item_buffer () | |
void | reset () |
Protected Types | |
typedef size_t | size_type |
typedef aligned_pair< item_type, buffer_item_state >::type | buffer_item_type |
typedef A::template rebind< buffer_item_type >::other | allocator_type |
Protected Member Functions | |
bool | buffer_empty () const |
buffer_item_type & | item (size_type i) |
const buffer_item_type & | item (size_type i) const |
bool | my_item_valid (size_type i) const |
bool | my_item_reserved (size_type i) const |
const item_type & | get_my_item (size_t i) const |
void | set_my_item (size_t i, const item_type &o) |
void | fetch_item (size_t i, item_type &o) |
void | move_item (size_t to, size_t from) |
bool | place_item (size_t here, const item_type &me) |
void | swap_items (size_t i, size_t j) |
void | destroy_item (size_type i) |
const item_type & | front () const |
const item_type & | back () const |
void | reserve_item (size_type i) |
void | release_item (size_type i) |
void | destroy_front () |
void | destroy_back () |
size_type | size (size_t new_tail=0) |
size_type | capacity () |
bool | buffer_full () |
void | grow_my_array (size_t minimum_size) |
Grows the internal array. More... | |
bool | push_back (item_type &v) |
bool | pop_back (item_type &v) |
bool | pop_front (item_type &v) |
void | clean_up_buffer (bool reset_pointers) |
Protected Attributes | |
buffer_item_type * | my_array |
size_type | my_array_size |
size_type | my_head |
size_type | my_tail |
Static Protected Attributes | |
static const size_type | initial_buffer_size = 4 |
Definition at line 45 of file flow_graph.h.
|
protected |
Definition at line 52 of file flow_graph.h.
|
protected |
Definition at line 51 of file flow_graph.h.
typedef T tbb::flow::interface10::internal::item_buffer< T, A >::item_type |
Definition at line 47 of file flow_graph.h.
|
protected |
Definition at line 50 of file flow_graph.h.
enum tbb::flow::interface10::internal::item_buffer::buffer_item_state |
Enumerator | |
---|---|
no_item | |
has_item | |
reserved_item |
Definition at line 48 of file flow_graph.h.
|
inline |
Constructor.
Definition at line 236 of file flow_graph.h.
|
inline |
Definition at line 241 of file flow_graph.h.
|
inlineprotected |
Definition at line 142 of file flow_graph.h.
|
inlineprotected |
Definition at line 60 of file flow_graph.h.
|
inlineprotected |
Definition at line 161 of file flow_graph.h.
|
inlineprotected |
Definition at line 158 of file flow_graph.h.
Referenced by tbb::flow::interface10::sequencer_node< T, A >::internal_push().
|
inlineprotected |
Definition at line 220 of file flow_graph.h.
|
inlineprotected |
Definition at line 153 of file flow_graph.h.
|
inlineprotected |
Definition at line 152 of file flow_graph.h.
Referenced by tbb::flow::interface10::queue_node< T, A >::try_put_and_add_task().
|
inlineprotected |
Definition at line 128 of file flow_graph.h.
Referenced by tbb::flow::interface10::priority_queue_node< T, Compare, A >::prio_pop().
|
inlineprotected |
Definition at line 94 of file flow_graph.h.
Referenced by tbb::flow::interface10::priority_queue_node< T, Compare, A >::heapify().
|
inlineprotected |
Definition at line 135 of file flow_graph.h.
Referenced by tbb::flow::interface10::queue_node< T, A >::try_put_and_add_task().
|
inlineprotected |
Definition at line 78 of file flow_graph.h.
Referenced by tbb::flow::interface10::priority_queue_node< T, Compare, A >::heapify(), tbb::flow::interface10::priority_queue_node< T, Compare, A >::prio(), tbb::flow::interface10::priority_queue_node< T, Compare, A >::prio_use_tail(), and tbb::flow::interface10::priority_queue_node< T, Compare, A >::reheap().
|
inlineprotected |
Grows the internal array.
Definition at line 164 of file flow_graph.h.
Referenced by tbb::flow::interface10::sequencer_node< T, A >::internal_push(), and tbb::flow::interface10::priority_queue_node< T, Compare, A >::prio_push().
|
inlineprotected |
Definition at line 62 of file flow_graph.h.
|
inlineprotected |
Definition at line 68 of file flow_graph.h.
|
inlineprotected |
Definition at line 103 of file flow_graph.h.
Referenced by tbb::flow::interface10::priority_queue_node< T, Compare, A >::heapify(), and tbb::flow::interface10::priority_queue_node< T, Compare, A >::prio_pop().
|
inlineprotected |
Definition at line 75 of file flow_graph.h.
|
inlineprotected |
Definition at line 74 of file flow_graph.h.
Referenced by tbb::flow::interface10::queue_node< T, A >::internal_pop(), tbb::flow::interface10::queue_node< T, A >::internal_reserve(), tbb::flow::interface10::queue_node< T, A >::is_item_valid(), and tbb::flow::interface10::priority_queue_node< T, Compare, A >::prio_pop().
|
inlineprotected |
Definition at line 112 of file flow_graph.h.
Referenced by tbb::flow::interface10::priority_queue_node< T, Compare, A >::heapify(), tbb::flow::interface10::sequencer_node< T, A >::internal_push(), and tbb::flow::interface10::priority_queue_node< T, Compare, A >::prio_push().
|
inlineprotected |
Definition at line 200 of file flow_graph.h.
|
inlineprotected |
Definition at line 209 of file flow_graph.h.
Referenced by tbb::flow::interface10::queue_node< T, A >::internal_pop().
|
inlineprotected |
Definition at line 191 of file flow_graph.h.
Referenced by tbb::flow::interface10::buffer_node< T, A >::internal_push().
|
inlineprotected |
Definition at line 150 of file flow_graph.h.
|
inlineprotected |
Definition at line 149 of file flow_graph.h.
|
inline |
Definition at line 245 of file flow_graph.h.
|
inlineprotected |
Definition at line 85 of file flow_graph.h.
|
inlineprotected |
Definition at line 157 of file flow_graph.h.
Referenced by tbb::flow::interface10::sequencer_node< T, A >::internal_push().
|
inlineprotected |
Definition at line 121 of file flow_graph.h.
Referenced by tbb::flow::interface10::priority_queue_node< T, Compare, A >::reheap().
|
staticprotected |
Definition at line 56 of file flow_graph.h.
|
protected |
Definition at line 54 of file flow_graph.h.
|
protected |
Definition at line 55 of file flow_graph.h.
Referenced by tbb::flow::interface10::priority_queue_node< T, Compare, A >::prio_push().
|
protected |
Definition at line 57 of file flow_graph.h.
Referenced by tbb::flow::interface10::queue_node< T, A >::internal_pop(), tbb::flow::interface10::sequencer_node< T, A >::internal_push(), tbb::flow::interface10::queue_node< T, A >::internal_reserve(), and tbb::flow::interface10::queue_node< T, A >::is_item_valid().
|
protected |
Definition at line 58 of file flow_graph.h.
Referenced by tbb::flow::interface10::priority_queue_node< T, Compare, A >::heapify(), tbb::flow::interface10::priority_queue_node< T, Compare, A >::internal_pop(), tbb::flow::interface10::sequencer_node< T, A >::internal_push(), tbb::flow::interface10::priority_queue_node< T, Compare, A >::internal_reserve(), tbb::flow::interface10::priority_queue_node< T, Compare, A >::is_item_valid(), tbb::flow::interface10::priority_queue_node< T, Compare, A >::order(), tbb::flow::interface10::priority_queue_node< T, Compare, A >::prio(), tbb::flow::interface10::priority_queue_node< T, Compare, A >::prio_pop(), tbb::flow::interface10::priority_queue_node< T, Compare, A >::prio_push(), and tbb::flow::interface10::priority_queue_node< T, Compare, A >::prio_use_tail().