17 static plInt32 Read(
const plInt32& iSrc);
20 static plInt64 Read(
const plInt64& iSrc);
23 static plInt32 Increment(plInt32& ref_iDest);
26 static plInt64 Increment(plInt64& ref_iDest);
29 static plInt32 Decrement(plInt32& ref_iDest);
32 static plInt64 Decrement(plInt64& ref_iDest);
35 static plInt32 PostIncrement(plInt32& ref_iDest);
38 static plInt64 PostIncrement(plInt64& ref_iDest);
41 static plInt32 PostDecrement(plInt32& ref_iDest);
44 static plInt64 PostDecrement(plInt64& ref_iDest);
47 static void Add(plInt32& ref_iDest, plInt32 value);
50 static void Add(plInt64& ref_iDest, plInt64 value);
53 static void And(plInt32& ref_iDest, plInt32 value);
56 static void And(plInt64& ref_iDest, plInt64 value);
59 static void Or(plInt32& ref_iDest, plInt32 value);
62 static void Or(plInt64& ref_iDest, plInt64 value);
65 static void Xor(plInt32& ref_iDest, plInt32 value);
68 static void Xor(plInt64& ref_iDest, plInt64 value);
71 static void Min(plInt32& ref_iDest, plInt32 value);
74 static void Min(plInt64& ref_iDest, plInt64 value);
77 static void Max(plInt32& ref_iDest, plInt32 value);
80 static void Max(plInt64& ref_iDest, plInt64 value);
83 static plInt32 Set(plInt32& ref_iDest, plInt32 value);
86 static plInt64 Set(plInt64& ref_iDest, plInt64 value);
90 static bool TestAndSet(plInt32& ref_iDest, plInt32 iExpected, plInt32 value);
94 static bool TestAndSet(plInt64& ref_iDest, plInt64 iExpected, plInt64 value);
98 static bool TestAndSet(
void** pDest,
void* pExpected,
void* value);
102 static plInt32 CompareAndSwap(plInt32& ref_iDest, plInt32 iExpected, plInt32 value);
106 static plInt64 CompareAndSwap(plInt64& ref_iDest, plInt64 iExpected, plInt64 value);