Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
Range class used with concurrent_hash_map. More...
#include <concurrent_hash_map.h>
Public Types | |
typedef std::size_t | size_type |
Type for size of a range. More... | |
typedef Iterator::value_type | value_type |
typedef Iterator::reference | reference |
typedef Iterator::difference_type | difference_type |
typedef Iterator | iterator |
Public Member Functions | |
bool | empty () const |
True if range is empty. More... | |
bool | is_divisible () const |
True if range can be partitioned into two subranges. More... | |
hash_map_range (hash_map_range &r, split) | |
Split range. More... | |
template<typename U > | |
hash_map_range (hash_map_range< U > &r) | |
type conversion More... | |
hash_map_range (const map_type &map, size_type grainsize_=1) | |
Init range with container and grainsize specified. More... | |
const Iterator & | begin () const |
const Iterator & | end () const |
size_type | grainsize () const |
The grain size for this range. More... | |
Private Types | |
typedef Iterator::map_type | map_type |
Private Member Functions | |
void | set_midpoint () const |
Set my_midpoint to point approximately half way between my_begin and my_end. More... | |
Private Attributes | |
Iterator | my_begin |
Iterator | my_end |
Iterator | my_midpoint |
size_t | my_grainsize |
Friends | |
template<typename U > | |
class | hash_map_range |
Range class used with concurrent_hash_map.
Definition at line 340 of file concurrent_hash_map.h.
typedef Iterator::difference_type tbb::interface5::internal::hash_map_range< Iterator >::difference_type |
Definition at line 482 of file concurrent_hash_map.h.
typedef Iterator tbb::interface5::internal::hash_map_range< Iterator >::iterator |
Definition at line 483 of file concurrent_hash_map.h.
|
private |
Definition at line 469 of file concurrent_hash_map.h.
typedef Iterator::reference tbb::interface5::internal::hash_map_range< Iterator >::reference |
Definition at line 481 of file concurrent_hash_map.h.
typedef std::size_t tbb::interface5::internal::hash_map_range< Iterator >::size_type |
Type for size of a range.
Definition at line 479 of file concurrent_hash_map.h.
typedef Iterator::value_type tbb::interface5::internal::hash_map_range< Iterator >::value_type |
Definition at line 480 of file concurrent_hash_map.h.
|
inline |
Split range.
Definition at line 493 of file concurrent_hash_map.h.
References __TBB_ASSERT, tbb::interface5::internal::hash_map_range< Iterator >::empty(), tbb::interface5::internal::hash_map_range< Iterator >::my_begin, and tbb::interface5::internal::hash_map_range< Iterator >::set_midpoint().
|
inline |
type conversion
Definition at line 505 of file concurrent_hash_map.h.
|
inline |
Init range with container and grainsize specified.
Definition at line 512 of file concurrent_hash_map.h.
References __TBB_ASSERT, and tbb::interface5::internal::hash_map_range< Iterator >::set_midpoint().
|
inline |
Definition at line 520 of file concurrent_hash_map.h.
References tbb::interface5::internal::hash_map_range< Iterator >::my_begin.
|
inline |
True if range is empty.
Definition at line 486 of file concurrent_hash_map.h.
References tbb::interface5::internal::hash_map_range< Iterator >::my_begin, and tbb::interface5::internal::hash_map_range< Iterator >::my_end.
Referenced by tbb::interface5::internal::hash_map_range< Iterator >::hash_map_range().
|
inline |
Definition at line 521 of file concurrent_hash_map.h.
References tbb::interface5::internal::hash_map_range< Iterator >::my_end.
|
inline |
The grain size for this range.
Definition at line 523 of file concurrent_hash_map.h.
References tbb::interface5::internal::hash_map_range< Iterator >::my_grainsize.
|
inline |
True if range can be partitioned into two subranges.
Definition at line 489 of file concurrent_hash_map.h.
References tbb::interface5::internal::hash_map_range< Iterator >::my_end, and tbb::interface5::internal::hash_map_range< Iterator >::my_midpoint.
|
private |
Set my_midpoint to point approximately half way between my_begin and my_end.
Definition at line 527 of file concurrent_hash_map.h.
References __TBB_ASSERT, and tbb::interface5::internal::hash_map_base::bucket::node_list.
Referenced by tbb::interface5::internal::hash_map_range< Iterator >::hash_map_range().
Definition at line 476 of file concurrent_hash_map.h.
|
private |
|
private |
|
private |
Definition at line 473 of file concurrent_hash_map.h.
Referenced by tbb::interface5::internal::hash_map_range< Iterator >::grainsize().
|
mutableprivate |
Definition at line 472 of file concurrent_hash_map.h.
Referenced by tbb::interface5::internal::hash_map_range< Iterator >::is_divisible().