STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Attributes | List of all members
Concurrency::details::_Subatomic< _Ty > Class Template Reference

#include <concrt.h>

Public Member Functions

 operator _Ty () const volatile
 
_Ty operator= (_Ty _Rhs)
 
_Ty _CompareAndSwap (_Ty _NewValue, _Ty _Comperand)
 
_Ty _FetchAndAdd (_Ty _Addend)
 
_Ty operator++ ()
 
_Ty operator++ (int)
 
_Ty operator-- ()
 
_Ty operator-- (int)
 
_Ty operator+= (_Ty _Addend)
 

Private Attributes

volatile _Ty _M_value
 

Member Function Documentation

template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::_CompareAndSwap ( _Ty  _NewValue,
_Ty  _Comperand 
)
inline
511  {
512  return _Subatomic_impl<sizeof(_Ty)>::_CompareAndSwap(_M_value, _NewValue, _Comperand);
513  }
volatile _Ty _M_value
Definition: concrt.h:499
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::_FetchAndAdd ( _Ty  _Addend)
inline
515  {
516  return _Subatomic_impl<sizeof(_Ty)>::_FetchAndAdd(_M_value, _Addend);
517  }
volatile _Ty _M_value
Definition: concrt.h:499
template<typename _Ty>
Concurrency::details::_Subatomic< _Ty >::operator _Ty ( ) const volatile
inline
502  {
503  return _Subatomic_impl<sizeof(_Ty)>::_LoadWithAquire(_M_value);
504  }
volatile _Ty _M_value
Definition: concrt.h:499
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::operator++ ( )
inline
519  {
520  return _Subatomic_impl<sizeof(_Ty)>::_Increment(_M_value);
521  }
volatile _Ty _M_value
Definition: concrt.h:499
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::operator++ ( int  )
inline
523  {
524  return _Subatomic_impl<sizeof(_Ty)>::_Increment(_M_value) - 1;
525  }
volatile _Ty _M_value
Definition: concrt.h:499
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::operator+= ( _Ty  _Addend)
inline
535  {
536  return _FetchAndAdd(_Addend) + _Addend;
537  }
_Ty _FetchAndAdd(_Ty _Addend)
Definition: concrt.h:515
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::operator-- ( )
inline
527  {
528  return _Subatomic_impl<sizeof(_Ty)>::_Decrement(_M_value);
529  }
volatile _Ty _M_value
Definition: concrt.h:499
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::operator-- ( int  )
inline
531  {
532  return _Subatomic_impl<sizeof(_Ty)>::_Decrement(_M_value) + 1;
533  }
volatile _Ty _M_value
Definition: concrt.h:499
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::operator= ( _Ty  _Rhs)
inline
506  {
507  _Subatomic_impl<sizeof(_Ty)>::_StoreWithRelease(_M_value, _Rhs);
508  return _Rhs;
509  }
volatile _Ty _M_value
Definition: concrt.h:499

Member Data Documentation

template<typename _Ty>
volatile _Ty Concurrency::details::_Subatomic< _Ty >::_M_value
private

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