table of contents
| include/Zycore/Atomic.h(3) | Library Functions Manual | include/Zycore/Atomic.h(3) | 
NAME¶
include/Zycore/Atomic.h
SYNOPSIS¶
#include <Zycore/Defines.h>
  
  #include <Zycore/Types.h>
Classes¶
struct ZyanAtomic32_
  
  struct ZyanAtomic64_
  
  struct ZyanAtomicPointer_
  
  
Macros¶
#define ZYAN_ATOMIC_COMPARE_EXCHANGE(destination,
    comparand, value)
    ZyanAtomicCompareExchange((ZyanAtomicPointer*)&(destination),
    (comparand), (value))
  
  #define ZYAN_ATOMIC_INCREMENT(destination)
    ZyanAtomicIncrement((ZyanAtomicPointer*)&(destination));
  
  #define ZYAN_ATOMIC_DECREMENT(destination)
    ZyanAtomicDecrement((ZyanAtomicPointer*)&(destination));
  
  #define ZYAN_ATOMIC_COMPARE_EXCHANGE32(destination, comparand, value)
    ZyanAtomicCompareExchange32((ZyanAtomic32*)&(destination),
    (comparand), (value))
  
  #define ZYAN_ATOMIC_INCREMENT32(destination)
    ZyanAtomicIncrement32((ZyanAtomic32*)&(destination));
  
  #define ZYAN_ATOMIC_DECREMENT32(destination)
    ZyanAtomicDecrement32((ZyanAtomic32*)&(destination));
  
  #define ZYAN_ATOMIC_COMPARE_EXCHANGE64(destination, comparand, value)
    ZyanAtomicCompareExchange64((ZyanAtomic64*)&(destination),
    (comparand), (value))
  
  #define ZYAN_ATOMIC_INCREMENT64(destination)
    ZyanAtomicIncrement64((ZyanAtomic64*)&(destination));
  
  #define ZYAN_ATOMIC_DECREMENT64(destination)
    ZyanAtomicDecrement64((ZyanAtomic64*)&(destination));
  
  
Typedefs¶
typedef struct ZyanAtomic32_ ZyanAtomic32
  
  typedef struct ZyanAtomic64_ ZyanAtomic64
  
  typedef struct ZyanAtomicPointer_ ZyanAtomicPointer
  
  
Detailed Description¶
Cross compiler atomic intrinsics.
Macro Definition Documentation¶
#define ZYAN_ATOMIC_COMPARE_EXCHANGE(destination, comparand, value) ZyanAtomicCompareExchange((ZyanAtomicPointer*)&(destination), (comparand), (value))¶
Compares two values for equality and, if they are equal, replaces the first value.
Parameters
comparand The value to compare with.
value The replacement value.
Returns
#define ZYAN_ATOMIC_COMPARE_EXCHANGE32(destination, comparand, value) ZyanAtomicCompareExchange32((ZyanAtomic32*)&(destination), (comparand), (value))¶
Compares two values for equality and, if they are equal, replaces the first value.
Parameters
comparand The value to compare with.
value The replacement value.
Returns
#define ZYAN_ATOMIC_COMPARE_EXCHANGE64(destination, comparand, value) ZyanAtomicCompareExchange64((ZyanAtomic64*)&(destination), (comparand), (value))¶
Compares two values for equality and, if they are equal, replaces the first value.
Parameters
comparand The value to compare with.
value The replacement value.
Returns
#define ZYAN_ATOMIC_DECREMENT(destination) ZyanAtomicDecrement((ZyanAtomicPointer*)&(destination));¶
Decrements the given value and stores the result, as an atomic operation.
Parameters
Returns
#define ZYAN_ATOMIC_DECREMENT32(destination) ZyanAtomicDecrement32((ZyanAtomic32*)&(destination));¶
Decrements the given value and stores the result, as an atomic operation.
Parameters
Returns
#define ZYAN_ATOMIC_DECREMENT64(destination) ZyanAtomicDecrement64((ZyanAtomic64*)&(destination));¶
Decrements the given value and stores the result, as an atomic operation.
Parameters
Returns
#define ZYAN_ATOMIC_INCREMENT(destination) ZyanAtomicIncrement((ZyanAtomicPointer*)&(destination));¶
Increments the given value and stores the result, as an atomic operation.
Parameters
Returns
#define ZYAN_ATOMIC_INCREMENT32(destination) ZyanAtomicIncrement32((ZyanAtomic32*)&(destination));¶
Increments the given value and stores the result, as an atomic operation.
Parameters
Returns
#define ZYAN_ATOMIC_INCREMENT64(destination) ZyanAtomicIncrement64((ZyanAtomic64*)&(destination));¶
Increments the given value and stores the result, as an atomic operation.
Parameters
Returns
Author¶
Generated automatically by Doxygen for Zycore from the source code.
| Version 1.5.2.0 | Zycore |