Intel(R) Threading Building Blocks Doxygen Documentation
version 4.2.3
|
Go to the documentation of this file.
17 #ifndef __TBB_node_handle_H
18 #define __TBB_node_handle_H
21 #include "../tbb_config.h"
28 namespace interface5 {
30 template <
typename T,
typename Allocator>
31 class split_ordered_list;
32 template <
typename Traits>
33 class concurrent_unordered_base;
37 namespace interface10{
39 template<
typename Traits>
40 class concurrent_skip_list;
46 template<
typename Value,
typename Node,
typename Allocator>
62 explicit operator bool()
const {
return my_node != NULL; }
92 node_allocator.deallocate(
my_node, 1);
103 template<
typename Key,
typename Value,
typename Node,
typename Allocator>
115 return *
const_cast<key_type*
>(&(this->
my_node->value().first));
119 __TBB_ASSERT(!this->
empty(),
"Cannot get mapped value from the empty node_type object");
120 return this->
my_node->value().second;
124 template<
typename T,
typename A>
127 template<
typename Traits>
130 template<
typename Traits>
137 template<
typename Key,
typename Node,
typename Allocator>
147 __TBB_ASSERT(!this->
empty(),
"Cannot get value from the empty node_type object");
148 return *
const_cast<value_type*
>(&(this->
my_node->value()));
152 template<
typename T,
typename A>
155 template<
typename Traits>
158 template<
typename Traits>
base_type::allocator_type allocator_type
node_handle(typename base_type::node *n)
node_handle(typename base_type::node *n)
node_handle_base(node_handle_base &&nh)
#define __TBB_ASSERT(predicate, comment)
No-op version of __TBB_ASSERT.
void allocator_move_assignment(MyAlloc &my_allocator, OtherAlloc &other_allocator, traits_true_type)
static void destroy(allocator_type &, T *p)
void allocator_swap(MyAlloc &my_allocator, OtherAlloc &other_allocator, traits_true_type)
void swap(atomic< T > &lhs, atomic< T > &rhs)
node_handle_base(node *n)
base_type::allocator_type allocator_type
allocator_type my_allocator
tbb::internal::allocator_traits< allocator_type > traits_type
node_handle_base & operator=(node_handle_base &&nh)
void swap(node_handle_base &nh)
void move(tbb_thread &t1, tbb_thread &t2)
node_handle_base< Value, Node, Allocator > base_type
mapped_type & mapped() const
value_type & value() const
node_handle_base< Key, Node, Allocator > base_type
allocator_type get_allocator() const
allocator_traits< Alloc >::template rebind_alloc< T >::other type
Value::second_type mapped_type
Copyright © 2005-2020 Intel Corporation. All Rights Reserved.
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are
registered trademarks or trademarks of Intel Corporation or its
subsidiaries in the United States and other countries.
* Other names and brands may be claimed as the property of others.