Games Task Scheduler (GTS)
A multi-processor scheduling framework for games engines
gts::Atomic< T * > Class Template Reference

Atomic pointer specialization. More...

#include <Atomic.h>

Inherits gts::AtomicPointer< T * >.

Public Member Functions

 Atomic (const Atomic &)=delete
 
Atomicoperator= (const Atomic &)=delete
 
Atomicoperator= (const Atomic &) volatile=delete
 
constexpr Atomic (T *val)
 
- Public Member Functions inherited from gts::AtomicPointer< T * >
 AtomicPointer (const AtomicPointer &)=delete
 
constexpr AtomicPointer (T * val)
 
AtomicPointeroperator= (const AtomicPointer &)=delete
 
AtomicPointeroperator= (const AtomicPointer &) volatile=delete
 
T * fetch_add (ptrdiff_t rhs, gts::memory_order order)
 
T * fetch_sub (ptrdiff_t rhs, gts::memory_order order)
 
- Public Member Functions inherited from gts::AtomicCommon< T >
 AtomicCommon (const AtomicCommon &)=delete
 
AtomicCommonoperator= (const AtomicCommon &)=delete
 
AtomicCommonoperator= (const AtomicCommon &) volatile=delete
 
constexpr AtomicCommon (T val)
 
void store (T value, gts::memory_order order)
 
load (gts::memory_order order) const
 
exchange (T value, gts::memory_order order)
 
bool compare_exchange_weak (T &expected, T value, gts::memory_order xchgOrder, gts::memory_order loadOrder)
 
bool compare_exchange_strong (T &expected, T value, gts::memory_order xchgOrder, gts::memory_order loadOrder)
 

Additional Inherited Members

- Protected Attributes inherited from gts::AtomicCommon< T >
GTS_ATOMIC_TYPE< T > m_atom
 

Detailed Description

template<typename T>
class gts::Atomic< T * >

Atomic pointer specialization.