21 #define XSATOMICINT_INITIALIZER \ 30 #define atomicIncrement(a) InterlockedIncrement64(&a) 31 #define atomicDecrement(a) InterlockedDecrement64(&a) 33 #define atomicIncrement(a) InterlockedIncrement(&a) 34 #define atomicDecrement(a) InterlockedDecrement(&a) 38 #define atomicIncrement(a) __sync_add_and_fetch(&a, 1) 39 #define atomicDecrement(a) __sync_sub_and_fetch(&a, 1) 41 #define atomicIncrement(a) (++a) 42 #define atomicDecrement(a) (--a) 48 #define XsAtomicInt_preIncrement(a) \ 49 ((XsAtomicIntValue)atomicIncrement((a)->m_value)) 53 #define XsAtomicInt_preDecrement(a) \ 54 ((XsAtomicIntValue)atomicDecrement((a)->m_value)) 58 #define XsAtomicInt_postIncrement(a) \ 59 ((XsAtomicIntValue)atomicIncrement((a)->m_value) - 1) 63 #define XsAtomicInt_postDecrement(a) \ 64 ((XsAtomicIntValue)atomicDecrement((a)->m_value) + 1) 105 #endif // __cplusplus Wrapper class for easy use of XsAtomicIntValue values.
volatile XsAtomicIntValue m_value
The actual value.
#define XsAtomicInt_preDecrement(a)
Decrease the value by one unit (prefix notation).
GLsizei const GLfloat * value
iterator operator++(int)
A thread-safe (ts) container which minimally emulates a std::map<>'s [] and find() methods but which ...
#define XsAtomicInt_postIncrement(a)
Increase the value by one unit (postfix notation).
#define XsAtomicInt_preIncrement(a)
Increase the value by one unit (prefix notation).
#define XsAtomicInt_postDecrement(a)
Decrease the value by one unit (postfix notation).
struct XsAtomicInt XsAtomicInt