| AAX SDK 2.8.0 Avid Audio Extensions Development Kit

- Welcome
- Manual
- Classes
- Files
- Lists
- Support

- File List
- File Members

Loading...
Searching...
No Matches
Macros | Functions
AAX_Atomic.h File Reference
`#include "AAX.h"`
`#include <stdint.h>`

Go to the source code of this file.

## Description

Atomic operation utilities.

## Macros
#define | AAX_ATOMIC_H_

## Functions
uint32_t AAX_CALLBACK | AAX_Atomic_IncThenGet_32 (uint32_t &ioData)
| Increments a 32-bit value and returns the result.
uint32_t AAX_CALLBACK | AAX_Atomic_DecThenGet_32 (uint32_t &ioData)
| Decrements a 32-bit value and returns the result.
uint32_t AAX_CALLBACK | AAX_Atomic_Exchange_32 (volatile uint32_t &ioValue, uint32_t inExchangeValue)
| Return the original value of ioValue and then set it to inExchangeValue.
uint64_t AAX_CALLBACK | AAX_Atomic_Exchange_64 (volatile uint64_t &ioValue, uint64_t inExchangeValue)
| Return the original value of ioValue and then set it to inExchangeValue.
template<typename TPointer >
TPointer *AAX_CALLBACK | AAX_Atomic_Exchange_Pointer (TPointer *&ioValue, TPointer *inExchangeValue)
| Perform an exchange operation on a pointer value.
bool AAX_CALLBACK | AAX_Atomic_CompareAndExchange_32 (volatile uint32_t &ioValue, uint32_t inCompareValue, uint32_t inExchangeValue)
| Perform a compare and exchange operation on a 32-bit value.
bool AAX_CALLBACK | AAX_Atomic_CompareAndExchange_64 (volatile uint64_t &ioValue, uint64_t inCompareValue, uint64_t inExchangeValue)
| Perform a compare and exchange operation on a 64-bit value.
template<typename TPointer >
bool AAX_CALLBACK | AAX_Atomic_CompareAndExchange_Pointer (TPointer *&ioValue, TPointer *inCompareValue, TPointer *inExchangeValue)
| Perform a compare and exchange operation on a pointer value.
template<typename TPointer >
TPointer *AAX_CALLBACK | AAX_Atomic_Load_Pointer (TPointer const *const volatile *inValue)
| Atomically loads a pointer value.

## Macro Definition Documentation

## ◆ AAX_ATOMIC_H_

#define AAX_ATOMIC_H_

## Function Documentation

## ◆ AAX_Atomic_IncThenGet_32()

uint32_t AAX_CALLBACK AAX_Atomic_IncThenGet_32 | ( | uint32_t & | ioData | ) |

Increments a 32-bit value and returns the result.

## ◆ AAX_Atomic_DecThenGet_32()

uint32_t AAX_CALLBACK AAX_Atomic_DecThenGet_32 | ( | uint32_t & | ioData | ) |

Decrements a 32-bit value and returns the result.

## ◆ AAX_Atomic_Exchange_32()

uint32_t AAX_CALLBACK AAX_Atomic_Exchange_32 | ( | volatile uint32_t & | ioValue,
|  | uint32_t | inExchangeValue
| ) |  |

Return the original value of ioValue and then set it to inExchangeValue.

Referenced by AAX_Atomic_Exchange_Pointer().

Here is the caller graph for this function:

## ◆ AAX_Atomic_Exchange_64()

uint64_t AAX_CALLBACK AAX_Atomic_Exchange_64 | ( | volatile uint64_t & | ioValue,
|  | uint64_t | inExchangeValue
| ) |  |

Return the original value of ioValue and then set it to inExchangeValue.

Referenced by AAX_Atomic_Exchange_Pointer().

Here is the caller graph for this function:

## ◆ AAX_Atomic_Exchange_Pointer()

template<typename TPointer >

TPointer *AAX_CALLBACK AAX_Atomic_Exchange_Pointer | ( | TPointer *& | ioValue,
|  | TPointer * | inExchangeValue
| ) |  |

Perform an exchange operation on a pointer value.

References AAX_Atomic_Exchange_32(), and AAX_Atomic_Exchange_64().

Here is the call graph for this function:

## ◆ AAX_Atomic_CompareAndExchange_32()

bool AAX_CALLBACK AAX_Atomic_CompareAndExchange_32 | ( | volatile uint32_t & | ioValue,
|  | uint32_t | inCompareValue,
|  | uint32_t | inExchangeValue
| ) |  |

Perform a compare and exchange operation on a 32-bit value.

Referenced by AAX_Atomic_CompareAndExchange_Pointer().

Here is the caller graph for this function:

## ◆ AAX_Atomic_CompareAndExchange_64()

bool AAX_CALLBACK AAX_Atomic_CompareAndExchange_64 | ( | volatile uint64_t & | ioValue,
|  | uint64_t | inCompareValue,
|  | uint64_t | inExchangeValue
| ) |  |

Perform a compare and exchange operation on a 64-bit value.

Referenced by AAX_Atomic_CompareAndExchange_Pointer().

Here is the caller graph for this function:

## ◆ AAX_Atomic_CompareAndExchange_Pointer()

template<typename TPointer >

bool AAX_CALLBACK AAX_Atomic_CompareAndExchange_Pointer | ( | TPointer *& | ioValue,
|  | TPointer * | inCompareValue,
|  | TPointer * | inExchangeValue
| ) |  |

Perform a compare and exchange operation on a pointer value.

References AAX_Atomic_CompareAndExchange_32(), and AAX_Atomic_CompareAndExchange_64().

Here is the call graph for this function:

## ◆ AAX_Atomic_Load_Pointer()

template<typename TPointer >

TPointer *AAX_CALLBACK AAX_Atomic_Load_Pointer | ( | TPointer const *const volatile * | inValue | ) |

Atomically loads a pointer value.