| 
    Intel(R) Threading Building Blocks Doxygen Documentation
    version 4.2.3
    
   | 
 
Base class that provides basic functionality for atomic<T> without fetch_and_add. More...
#include <atomic.h>
Classes | |
| union | converter | 
| Union type used to convert type T to underlying integral type.  More... | |
| union | ptr_converter | 
| union | ptr_converter< value_t * > | 
Public Types | |
| typedef T | value_type | 
Public Member Functions | |
| atomic_impl ()=default | |
| constexpr | atomic_impl (value_type value) | 
| template<memory_semantics M> | |
| value_type | fetch_and_store (value_type value) | 
| value_type | fetch_and_store (value_type value) | 
| template<memory_semantics M> | |
| value_type | compare_and_swap (value_type value, value_type comparand) | 
| value_type | compare_and_swap (value_type value, value_type comparand) | 
| operator value_type () const volatile | |
| template<memory_semantics M> | |
| value_type | load () const | 
| value_type | load () const | 
| template<memory_semantics M> | |
| void | store (value_type value) | 
| void | store (value_type value) | 
Protected Member Functions | |
| value_type | store_with_release (value_type rhs) | 
Protected Attributes | |
| aligned_storage< T, sizeof(T)> | my_storage | 
Static Private Member Functions | |
| template<typename value_t > | |
| static converter< value_t >::bits_type | to_bits (value_t value) | 
| template<typename value_t > | |
| static value_t | to_value (typename converter< value_t >::bits_type bits) | 
| template<typename value_t > | |
| static converter< value_t >::bits_type & | to_bits_ref (value_t &value) | 
Base class that provides basic functionality for atomic<T> without fetch_and_add.
Works for any type T that has the same size as an integral type, has a trivial constructor/destructor, and can be copied/compared by memcpy/memcmp.
| typedef T tbb::internal::atomic_impl< T >::value_type | 
      
  | 
  default | 
      
  | 
  inline | 
Definition at line 285 of file atomic.h.
      
  | 
  inline | 
Definition at line 299 of file atomic.h.
Referenced by tbb::internal::atomic_impl< I >::compare_and_swap().
      
  | 
  inline | 
Definition at line 305 of file atomic.h.
      
  | 
  inline | 
Definition at line 288 of file atomic.h.
Referenced by tbb::internal::atomic_impl< I >::fetch_and_store().
      
  | 
  inline | 
Definition at line 294 of file atomic.h.
      
  | 
  inline | 
Definition at line 316 of file atomic.h.
      
  | 
  inline | 
      
  | 
  inline | 
Definition at line 309 of file atomic.h.
      
  | 
  inline | 
Definition at line 327 of file atomic.h.
      
  | 
  inline | 
Definition at line 331 of file atomic.h.
      
  | 
  inlineprotected | 
Definition at line 336 of file atomic.h.
      
  | 
  inlinestaticprivate | 
Definition at line 246 of file atomic.h.
Referenced by tbb::internal::atomic_impl< I >::compare_and_swap(), tbb::internal::atomic_impl< I >::fetch_and_store(), tbb::internal::atomic_impl< I >::store(), and tbb::internal::atomic_impl< I >::store_with_release().
      
  | 
  inlinestaticprivate | 
Definition at line 269 of file atomic.h.
Referenced by tbb::internal::atomic_impl< I >::load(), tbb::internal::atomic_impl< I >::operator value_type(), tbb::internal::atomic_impl< I >::store(), and tbb::internal::atomic_impl< I >::store_with_release().
      
  | 
  inlinestaticprivate | 
      
  | 
  protected | 
Definition at line 232 of file atomic.h.
Referenced by tbb::internal::atomic_impl< I >::compare_and_swap(), tbb::internal::atomic_impl< I >::fetch_and_store(), tbb::internal::atomic_impl< I >::load(), tbb::internal::atomic_impl< I >::operator value_type(), tbb::internal::atomic_impl< I >::store(), and tbb::internal::atomic_impl< I >::store_with_release().