Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QBasicAtomicInteger< T > Class Template Reference

#include <qbasicatomic.h>

Inheritance diagram for QBasicAtomicInteger< T >:
Collaboration diagram for QBasicAtomicInteger< T >:

Public Types

typedef T Type
typedef QAtomicOps< T > Ops

Public Member Functions

loadRelaxed () const noexcept
void storeRelaxed (T newValue) noexcept
loadAcquire () const noexcept
void storeRelease (T newValue) noexcept
 operator T () const noexcept
operator= (T newValue) noexcept
bool ref () noexcept
bool deref () noexcept
bool testAndSetRelaxed (T expectedValue, T newValue) noexcept
bool testAndSetAcquire (T expectedValue, T newValue) noexcept
bool testAndSetRelease (T expectedValue, T newValue) noexcept
bool testAndSetOrdered (T expectedValue, T newValue) noexcept
bool testAndSetRelaxed (T expectedValue, T newValue, T &currentValue) noexcept
bool testAndSetAcquire (T expectedValue, T newValue, T &currentValue) noexcept
bool testAndSetRelease (T expectedValue, T newValue, T &currentValue) noexcept
bool testAndSetOrdered (T expectedValue, T newValue, T &currentValue) noexcept
fetchAndStoreRelaxed (T newValue) noexcept
fetchAndStoreAcquire (T newValue) noexcept
fetchAndStoreRelease (T newValue) noexcept
fetchAndStoreOrdered (T newValue) noexcept
fetchAndAddRelaxed (T valueToAdd) noexcept
fetchAndAddAcquire (T valueToAdd) noexcept
fetchAndAddRelease (T valueToAdd) noexcept
fetchAndAddOrdered (T valueToAdd) noexcept
fetchAndSubRelaxed (T valueToAdd) noexcept
fetchAndSubAcquire (T valueToAdd) noexcept
fetchAndSubRelease (T valueToAdd) noexcept
fetchAndSubOrdered (T valueToAdd) noexcept
fetchAndAndRelaxed (T valueToAdd) noexcept
fetchAndAndAcquire (T valueToAdd) noexcept
fetchAndAndRelease (T valueToAdd) noexcept
fetchAndAndOrdered (T valueToAdd) noexcept
fetchAndOrRelaxed (T valueToAdd) noexcept
fetchAndOrAcquire (T valueToAdd) noexcept
fetchAndOrRelease (T valueToAdd) noexcept
fetchAndOrOrdered (T valueToAdd) noexcept
fetchAndXorRelaxed (T valueToAdd) noexcept
fetchAndXorAcquire (T valueToAdd) noexcept
fetchAndXorRelease (T valueToAdd) noexcept
fetchAndXorOrdered (T valueToAdd) noexcept
operator++ () noexcept
operator++ (int) noexcept
operator-- () noexcept
operator-- (int) noexcept
operator+= (T v) noexcept
operator-= (T v) noexcept
operator&= (T v) noexcept
operator|= (T v) noexcept
operator^= (T v) noexcept
 QBasicAtomicInteger ()=default
constexpr QBasicAtomicInteger (T value) noexcept
 QBasicAtomicInteger (const QBasicAtomicInteger &)=delete
QBasicAtomicIntegeroperator= (const QBasicAtomicInteger &)=delete
QBasicAtomicIntegeroperator= (const QBasicAtomicInteger &) volatile =delete

Static Public Member Functions

static constexpr bool isReferenceCountingNative () noexcept
static constexpr bool isReferenceCountingWaitFree () noexcept
static constexpr bool isTestAndSetNative () noexcept
static constexpr bool isTestAndSetWaitFree () noexcept
static constexpr bool isFetchAndStoreNative () noexcept
static constexpr bool isFetchAndStoreWaitFree () noexcept
static constexpr bool isFetchAndAddNative () noexcept
static constexpr bool isFetchAndAddWaitFree () noexcept

Public Attributes

Ops::Type _q_value

Detailed Description

template<typename T>
class QBasicAtomicInteger< T >

Definition at line 24 of file qbasicatomic.h.

Member Typedef Documentation

◆ Ops

template<typename T>
typedef QAtomicOps<T> QBasicAtomicInteger< T >::Ops

Definition at line 28 of file qbasicatomic.h.

◆ Type

template<typename T>
typedef T QBasicAtomicInteger< T >::Type

Definition at line 27 of file qbasicatomic.h.

Constructor & Destructor Documentation

◆ QBasicAtomicInteger() [1/3]

template<typename T>
QBasicAtomicInteger< T >::QBasicAtomicInteger ( )
default

◆ QBasicAtomicInteger() [2/3]

template<typename T>
QBasicAtomicInteger< T >::QBasicAtomicInteger ( T value)
inlineconstexprnoexcept

Definition at line 154 of file qbasicatomic.h.

◆ QBasicAtomicInteger() [3/3]

template<typename T>
QBasicAtomicInteger< T >::QBasicAtomicInteger ( const QBasicAtomicInteger< T > & )
delete

Member Function Documentation

◆ deref()

template<typename T>
bool QBasicAtomicInteger< T >::deref ( )
inlinenoexcept

Definition at line 49 of file qbasicatomic.h.

◆ fetchAndAddAcquire()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndAddAcquire ( T valueToAdd)
inlinenoexcept

Definition at line 89 of file qbasicatomic.h.

◆ fetchAndAddOrdered()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndAddOrdered ( T valueToAdd)
inlinenoexcept

Definition at line 93 of file qbasicatomic.h.

◆ fetchAndAddRelaxed()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndAddRelaxed ( T valueToAdd)
inlinenoexcept

Definition at line 87 of file qbasicatomic.h.

◆ fetchAndAddRelease()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndAddRelease ( T valueToAdd)
inlinenoexcept

Definition at line 91 of file qbasicatomic.h.

◆ fetchAndAndAcquire()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndAndAcquire ( T valueToAdd)
inlinenoexcept

Definition at line 107 of file qbasicatomic.h.

◆ fetchAndAndOrdered()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndAndOrdered ( T valueToAdd)
inlinenoexcept

Definition at line 111 of file qbasicatomic.h.

◆ fetchAndAndRelaxed()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndAndRelaxed ( T valueToAdd)
inlinenoexcept

Definition at line 105 of file qbasicatomic.h.

◆ fetchAndAndRelease()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndAndRelease ( T valueToAdd)
inlinenoexcept

Definition at line 109 of file qbasicatomic.h.

◆ fetchAndOrAcquire()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndOrAcquire ( T valueToAdd)
inlinenoexcept

Definition at line 116 of file qbasicatomic.h.

◆ fetchAndOrOrdered()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndOrOrdered ( T valueToAdd)
inlinenoexcept

Definition at line 120 of file qbasicatomic.h.

◆ fetchAndOrRelaxed()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndOrRelaxed ( T valueToAdd)
inlinenoexcept

Definition at line 114 of file qbasicatomic.h.

◆ fetchAndOrRelease()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndOrRelease ( T valueToAdd)
inlinenoexcept

Definition at line 118 of file qbasicatomic.h.

◆ fetchAndStoreAcquire()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndStoreAcquire ( T newValue)
inlinenoexcept

Definition at line 77 of file qbasicatomic.h.

◆ fetchAndStoreOrdered()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndStoreOrdered ( T newValue)
inlinenoexcept

Definition at line 81 of file qbasicatomic.h.

◆ fetchAndStoreRelaxed()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndStoreRelaxed ( T newValue)
inlinenoexcept

Definition at line 75 of file qbasicatomic.h.

◆ fetchAndStoreRelease()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndStoreRelease ( T newValue)
inlinenoexcept

Definition at line 79 of file qbasicatomic.h.

◆ fetchAndSubAcquire()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndSubAcquire ( T valueToAdd)
inlinenoexcept

Definition at line 98 of file qbasicatomic.h.

◆ fetchAndSubOrdered()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndSubOrdered ( T valueToAdd)
inlinenoexcept

Definition at line 102 of file qbasicatomic.h.

◆ fetchAndSubRelaxed()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndSubRelaxed ( T valueToAdd)
inlinenoexcept

Definition at line 96 of file qbasicatomic.h.

◆ fetchAndSubRelease()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndSubRelease ( T valueToAdd)
inlinenoexcept

Definition at line 100 of file qbasicatomic.h.

◆ fetchAndXorAcquire()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndXorAcquire ( T valueToAdd)
inlinenoexcept

Definition at line 125 of file qbasicatomic.h.

◆ fetchAndXorOrdered()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndXorOrdered ( T valueToAdd)
inlinenoexcept

Definition at line 129 of file qbasicatomic.h.

◆ fetchAndXorRelaxed()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndXorRelaxed ( T valueToAdd)
inlinenoexcept

Definition at line 123 of file qbasicatomic.h.

◆ fetchAndXorRelease()

template<typename T>
T QBasicAtomicInteger< T >::fetchAndXorRelease ( T valueToAdd)
inlinenoexcept

Definition at line 127 of file qbasicatomic.h.

◆ isFetchAndAddNative()

template<typename T>
constexpr bool QBasicAtomicInteger< T >::isFetchAndAddNative ( )
inlinestaticconstexprnoexcept

Definition at line 84 of file qbasicatomic.h.

◆ isFetchAndAddWaitFree()

template<typename T>
constexpr bool QBasicAtomicInteger< T >::isFetchAndAddWaitFree ( )
inlinestaticconstexprnoexcept

Definition at line 85 of file qbasicatomic.h.

◆ isFetchAndStoreNative()

template<typename T>
constexpr bool QBasicAtomicInteger< T >::isFetchAndStoreNative ( )
inlinestaticconstexprnoexcept

Definition at line 72 of file qbasicatomic.h.

◆ isFetchAndStoreWaitFree()

template<typename T>
constexpr bool QBasicAtomicInteger< T >::isFetchAndStoreWaitFree ( )
inlinestaticconstexprnoexcept

Definition at line 73 of file qbasicatomic.h.

◆ isReferenceCountingNative()

template<typename T>
constexpr bool QBasicAtomicInteger< T >::isReferenceCountingNative ( )
inlinestaticconstexprnoexcept

Definition at line 45 of file qbasicatomic.h.

◆ isReferenceCountingWaitFree()

template<typename T>
constexpr bool QBasicAtomicInteger< T >::isReferenceCountingWaitFree ( )
inlinestaticconstexprnoexcept

Definition at line 46 of file qbasicatomic.h.

◆ isTestAndSetNative()

template<typename T>
constexpr bool QBasicAtomicInteger< T >::isTestAndSetNative ( )
inlinestaticconstexprnoexcept

Definition at line 51 of file qbasicatomic.h.

◆ isTestAndSetWaitFree()

template<typename T>
constexpr bool QBasicAtomicInteger< T >::isTestAndSetWaitFree ( )
inlinestaticconstexprnoexcept

Definition at line 52 of file qbasicatomic.h.

◆ loadAcquire()

template<typename T>
T QBasicAtomicInteger< T >::loadAcquire ( ) const
inlinenoexcept

Definition at line 40 of file qbasicatomic.h.

◆ loadRelaxed()

template<typename T>
T QBasicAtomicInteger< T >::loadRelaxed ( ) const
inlinenoexcept

Definition at line 37 of file qbasicatomic.h.

◆ operator T()

template<typename T>
QBasicAtomicInteger< T >::operator T ( ) const
inlinenoexcept

Definition at line 42 of file qbasicatomic.h.

◆ operator&=()

template<typename T>
T QBasicAtomicInteger< T >::operator&= ( T v)
inlinenoexcept

Definition at line 145 of file qbasicatomic.h.

◆ operator++() [1/2]

template<typename T>
T QBasicAtomicInteger< T >::operator++ ( )
inlinenoexcept

Definition at line 132 of file qbasicatomic.h.

◆ operator++() [2/2]

template<typename T>
T QBasicAtomicInteger< T >::operator++ ( int )
inlinenoexcept

Definition at line 134 of file qbasicatomic.h.

◆ operator+=()

template<typename T>
T QBasicAtomicInteger< T >::operator+= ( T v)
inlinenoexcept

Definition at line 141 of file qbasicatomic.h.

◆ operator--() [1/2]

template<typename T>
T QBasicAtomicInteger< T >::operator-- ( )
inlinenoexcept

Definition at line 136 of file qbasicatomic.h.

◆ operator--() [2/2]

template<typename T>
T QBasicAtomicInteger< T >::operator-- ( int )
inlinenoexcept

Definition at line 138 of file qbasicatomic.h.

◆ operator-=()

template<typename T>
T QBasicAtomicInteger< T >::operator-= ( T v)
inlinenoexcept

Definition at line 143 of file qbasicatomic.h.

◆ operator=() [1/3]

template<typename T>
QBasicAtomicInteger & QBasicAtomicInteger< T >::operator= ( const QBasicAtomicInteger< T > & ) volatile
delete

◆ operator=() [2/3]

template<typename T>
QBasicAtomicInteger & QBasicAtomicInteger< T >::operator= ( const QBasicAtomicInteger< T > & )
delete

◆ operator=() [3/3]

template<typename T>
T QBasicAtomicInteger< T >::operator= ( T newValue)
inlinenoexcept

Definition at line 43 of file qbasicatomic.h.

◆ operator^=()

template<typename T>
T QBasicAtomicInteger< T >::operator^= ( T v)
inlinenoexcept

Definition at line 149 of file qbasicatomic.h.

◆ operator|=()

template<typename T>
T QBasicAtomicInteger< T >::operator|= ( T v)
inlinenoexcept

Definition at line 147 of file qbasicatomic.h.

◆ ref()

template<typename T>
bool QBasicAtomicInteger< T >::ref ( )
inlinenoexcept

Definition at line 48 of file qbasicatomic.h.

◆ storeRelaxed()

template<typename T>
void QBasicAtomicInteger< T >::storeRelaxed ( T newValue)
inlinenoexcept

Definition at line 38 of file qbasicatomic.h.

◆ storeRelease()

template<typename T>
void QBasicAtomicInteger< T >::storeRelease ( T newValue)
inlinenoexcept

Definition at line 41 of file qbasicatomic.h.

◆ testAndSetAcquire() [1/2]

template<typename T>
bool QBasicAtomicInteger< T >::testAndSetAcquire ( T expectedValue,
T newValue )
inlinenoexcept

Definition at line 56 of file qbasicatomic.h.

◆ testAndSetAcquire() [2/2]

template<typename T>
bool QBasicAtomicInteger< T >::testAndSetAcquire ( T expectedValue,
T newValue,
T & currentValue )
inlinenoexcept

Definition at line 65 of file qbasicatomic.h.

◆ testAndSetOrdered() [1/2]

template<typename T>
bool QBasicAtomicInteger< T >::testAndSetOrdered ( T expectedValue,
T newValue )
inlinenoexcept

Definition at line 60 of file qbasicatomic.h.

◆ testAndSetOrdered() [2/2]

template<typename T>
bool QBasicAtomicInteger< T >::testAndSetOrdered ( T expectedValue,
T newValue,
T & currentValue )
inlinenoexcept

Definition at line 69 of file qbasicatomic.h.

◆ testAndSetRelaxed() [1/2]

template<typename T>
bool QBasicAtomicInteger< T >::testAndSetRelaxed ( T expectedValue,
T newValue )
inlinenoexcept

Definition at line 54 of file qbasicatomic.h.

◆ testAndSetRelaxed() [2/2]

template<typename T>
bool QBasicAtomicInteger< T >::testAndSetRelaxed ( T expectedValue,
T newValue,
T & currentValue )
inlinenoexcept

Definition at line 63 of file qbasicatomic.h.

◆ testAndSetRelease() [1/2]

template<typename T>
bool QBasicAtomicInteger< T >::testAndSetRelease ( T expectedValue,
T newValue )
inlinenoexcept

Definition at line 58 of file qbasicatomic.h.

◆ testAndSetRelease() [2/2]

template<typename T>
bool QBasicAtomicInteger< T >::testAndSetRelease ( T expectedValue,
T newValue,
T & currentValue )
inlinenoexcept

Definition at line 67 of file qbasicatomic.h.

Member Data Documentation

◆ _q_value

template<typename T>
Ops::Type QBasicAtomicInteger< T >::_q_value

Definition at line 33 of file qbasicatomic.h.


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