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
#define __TBB_ASSERT(predicate, comment)
No-op version of __TBB_ASSERT.
allocator_type my_allocator
void move(tbb_thread &t1, tbb_thread &t2)
Value::second_type mapped_type
node_handle(typename base_type::node *n)
void swap(node_handle_base &nh)
node_handle_base< Value, Node, Allocator > base_type
node_handle_base< Key, Node, Allocator > base_type
node_handle_base & operator=(node_handle_base &&nh)
allocator_traits< Alloc >::template rebind_alloc< T >::other type
static void destroy(allocator_type &, T *p)
node_handle_base(node *n)
void allocator_move_assignment(MyAlloc &my_allocator, OtherAlloc &other_allocator, traits_true_type)
value_type & value() const
void allocator_swap(MyAlloc &my_allocator, OtherAlloc &other_allocator, traits_true_type)
void swap(atomic< T > &lhs, atomic< T > &rhs)
base_type::allocator_type allocator_type
mapped_type & mapped() const
allocator_type get_allocator() const
tbb::internal::allocator_traits< allocator_type > traits_type
node_handle(typename base_type::node *n)
node_handle_base(node_handle_base &&nh)
Copyright © 2005-2019 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.