Common implementation. More...
#include <Atomic.h>
Public Member Functions | |
GAtomicImpl (const T &i) | |
Initialize with a value. | |
GAtomicImpl () | |
default constructor | |
T | operator+= (const T &rhs) |
atomic add and fetch | |
T | operator-= (const T &rhs) |
atomic sub and fetch | |
T | operator++ () |
atomic increment and fetch | |
T | operator++ (int) |
atomic fetch and increment | |
T | operator-- () |
atomic decrement and fetch | |
T | operator-- (int) |
atomic fetch and decrement | |
operator T () const | |
conversion operator to base data type | |
T & | operator= (const T &i) |
assign from underlying type | |
T & | operator= (const GAtomicImpl &i) |
assignment operator | |
bool | cas (const T &expected, const T &updated) |
direct compare and swap | |
Private Attributes | |
W< T > | val |
Common implementation.
Galois::AtomicImpl::GAtomicImpl< T, W >::GAtomicImpl | ( | const T & | i | ) | [inline, explicit] |
Initialize with a value.
Galois::AtomicImpl::GAtomicImpl< T, W >::GAtomicImpl | ( | ) | [inline] |
default constructor
bool Galois::AtomicImpl::GAtomicImpl< T, W >::cas | ( | const T & | expected, | |
const T & | updated | |||
) | [inline] |
direct compare and swap
Galois::AtomicImpl::GAtomicImpl< T, W >::operator T | ( | ) | const [inline] |
conversion operator to base data type
Reimplemented in Galois::AtomicImpl::GAtomicBase< bool, W >.
T Galois::AtomicImpl::GAtomicImpl< T, W >::operator++ | ( | int | ) | [inline] |
atomic fetch and increment
T Galois::AtomicImpl::GAtomicImpl< T, W >::operator++ | ( | ) | [inline] |
atomic increment and fetch
T Galois::AtomicImpl::GAtomicImpl< T, W >::operator+= | ( | const T & | rhs | ) | [inline] |
atomic add and fetch
T Galois::AtomicImpl::GAtomicImpl< T, W >::operator-- | ( | int | ) | [inline] |
atomic fetch and decrement
T Galois::AtomicImpl::GAtomicImpl< T, W >::operator-- | ( | ) | [inline] |
atomic decrement and fetch
T Galois::AtomicImpl::GAtomicImpl< T, W >::operator-= | ( | const T & | rhs | ) | [inline] |
atomic sub and fetch
T& Galois::AtomicImpl::GAtomicImpl< T, W >::operator= | ( | const GAtomicImpl< T, W > & | i | ) | [inline] |
assignment operator
Reimplemented in Galois::AtomicImpl::GAtomicBase< T, W >.
T& Galois::AtomicImpl::GAtomicImpl< T, W >::operator= | ( | const T & | i | ) | [inline] |
assign from underlying type
Reimplemented in Galois::AtomicImpl::GAtomicBase< T, W >, Galois::GAtomic< T >, Galois::GAtomicPadded< T >, Galois::AtomicImpl::GAtomicBase< T, AtomicImpl::DummyWrapper >, and Galois::AtomicImpl::GAtomicBase< T, Galois::Runtime::LL::CacheLineStorage >.
W<T> Galois::AtomicImpl::GAtomicImpl< T, W >::val [private] |