8#include <QtCore/qbasicatomic.h>
26 this->storeRelease(
other.loadAcquire());
31 this->storeRelease(
other.loadAcquire());
36 T loadRelaxed()
const;
37 T loadAcquire()
const;
38 void storeRelaxed(T newValue);
39 void storeRelease(T newValue);
44 static constexpr bool isReferenceCountingNative();
45 static constexpr bool isReferenceCountingWaitFree();
50 static constexpr bool isTestAndSetNative();
51 static constexpr bool isTestAndSetWaitFree();
53 bool testAndSetRelaxed(T expectedValue, T newValue);
54 bool testAndSetAcquire(T expectedValue, T newValue);
55 bool testAndSetRelease(T expectedValue, T newValue);
56 bool testAndSetOrdered(T expectedValue, T newValue);
58 bool testAndSetRelaxed(T expectedValue, T newValue, T &
currentValue);
59 bool testAndSetAcquire(T expectedValue, T newValue, T &
currentValue);
60 bool testAndSetRelease(T expectedValue, T newValue, T &
currentValue);
61 bool testAndSetOrdered(T expectedValue, T newValue, T &
currentValue);
63 static constexpr bool isFetchAndStoreNative();
64 static constexpr bool isFetchAndStoreWaitFree();
66 T fetchAndStoreRelaxed(T newValue);
67 T fetchAndStoreAcquire(T newValue);
68 T fetchAndStoreRelease(T newValue);
69 T fetchAndStoreOrdered(T newValue);
71 static constexpr bool isFetchAndAddNative();
72 static constexpr bool isFetchAndAddWaitFree();
74 T fetchAndAddRelaxed(T valueToAdd);
75 T fetchAndAddAcquire(T valueToAdd);
76 T fetchAndAddRelease(T valueToAdd);
77 T fetchAndAddOrdered(T valueToAdd);
79 T fetchAndSubRelaxed(T valueToSub);
80 T fetchAndSubAcquire(T valueToSub);
81 T fetchAndSubRelease(T valueToSub);
82 T fetchAndSubOrdered(T valueToSub);
84 T fetchAndOrRelaxed(T valueToOr);
85 T fetchAndOrAcquire(T valueToOr);
86 T fetchAndOrRelease(T valueToOr);
87 T fetchAndOrOrdered(T valueToOr);
89 T fetchAndAndRelaxed(T valueToAnd);
90 T fetchAndAndAcquire(T valueToAnd);
91 T fetchAndAndRelease(T valueToAnd);
92 T fetchAndAndOrdered(T valueToAnd);
94 T fetchAndXorRelaxed(T valueToXor);
95 T fetchAndXorAcquire(T valueToXor);
96 T fetchAndXorRelease(T valueToXor);
97 T fetchAndXorOrdered(T valueToXor);
104 T operator-=(T
value);
106 T operator&=(T
value);
107 T operator^=(T
value);
201 if (
d->ref.loadRelaxed() == 1)
constexpr QAtomicInt(int value=0) noexcept
Constructs a QAtomicInt with the given value.
QAtomicInteger & operator=(const QAtomicInteger &other) noexcept
Assigns other to this QAtomicInteger and returns a reference to this QAtomicInteger.
QAtomicInteger(const QAtomicInteger &other) noexcept
Constructs a copy of other.
constexpr QAtomicInteger(T value=0) noexcept
Constructs a QAtomicInteger with the given value.
\macro Q_ATOMIC_INTnn_IS_SUPPORTED
QAtomicPointer(const QAtomicPointer< T > &other) noexcept
Constructs a copy of other.
constexpr QAtomicPointer(T *value=nullptr) noexcept
Constructs a QAtomicPointer with the given value.
QAtomicPointer< T > & operator=(const QAtomicPointer< T > &other) noexcept
Assigns other to this QAtomicPointer and returns a reference to this QAtomicPointer.
Type fetchAndAddOrdered(qptrdiff valueToAdd) noexcept
bool testAndSetRelaxed(Type expectedValue, Type newValue) noexcept
Type fetchAndStoreAcquire(Type newValue) noexcept
Type fetchAndStoreRelease(Type newValue) noexcept
static constexpr bool isFetchAndAddNative() noexcept
bool testAndSetRelease(Type expectedValue, Type newValue) noexcept
Type fetchAndStoreOrdered(Type newValue) noexcept
bool testAndSetAcquire(Type expectedValue, Type newValue) noexcept
Type loadAcquire() const noexcept
static constexpr bool isFetchAndAddWaitFree() noexcept
bool testAndSetOrdered(Type expectedValue, Type newValue) noexcept
static constexpr bool isTestAndSetNative() noexcept
Type loadRelaxed() const noexcept
static constexpr bool isFetchAndStoreWaitFree() noexcept
void storeRelaxed(Type newValue) noexcept
Type fetchAndAddRelaxed(qptrdiff valueToAdd) noexcept
void storeRelease(Type newValue) noexcept
Type fetchAndAddRelease(qptrdiff valueToAdd) noexcept
static constexpr bool isTestAndSetWaitFree() noexcept
Type fetchAndAddAcquire(qptrdiff valueToAdd) noexcept
Type fetchAndStoreRelaxed(Type newValue) noexcept
static constexpr bool isFetchAndStoreNative() noexcept
Combined button and popup list for selecting options.
QT_WARNING_POP void qAtomicAssign(T *&d, T *x)
This is a helper for the assignment operators of implicitly shared classes.
void qAtomicDetach(T *&d)
This is a helper for the detach method of implicitly shared classes.
#define QT_WARNING_DISABLE_GCC(text)
constexpr timespec & operator+=(timespec &t1, const timespec &t2)
EGLOutputLayerEXT EGLint EGLAttrib value
[5]
GLint GLint GLint GLint GLint x
[0]
QUrl::FormattingOptions & operator|=(QUrl::FormattingOptions &i, QUrl::ComponentFormattingOptions f)