Diligent Engine  v.2.4.g
Public Types | Static Public Member Functions | List of all members
BasicAtomics Struct Reference

#include <BasicAtomics.hpp>

Public Types

using Long = long
 
using AtomicLong = std::atomic< Long >
 
using Int64 = int64_t
 
using AtomicInt64 = std::atomic< Int64 >
 

Static Public Member Functions

template<typename Type >
static Type AtomicIncrement (std::atomic< Type > &Val)
 
template<typename Type >
static Type AtomicDecrement (std::atomic< Type > &Val)
 
template<typename Type >
static Type AtomicCompareExchange (std::atomic< Type > &Destination, Type Exchange, Type Comparand)
 
template<typename Type >
static Type AtomicAdd (std::atomic< Type > &Destination, Type Val)
 

Member Typedef Documentation

◆ AtomicInt64

using BasicAtomics::AtomicInt64 = std::atomic<Int64>

◆ AtomicLong

using BasicAtomics::AtomicLong = std::atomic<Long>

◆ Int64

using BasicAtomics::Int64 = int64_t

◆ Long

using BasicAtomics::Long = long

Member Function Documentation

◆ AtomicAdd()

template<typename Type >
static Type BasicAtomics::AtomicAdd ( std::atomic< Type > &  Destination,
Type  Val 
)
inlinestatic

◆ AtomicCompareExchange()

template<typename Type >
static Type BasicAtomics::AtomicCompareExchange ( std::atomic< Type > &  Destination,
Type  Exchange,
Type  Comparand 
)
inlinestatic

◆ AtomicDecrement()

template<typename Type >
static Type BasicAtomics::AtomicDecrement ( std::atomic< Type > &  Val)
inlinestatic

◆ AtomicIncrement()

template<typename Type >
static Type BasicAtomics::AtomicIncrement ( std::atomic< Type > &  Val)
inlinestatic

The documentation for this struct was generated from the following file: