61 this->_q_lock[0] = this->_q_lock[1] = this->_q_lock[2] = this->_q_lock[3] = -1;
68 this->_q_lock[0] = this->_q_lock[1] = this->_q_lock[2] = this->_q_lock[3] = -1;
75 (
void) QBasicAtomicInt::operator=(value);
81 (
void) QBasicAtomicInt::operator=(other);
88 bool operator!()
const;
91 static bool isReferenceCountingNative();
92 static bool isReferenceCountingWaitFree();
97 static bool isTestAndSetNative();
98 static bool isTestAndSetWaitFree();
100 bool testAndSetRelaxed(
int expectedValue,
int newValue);
101 bool testAndSetAcquire(
int expectedValue,
int newValue);
102 bool testAndSetRelease(
int expectedValue,
int newValue);
103 bool testAndSetOrdered(
int expectedValue,
int newValue);
105 static bool isFetchAndStoreNative();
106 static bool isFetchAndStoreWaitFree();
108 int fetchAndStoreRelaxed(
int newValue);
109 int fetchAndStoreAcquire(
int newValue);
110 int fetchAndStoreRelease(
int newValue);
111 int fetchAndStoreOrdered(
int newValue);
113 static bool isFetchAndAddNative();
114 static bool isFetchAndAddWaitFree();
116 int fetchAndAddRelaxed(
int valueToAdd);
117 int fetchAndAddAcquire(
int valueToAdd);
118 int fetchAndAddRelease(
int valueToAdd);
119 int fetchAndAddOrdered(
int valueToAdd);
124 template <
typename T>
130 #ifdef QT_ARCH_PARISC
131 this->_q_lock[0] = this->_q_lock[1] = this->_q_lock[2] = this->_q_lock[3] = -1;
137 #ifdef QT_ARCH_PARISC
138 this->_q_lock[0] = this->_q_lock[1] = this->_q_lock[2] = this->_q_lock[3] = -1;
159 operator T *()
const;
194 template <
typename T>
213 template <
typename T>
void qAtomicDetach(T *&d)
This is a helper for the detach method of implicitly shared classes.
unsigned int(APIENTRYP PFNGLXGETAGPOFFSETMESAPROC)(const void *pointer)
T * fetchAndAddAcquire(qptrdiff valueToAdd)
T * fetchAndAddOrdered(qptrdiff valueToAdd)
typedef void(APIENTRYP PFNGLBLENDCOLORPROC)(GLclampf red
T * fetchAndStoreAcquire(T *newValue)
T * fetchAndAddRelease(qptrdiff valueToAdd)
QAtomicPointer< T > & operator=(const QAtomicPointer< T > &other)
QAtomicInt & operator=(const QAtomicInt &other)
QAtomicPointer(const QAtomicPointer< T > &other)
T * fetchAndAddRelaxed(qptrdiff valueToAdd)
static bool isFetchAndAddNative()
bool testAndSetOrdered(T *expectedValue, T *newValue)
QAtomicInt(const QAtomicInt &other)
bool operator==(const Attribute &cA, const AttributeInstance< type > &cB)
This operator compares the two attributes and NOT their values.
static bool isFetchAndStoreNative()
#define QT_BEGIN_NAMESPACE
static bool isTestAndSetNative()
T * fetchAndStoreRelaxed(T *newValue)
bool operator==(T *value) const
static bool isFetchAndAddWaitFree()
bool operator!=(T *value) const
QAtomicPointer< T > & operator=(T *value)
QAtomicInt & operator=(int value)
T * fetchAndStoreRelease(T *newValue)
bool testAndSetRelease(T *expectedValue, T *newValue)
bool operator!=(const QByteArray &a1, const QByteArray &a2)
static bool isFetchAndStoreWaitFree()
GLsizei const GLfloat * value
bool testAndSetAcquire(T *expectedValue, T *newValue)
void qAtomicAssign(T *&d, T *x)
This is a helper for the assignment operators of implicitly shared classes.
T * fetchAndStoreOrdered(T *newValue)
bool testAndSetRelaxed(T *expectedValue, T *newValue)
static bool isTestAndSetWaitFree()
QAtomicPointer(T *value=0)