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
497  {
498  return _Subatomic_impl<sizeof(_Ty)>::_CompareAndSwap(_M_value, _NewValue, _Comperand);
499  }
volatile _Ty _M_value
Definition: concrt.h:485
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::_FetchAndAdd ( _Ty  _Addend)
inline
501  {
502  return _Subatomic_impl<sizeof(_Ty)>::_FetchAndAdd(_M_value, _Addend);
503  }
volatile _Ty _M_value
Definition: concrt.h:485
template<typename _Ty>
Concurrency::details::_Subatomic< _Ty >::operator _Ty ( ) const volatile
inline
488  {
489  return _Subatomic_impl<sizeof(_Ty)>::_LoadWithAquire(_M_value);
490  }
volatile _Ty _M_value
Definition: concrt.h:485
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::operator++ ( )
inline
505  {
506  return _Subatomic_impl<sizeof(_Ty)>::_Increment(_M_value);
507  }
volatile _Ty _M_value
Definition: concrt.h:485
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::operator++ ( int  )
inline
509  {
510  return _Subatomic_impl<sizeof(_Ty)>::_Increment(_M_value) - 1;
511  }
volatile _Ty _M_value
Definition: concrt.h:485
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::operator+= ( _Ty  _Addend)
inline
521  {
522  return _FetchAndAdd(_Addend) + _Addend;
523  }
_Ty _FetchAndAdd(_Ty _Addend)
Definition: concrt.h:501
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::operator-- ( )
inline
513  {
514  return _Subatomic_impl<sizeof(_Ty)>::_Decrement(_M_value);
515  }
volatile _Ty _M_value
Definition: concrt.h:485
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::operator-- ( int  )
inline
517  {
518  return _Subatomic_impl<sizeof(_Ty)>::_Decrement(_M_value) + 1;
519  }
volatile _Ty _M_value
Definition: concrt.h:485
template<typename _Ty>
_Ty Concurrency::details::_Subatomic< _Ty >::operator= ( _Ty  _Rhs)
inline
492  {
493  _Subatomic_impl<sizeof(_Ty)>::_StoreWithRelease(_M_value, _Rhs);
494  return _Rhs;
495  }
volatile _Ty _M_value
Definition: concrt.h:485

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: