Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
#include <_flow_graph_item_buffer_impl.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 40 of file _flow_graph_item_buffer_impl.h.
|
protected |
Definition at line 47 of file _flow_graph_item_buffer_impl.h.
|
protected |
Definition at line 46 of file _flow_graph_item_buffer_impl.h.
typedef T internal::item_buffer< T, A >::item_type |
Definition at line 42 of file _flow_graph_item_buffer_impl.h.
|
protected |
Definition at line 45 of file _flow_graph_item_buffer_impl.h.
enum internal::item_buffer::buffer_item_state |
Enumerator | |
---|---|
no_item | |
has_item | |
reserved_item |
Definition at line 43 of file _flow_graph_item_buffer_impl.h.
|
inline |
|
inline |
Definition at line 236 of file _flow_graph_item_buffer_impl.h.
|
inlineprotected |
Definition at line 137 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::pop_back(), and tbb::flow::interface11::buffer_node< T, A >::try_put_and_add_task().
|
inlineprotected |
Definition at line 55 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::function_input_queue< T, A >::empty().
|
inlineprotected |
Definition at line 156 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::push_back().
|
inlineprotected |
Definition at line 153 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::buffer_full(), internal::item_buffer< OutputTuple >::grow_my_array(), and tbb::flow::interface11::sequencer_node< T, A >::internal_push().
|
inlineprotected |
Definition at line 215 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::grow_my_array(), internal::item_buffer< OutputTuple >::reset(), and internal::item_buffer< OutputTuple >::~item_buffer().
|
inlineprotected |
Definition at line 148 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::pop_back(), and tbb::flow::interface11::buffer_node< T, A >::try_put_and_add_task().
|
inlineprotected |
Definition at line 147 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::reservable_item_buffer< T, A >::consume_front(), internal::function_input_queue< T, A >::pop(), internal::item_buffer< OutputTuple >::pop_front(), and tbb::flow::interface11::queue_node< T, A >::try_put_and_add_task().
|
inlineprotected |
Definition at line 123 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::clean_up_buffer(), internal::item_buffer< OutputTuple >::destroy_back(), internal::item_buffer< OutputTuple >::destroy_front(), internal::item_buffer< OutputTuple >::fetch_item(), internal::item_buffer< OutputTuple >::move_item(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::prio_pop(), and internal::item_buffer< OutputTuple >::set_my_item().
|
inlineprotected |
Definition at line 89 of file _flow_graph_item_buffer_impl.h.
Referenced by tbb::flow::interface11::priority_queue_node< T, Compare, A >::heapify().
|
inlineprotected |
Definition at line 130 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::function_input_queue< T, A >::front(), internal::item_buffer< OutputTuple >::pop_front(), internal::reservable_item_buffer< T, A >::reserve_front(), and tbb::flow::interface11::queue_node< T, A >::try_put_and_add_task().
|
inlineprotected |
Definition at line 73 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::back(), internal::item_buffer< OutputTuple >::fetch_item(), internal::item_buffer< OutputTuple >::front(), internal::item_buffer< OutputTuple >::grow_my_array(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::heapify(), internal::item_buffer< OutputTuple >::move_item(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::prio(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::prio_use_tail(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::reheap(), and internal::item_buffer< OutputTuple >::swap_items().
|
inlineprotected |
Grows the internal array.
Definition at line 159 of file _flow_graph_item_buffer_impl.h.
Referenced by tbb::flow::interface11::sequencer_node< T, A >::internal_push(), internal::item_buffer< OutputTuple >::item_buffer(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::prio_push(), internal::item_buffer< OutputTuple >::push_back(), and internal::item_buffer< OutputTuple >::reset().
|
inlineprotected |
Definition at line 57 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::destroy_item(), internal::item_buffer< OutputTuple >::get_my_item(), internal::item_buffer< OutputTuple >::grow_my_array(), internal::item_buffer< OutputTuple >::my_item_reserved(), internal::item_buffer< OutputTuple >::my_item_valid(), internal::item_buffer< OutputTuple >::release_item(), internal::item_buffer< OutputTuple >::reserve_item(), and internal::item_buffer< OutputTuple >::set_my_item().
|
inlineprotected |
Definition at line 63 of file _flow_graph_item_buffer_impl.h.
|
inlineprotected |
Definition at line 98 of file _flow_graph_item_buffer_impl.h.
Referenced by tbb::flow::interface11::priority_queue_node< T, Compare, A >::heapify(), and tbb::flow::interface11::priority_queue_node< T, Compare, A >::prio_pop().
|
inlineprotected |
Definition at line 70 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::release_item(), and internal::item_buffer< OutputTuple >::reserve_item().
|
inlineprotected |
Definition at line 69 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::back(), internal::item_buffer< OutputTuple >::clean_up_buffer(), internal::item_buffer< OutputTuple >::destroy_item(), internal::item_buffer< OutputTuple >::fetch_item(), internal::item_buffer< OutputTuple >::front(), internal::item_buffer< OutputTuple >::get_my_item(), internal::item_buffer< OutputTuple >::grow_my_array(), tbb::flow::interface11::queue_node< T, A >::internal_pop(), tbb::flow::interface11::queue_node< T, A >::internal_reserve(), tbb::flow::interface11::buffer_node< T, A >::is_item_valid(), tbb::flow::interface11::queue_node< T, A >::is_item_valid(), internal::item_buffer< OutputTuple >::move_item(), internal::item_buffer< OutputTuple >::place_item(), internal::item_buffer< OutputTuple >::pop_back(), internal::item_buffer< OutputTuple >::pop_front(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::prio_pop(), internal::reservable_item_buffer< T, A >::reserve_front(), internal::item_buffer< OutputTuple >::reserve_item(), and internal::item_buffer< OutputTuple >::swap_items().
|
inlineprotected |
Definition at line 107 of file _flow_graph_item_buffer_impl.h.
Referenced by tbb::flow::interface11::priority_queue_node< T, Compare, A >::heapify(), tbb::flow::interface11::sequencer_node< T, A >::internal_push(), and tbb::flow::interface11::priority_queue_node< T, Compare, A >::prio_push().
|
inlineprotected |
Definition at line 195 of file _flow_graph_item_buffer_impl.h.
Referenced by tbb::flow::interface11::buffer_node< T, A >::internal_pop().
|
inlineprotected |
Definition at line 204 of file _flow_graph_item_buffer_impl.h.
Referenced by tbb::flow::interface11::queue_node< T, A >::internal_pop(), and internal::function_input_queue< T, A >::pop().
|
inlineprotected |
Definition at line 186 of file _flow_graph_item_buffer_impl.h.
Referenced by tbb::flow::interface11::buffer_node< T, A >::internal_push(), and internal::function_input_queue< T, A >::push().
|
inlineprotected |
Definition at line 145 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::reservable_item_buffer< T, A >::release_front().
|
inlineprotected |
Definition at line 144 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::reservable_item_buffer< T, A >::reserve_front().
|
inline |
Definition at line 240 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::reservable_item_buffer< T, A >::reset(), internal::function_input_base< Input, Policy, Allocator, multifunction_input< Input, internal::wrap_tuple_elements< tbb::flow::tuple_size< Output >::value, internal::multifunction_output, Output >::type, Policy, Allocator > >::reset_function_input_base(), and internal::queueing_port< T >::reset_receiver().
|
inlineprotected |
Definition at line 80 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::move_item(), internal::item_buffer< OutputTuple >::place_item(), internal::item_buffer< OutputTuple >::push_back(), and internal::item_buffer< OutputTuple >::swap_items().
|
inlineprotected |
Definition at line 152 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::buffer_full(), tbb::flow::interface11::sequencer_node< T, A >::internal_push(), and internal::item_buffer< OutputTuple >::push_back().
|
inlineprotected |
Definition at line 116 of file _flow_graph_item_buffer_impl.h.
Referenced by tbb::flow::interface11::priority_queue_node< T, Compare, A >::reheap().
|
staticprotected |
Definition at line 51 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::grow_my_array(), internal::item_buffer< OutputTuple >::item_buffer(), and internal::item_buffer< OutputTuple >::reset().
|
protected |
Definition at line 49 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::clean_up_buffer(), internal::item_buffer< OutputTuple >::grow_my_array(), and internal::item_buffer< OutputTuple >::item().
|
protected |
Definition at line 50 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::capacity(), internal::item_buffer< OutputTuple >::clean_up_buffer(), internal::item_buffer< OutputTuple >::grow_my_array(), internal::item_buffer< OutputTuple >::item(), and tbb::flow::interface11::priority_queue_node< T, Compare, A >::prio_push().
|
protected |
Definition at line 52 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::buffer_empty(), internal::item_buffer< OutputTuple >::clean_up_buffer(), internal::item_buffer< OutputTuple >::destroy_front(), internal::item_buffer< OutputTuple >::front(), internal::item_buffer< OutputTuple >::grow_my_array(), tbb::flow::interface11::queue_node< T, A >::internal_pop(), tbb::flow::interface11::sequencer_node< T, A >::internal_push(), tbb::flow::interface11::queue_node< T, A >::internal_reserve(), tbb::flow::interface11::queue_node< T, A >::is_item_valid(), internal::item_buffer< OutputTuple >::my_item_valid(), internal::item_buffer< OutputTuple >::pop_front(), internal::reservable_item_buffer< T, A >::release_front(), internal::reservable_item_buffer< T, A >::reserve_front(), and internal::item_buffer< OutputTuple >::size().
|
protected |
Definition at line 53 of file _flow_graph_item_buffer_impl.h.
Referenced by internal::item_buffer< OutputTuple >::back(), internal::item_buffer< OutputTuple >::buffer_empty(), internal::item_buffer< OutputTuple >::clean_up_buffer(), internal::item_buffer< OutputTuple >::destroy_back(), internal::item_buffer< OutputTuple >::grow_my_array(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::heapify(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::internal_pop(), tbb::flow::interface11::sequencer_node< T, A >::internal_push(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::internal_reserve(), tbb::flow::interface11::buffer_node< T, A >::is_item_valid(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::is_item_valid(), internal::item_buffer< OutputTuple >::my_item_valid(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::order(), internal::item_buffer< OutputTuple >::pop_back(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::prio(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::prio_pop(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::prio_push(), tbb::flow::interface11::priority_queue_node< T, Compare, A >::prio_use_tail(), internal::item_buffer< OutputTuple >::push_back(), and internal::item_buffer< OutputTuple >::size().