Atomic implementation for OpenMP. More...
#include <openMPAtomic.hpp>

Public Types | |
| using | Type = T_Type |
| See OpenMPAtomicImpl. | |
Public Types inherited from codi::AtomicInterface< T_Type, OpenMPAtomicImpl< T_Type, void > > | |
| using | Impl |
| See AtomicInterface. | |
| using | Type |
| See AtomicInterface. | |
Public Member Functions | |
| OpenMPAtomicImpl ()=delete | |
| Constructor is deleted, will throw errors for unspecialized instantiations. | |
Public Member Functions inherited from codi::AtomicInterface< T_Type, OpenMPAtomicImpl< T_Type, void > > | |
| inlineAtomicInterface () | |
| Constructor. | |
| inlineAtomicInterface (AtomicInterface const &) | |
| Constructor. | |
| inlineAtomicInterface (Type const &) | |
| Constructor. | |
| inlineType | operator++ () |
| Pre-increment operator. | |
| inlineType | operator++ (int) |
| Post-increment operator. | |
| inlineType | operator+= (Impl const &other) |
| Incremental update with implementing type as rhs. | |
| inlineType | operator+= (Type const &other) |
| Incremental update with underlying type as rhs. | |
| inlineType | operator-- () |
| Pre-decrement operator. | |
| inlineType | operator-- (int) |
| Post-decrement operator. | |
| inlineImpl & | operator= (Impl const &other) |
| Assignment operator with implementing type as rhs. | |
| inlineImpl & | operator= (Type const &other) |
| Assignment operator with underlying type as rhs. | |
| inlineoperator | Type () const |
| Implicit cast to underlying type for rhs access. | |
| ~AtomicInterface () | |
| Destructor. | |
Atomic implementation for OpenMP.
OpenMP atomics are disabled for all types by default. Atomics for arithmetic types and forward CoDiPack types are enabled by specializations.
See also AtomicInterface.
| T_Type | The underlying data type. |
| T_Sfinae | Additional SFNIAE parameter for enable-if constructs. |