Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
boost::detail::atomic::base_atomic< T, int, Size, Sign > Class Template Reference

#include <base.hpp>

Public Member Functions

 base_atomic (value_type v)
 
 base_atomic (void)
 
bool compare_exchange_strong (value_type &expected, value_type desired, memory_order, memory_order) volatile
 
bool compare_exchange_weak (value_type &expected, value_type desired, memory_order success_order, memory_order failure_order) volatile
 
value_type exchange (value_type v, memory_order=memory_order_seq_cst) volatile
 
value_type fetch_add (difference_type v, memory_order=memory_order_seq_cst) volatile
 
value_type fetch_and (value_type v, memory_order=memory_order_seq_cst) volatile
 
value_type fetch_or (value_type v, memory_order=memory_order_seq_cst) volatile
 
value_type fetch_sub (difference_type v, memory_order=memory_order_seq_cst) volatile
 
value_type fetch_xor (value_type v, memory_order=memory_order_seq_cst) volatile
 
bool is_lock_free (void) const volatile
 
value_type load (memory_order=memory_order_seq_cst) const volatile
 
void store (value_type v, memory_order=memory_order_seq_cst) volatile
 

Private Types

typedef T difference_type
 
typedef detail::spinlock_pool< 0 >::scoped_lock guard_type
 
typedef base_atomic this_type
 
typedef T value_type
 

Private Member Functions

 base_atomic (const base_atomic &)
 
void operator= (const base_atomic &)
 

Private Attributes

value_type v_
 

Detailed Description

template<typename T, unsigned int Size, bool Sign>
class boost::detail::atomic::base_atomic< T, int, Size, Sign >

Definition at line 220 of file base.hpp.

Member Typedef Documentation

template<typename T , unsigned int Size, bool Sign>
typedef T boost::detail::atomic::base_atomic< T, int, Size, Sign >::difference_type
private

Definition at line 224 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
typedef detail::spinlock_pool<0>::scoped_lock boost::detail::atomic::base_atomic< T, int, Size, Sign >::guard_type
private

Definition at line 225 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
typedef base_atomic boost::detail::atomic::base_atomic< T, int, Size, Sign >::this_type
private

Definition at line 222 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
typedef T boost::detail::atomic::base_atomic< T, int, Size, Sign >::value_type
private

Definition at line 223 of file base.hpp.

Constructor & Destructor Documentation

template<typename T , unsigned int Size, bool Sign>
boost::detail::atomic::base_atomic< T, int, Size, Sign >::base_atomic ( value_type  v)
inlineexplicit

Definition at line 227 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
boost::detail::atomic::base_atomic< T, int, Size, Sign >::base_atomic ( void  )
inline

Definition at line 228 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
boost::detail::atomic::base_atomic< T, int, Size, Sign >::base_atomic ( const base_atomic< T, int, Size, Sign > &  )
private

Member Function Documentation

template<typename T , unsigned int Size, bool Sign>
bool boost::detail::atomic::base_atomic< T, int, Size, Sign >::compare_exchange_strong ( value_type expected,
value_type  desired,
memory_order  ,
memory_order   
) volatile
inline

Definition at line 258 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
bool boost::detail::atomic::base_atomic< T, int, Size, Sign >::compare_exchange_weak ( value_type expected,
value_type  desired,
memory_order  success_order,
memory_order  failure_order 
) volatile
inline

Definition at line 274 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
value_type boost::detail::atomic::base_atomic< T, int, Size, Sign >::exchange ( value_type  v,
memory_order  = memory_order_seq_cst 
) volatile
inline

Definition at line 248 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
value_type boost::detail::atomic::base_atomic< T, int, Size, Sign >::fetch_add ( difference_type  v,
memory_order  = memory_order_seq_cst 
) volatile
inline

Definition at line 282 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
value_type boost::detail::atomic::base_atomic< T, int, Size, Sign >::fetch_and ( value_type  v,
memory_order  = memory_order_seq_cst 
) volatile
inline

Definition at line 302 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
value_type boost::detail::atomic::base_atomic< T, int, Size, Sign >::fetch_or ( value_type  v,
memory_order  = memory_order_seq_cst 
) volatile
inline

Definition at line 312 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
value_type boost::detail::atomic::base_atomic< T, int, Size, Sign >::fetch_sub ( difference_type  v,
memory_order  = memory_order_seq_cst 
) volatile
inline

Definition at line 292 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
value_type boost::detail::atomic::base_atomic< T, int, Size, Sign >::fetch_xor ( value_type  v,
memory_order  = memory_order_seq_cst 
) volatile
inline

Definition at line 322 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
bool boost::detail::atomic::base_atomic< T, int, Size, Sign >::is_lock_free ( void  ) const volatile
inline

Definition at line 332 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
value_type boost::detail::atomic::base_atomic< T, int, Size, Sign >::load ( memory_order  = memory_order_seq_cst) const volatile
inline

Definition at line 239 of file base.hpp.

template<typename T , unsigned int Size, bool Sign>
void boost::detail::atomic::base_atomic< T, int, Size, Sign >::operator= ( const base_atomic< T, int, Size, Sign > &  )
private
template<typename T , unsigned int Size, bool Sign>
void boost::detail::atomic::base_atomic< T, int, Size, Sign >::store ( value_type  v,
memory_order  = memory_order_seq_cst 
) volatile
inline

Definition at line 231 of file base.hpp.

Member Data Documentation

template<typename T , unsigned int Size, bool Sign>
value_type boost::detail::atomic::base_atomic< T, int, Size, Sign >::v_
private

Definition at line 341 of file base.hpp.


The documentation for this class was generated from the following file:


rosatomic
Author(s): Josh Faust
autogenerated on Fri Apr 5 2019 02:16:35