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

#include <base.hpp>

Public Member Functions

 base_atomic (void)
 
 base_atomic (const value_type &v)
 
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
 
bool is_lock_free (void) const volatile
 
value_type load (memory_order=memory_order_seq_cst) volatileconst
 
void store (value_type v, memory_order=memory_order_seq_cst) volatile
 

Private Types

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

char v_ [Size]
 

Detailed Description

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

Definition at line 134 of file base.hpp.

Member Typedef Documentation

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

Definition at line 138 of file base.hpp.

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

Definition at line 136 of file base.hpp.

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

Definition at line 137 of file base.hpp.

Constructor & Destructor Documentation

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

Definition at line 140 of file base.hpp.

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

Definition at line 142 of file base.hpp.

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

Member Function Documentation

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

Definition at line 166 of file base.hpp.

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

Definition at line 184 of file base.hpp.

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

Definition at line 194 of file base.hpp.

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

Definition at line 206 of file base.hpp.

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

Definition at line 156 of file base.hpp.

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

Definition at line 148 of file base.hpp.

Member Data Documentation

template<typename T, typename C, unsigned int Size, bool Sign>
char boost::detail::atomic::base_atomic< T, C, Size, Sign >::v_[Size]
private

Definition at line 216 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