#include <concurrent_vector.h>
Inherited by tbb::concurrent_vector< T, A > [private]
.
Inheritance diagram for tbb::internal::concurrent_vector_base_v3:
Protected Types | |
typedef size_t | segment_index_t |
typedef size_t | size_type |
typedef void(* | internal_array_op1 )(void *begin, size_type n) |
An operation on an n-element array starting at begin. | |
typedef void(* | internal_array_op2 )(void *dst, const void *src, size_type n) |
An operation on n-element destination array and n-element source array. | |
enum | { default_initial_segments = 1, pointers_per_short_table = 3, pointers_per_long_table = sizeof(segment_index_t) * 8 } |
Protected Member Functions | |
void | internal_reserve (size_type n, size_type element_size, size_type max_size) |
size_type | internal_capacity () const |
void | internal_grow_to_at_least (size_type new_size, size_type element_size, internal_array_op2 init, const void *src) |
void | internal_grow (size_type start, size_type finish, size_type element_size, internal_array_op2 init, const void *src) |
size_type | internal_grow_by (size_type delta, size_type element_size, internal_array_op2 init, const void *src) |
void * | internal_push_back (size_type element_size, size_type &index) |
segment_index_t | internal_clear (internal_array_op1 destroy) |
void * | internal_compact (size_type element_size, void *table, internal_array_op1 destroy, internal_array_op2 copy) |
void | internal_copy (const concurrent_vector_base_v3 &src, size_type element_size, internal_array_op2 copy) |
void | internal_assign (const concurrent_vector_base_v3 &src, size_type element_size, internal_array_op1 destroy, internal_array_op2 assign, internal_array_op2 copy) |
void | internal_throw_exception (size_type) const |
void | internal_swap (concurrent_vector_base_v3 &v) |
Static Protected Member Functions | |
segment_index_t | segment_index_of (size_type index) |
segment_index_t | segment_base (segment_index_t k) |
segment_index_t | segment_base_index_of (segment_index_t &index) |
size_type | segment_size (segment_index_t k) |
Protected Attributes | |
void *(* | vector_allocator_ptr )(concurrent_vector_base_v3 &, size_t) |
allocator function pointer | |
atomic< size_type > | my_first_block |
count of segments in the first block | |
atomic< size_type > | my_early_size |
Requested size of vector. | |
atomic< segment_t * > | my_segment |
Pointer to the segments table. | |
segment_t | my_storage [pointers_per_short_table] |
embedded storage of segment pointers | |
Friends | |
class | helper |
|
|