FFmpeg
|
#include <stddef.h>
#include <stdint.h>
#include <windows.h>
Go to the source code of this file.
Macros | |
#define | WIN32_LEAN_AND_MEAN |
#define | ATOMIC_FLAG_INIT 0 |
#define | ATOMIC_VAR_INIT(value) (value) |
#define | atomic_init(obj, value) |
#define | kill_dependency(y) ((void)0) |
#define | atomic_thread_fence(order) MemoryBarrier(); |
#define | atomic_signal_fence(order) ((void)0) |
#define | atomic_is_lock_free(obj) 0 |
#define | atomic_store(object, desired) |
#define | atomic_store_explicit(object, desired, order) atomic_store(object, desired) |
#define | atomic_load(object) (MemoryBarrier(), *(object)) |
#define | atomic_load_explicit(object, order) atomic_load(object) |
#define | atomic_exchange(object, desired) InterlockedExchangePointer((PVOID volatile *)object, (PVOID)desired) |
#define | atomic_exchange_explicit(object, desired, order) atomic_exchange(object, desired) |
#define | atomic_compare_exchange_strong_explicit(object, expected, desired, success, failure) atomic_compare_exchange_strong(object, expected, desired) |
#define | atomic_compare_exchange_weak(object, expected, desired) atomic_compare_exchange_strong(object, expected, desired) |
#define | atomic_compare_exchange_weak_explicit(object, expected, desired, success, failure) atomic_compare_exchange_weak(object, expected, desired) |
#define | atomic_fetch_add(object, operand) InterlockedExchangeAdd(object, operand) |
#define | atomic_fetch_sub(object, operand) InterlockedExchangeAdd(object, -(operand)) |
#define | atomic_fetch_or(object, operand) InterlockedOr(object, operand) |
#define | atomic_fetch_xor(object, operand) InterlockedXor(object, operand) |
#define | atomic_fetch_and(object, operand) InterlockedAnd(object, operand) |
#define | atomic_fetch_add_explicit(object, operand, order) atomic_fetch_add(object, operand) |
#define | atomic_fetch_sub_explicit(object, operand, order) atomic_fetch_sub(object, operand) |
#define | atomic_fetch_or_explicit(object, operand, order) atomic_fetch_or(object, operand) |
#define | atomic_fetch_xor_explicit(object, operand, order) atomic_fetch_xor(object, operand) |
#define | atomic_fetch_and_explicit(object, operand, order) atomic_fetch_and(object, operand) |
#define | atomic_flag_test_and_set(object) atomic_exchange(object, 1) |
#define | atomic_flag_test_and_set_explicit(object, order) atomic_flag_test_and_set(object) |
#define | atomic_flag_clear(object) atomic_store(object, 0) |
#define | atomic_flag_clear_explicit(object, order) atomic_flag_clear(object) |
Typedefs | |
typedef intptr_t | atomic_flag |
typedef intptr_t | atomic_bool |
typedef intptr_t | atomic_char |
typedef intptr_t | atomic_schar |
typedef intptr_t | atomic_uchar |
typedef intptr_t | atomic_short |
typedef intptr_t | atomic_ushort |
typedef intptr_t | atomic_int |
typedef intptr_t | atomic_uint |
typedef intptr_t | atomic_long |
typedef intptr_t | atomic_ulong |
typedef intptr_t | atomic_llong |
typedef intptr_t | atomic_ullong |
typedef intptr_t | atomic_wchar_t |
typedef intptr_t | atomic_int_least8_t |
typedef intptr_t | atomic_uint_least8_t |
typedef intptr_t | atomic_int_least16_t |
typedef intptr_t | atomic_uint_least16_t |
typedef intptr_t | atomic_int_least32_t |
typedef intptr_t | atomic_uint_least32_t |
typedef intptr_t | atomic_int_least64_t |
typedef intptr_t | atomic_uint_least64_t |
typedef intptr_t | atomic_int_fast8_t |
typedef intptr_t | atomic_uint_fast8_t |
typedef intptr_t | atomic_int_fast16_t |
typedef intptr_t | atomic_uint_fast16_t |
typedef intptr_t | atomic_int_fast32_t |
typedef intptr_t | atomic_uint_fast32_t |
typedef intptr_t | atomic_int_fast64_t |
typedef intptr_t | atomic_uint_fast64_t |
typedef intptr_t | atomic_intptr_t |
typedef intptr_t | atomic_uintptr_t |
typedef intptr_t | atomic_size_t |
typedef intptr_t | atomic_ptrdiff_t |
typedef intptr_t | atomic_intmax_t |
typedef intptr_t | atomic_uintmax_t |
Functions | |
static int | atomic_compare_exchange_strong (intptr_t *object, intptr_t *expected, intptr_t desired) |
#define WIN32_LEAN_AND_MEAN |
Definition at line 22 of file stdatomic.h.
#define ATOMIC_FLAG_INIT 0 |
Definition at line 27 of file stdatomic.h.
Definition at line 29 of file stdatomic.h.
#define atomic_init | ( | obj, | |
value | |||
) |
Definition at line 31 of file stdatomic.h.
#define kill_dependency | ( | y | ) | ((void)0) |
Definition at line 36 of file stdatomic.h.
#define atomic_thread_fence | ( | order | ) | MemoryBarrier(); |
Definition at line 38 of file stdatomic.h.
#define atomic_signal_fence | ( | order | ) | ((void)0) |
Definition at line 41 of file stdatomic.h.
#define atomic_is_lock_free | ( | obj | ) | 0 |
Definition at line 44 of file stdatomic.h.
#define atomic_store | ( | object, | |
desired | |||
) |
Definition at line 83 of file stdatomic.h.
#define atomic_store_explicit | ( | object, | |
desired, | |||
order | |||
) | atomic_store(object, desired) |
Definition at line 89 of file stdatomic.h.
#define atomic_load | ( | object | ) | (MemoryBarrier(), *(object)) |
Definition at line 92 of file stdatomic.h.
#define atomic_load_explicit | ( | object, | |
order | |||
) | atomic_load(object) |
Definition at line 95 of file stdatomic.h.
#define atomic_exchange | ( | object, | |
desired | |||
) | InterlockedExchangePointer((PVOID volatile *)object, (PVOID)desired) |
Definition at line 98 of file stdatomic.h.
#define atomic_exchange_explicit | ( | object, | |
desired, | |||
order | |||
) | atomic_exchange(object, desired) |
Definition at line 101 of file stdatomic.h.
#define atomic_compare_exchange_strong_explicit | ( | object, | |
expected, | |||
desired, | |||
success, | |||
failure | |||
) | atomic_compare_exchange_strong(object, expected, desired) |
Definition at line 113 of file stdatomic.h.
#define atomic_compare_exchange_weak | ( | object, | |
expected, | |||
desired | |||
) | atomic_compare_exchange_strong(object, expected, desired) |
Definition at line 116 of file stdatomic.h.
#define atomic_compare_exchange_weak_explicit | ( | object, | |
expected, | |||
desired, | |||
success, | |||
failure | |||
) | atomic_compare_exchange_weak(object, expected, desired) |
Definition at line 119 of file stdatomic.h.
#define atomic_fetch_add | ( | object, | |
operand | |||
) | InterlockedExchangeAdd(object, operand) |
Definition at line 138 of file stdatomic.h.
#define atomic_fetch_sub | ( | object, | |
operand | |||
) | InterlockedExchangeAdd(object, -(operand)) |
Definition at line 141 of file stdatomic.h.
#define atomic_fetch_or | ( | object, | |
operand | |||
) | InterlockedOr(object, operand) |
Definition at line 144 of file stdatomic.h.
#define atomic_fetch_xor | ( | object, | |
operand | |||
) | InterlockedXor(object, operand) |
Definition at line 147 of file stdatomic.h.
#define atomic_fetch_and | ( | object, | |
operand | |||
) | InterlockedAnd(object, operand) |
Definition at line 150 of file stdatomic.h.
#define atomic_fetch_add_explicit | ( | object, | |
operand, | |||
order | |||
) | atomic_fetch_add(object, operand) |
Definition at line 154 of file stdatomic.h.
#define atomic_fetch_sub_explicit | ( | object, | |
operand, | |||
order | |||
) | atomic_fetch_sub(object, operand) |
Definition at line 157 of file stdatomic.h.
#define atomic_fetch_or_explicit | ( | object, | |
operand, | |||
order | |||
) | atomic_fetch_or(object, operand) |
Definition at line 160 of file stdatomic.h.
#define atomic_fetch_xor_explicit | ( | object, | |
operand, | |||
order | |||
) | atomic_fetch_xor(object, operand) |
Definition at line 163 of file stdatomic.h.
#define atomic_fetch_and_explicit | ( | object, | |
operand, | |||
order | |||
) | atomic_fetch_and(object, operand) |
Definition at line 166 of file stdatomic.h.
#define atomic_flag_test_and_set | ( | object | ) | atomic_exchange(object, 1) |
Definition at line 169 of file stdatomic.h.
#define atomic_flag_test_and_set_explicit | ( | object, | |
order | |||
) | atomic_flag_test_and_set(object) |
Definition at line 172 of file stdatomic.h.
#define atomic_flag_clear | ( | object | ) | atomic_store(object, 0) |
Definition at line 175 of file stdatomic.h.
#define atomic_flag_clear_explicit | ( | object, | |
order | |||
) | atomic_flag_clear(object) |
Definition at line 178 of file stdatomic.h.
typedef intptr_t atomic_flag |
Definition at line 46 of file stdatomic.h.
typedef intptr_t atomic_bool |
Definition at line 47 of file stdatomic.h.
typedef intptr_t atomic_char |
Definition at line 48 of file stdatomic.h.
typedef intptr_t atomic_schar |
Definition at line 49 of file stdatomic.h.
typedef intptr_t atomic_uchar |
Definition at line 50 of file stdatomic.h.
typedef intptr_t atomic_short |
Definition at line 51 of file stdatomic.h.
typedef intptr_t atomic_ushort |
Definition at line 52 of file stdatomic.h.
typedef intptr_t atomic_int |
Definition at line 53 of file stdatomic.h.
typedef intptr_t atomic_uint |
Definition at line 54 of file stdatomic.h.
typedef intptr_t atomic_long |
Definition at line 55 of file stdatomic.h.
typedef intptr_t atomic_ulong |
Definition at line 56 of file stdatomic.h.
typedef intptr_t atomic_llong |
Definition at line 57 of file stdatomic.h.
typedef intptr_t atomic_ullong |
Definition at line 58 of file stdatomic.h.
typedef intptr_t atomic_wchar_t |
Definition at line 59 of file stdatomic.h.
typedef intptr_t atomic_int_least8_t |
Definition at line 60 of file stdatomic.h.
typedef intptr_t atomic_uint_least8_t |
Definition at line 61 of file stdatomic.h.
typedef intptr_t atomic_int_least16_t |
Definition at line 62 of file stdatomic.h.
typedef intptr_t atomic_uint_least16_t |
Definition at line 63 of file stdatomic.h.
typedef intptr_t atomic_int_least32_t |
Definition at line 64 of file stdatomic.h.
typedef intptr_t atomic_uint_least32_t |
Definition at line 65 of file stdatomic.h.
typedef intptr_t atomic_int_least64_t |
Definition at line 66 of file stdatomic.h.
typedef intptr_t atomic_uint_least64_t |
Definition at line 67 of file stdatomic.h.
typedef intptr_t atomic_int_fast8_t |
Definition at line 68 of file stdatomic.h.
typedef intptr_t atomic_uint_fast8_t |
Definition at line 69 of file stdatomic.h.
typedef intptr_t atomic_int_fast16_t |
Definition at line 70 of file stdatomic.h.
typedef intptr_t atomic_uint_fast16_t |
Definition at line 71 of file stdatomic.h.
typedef intptr_t atomic_int_fast32_t |
Definition at line 72 of file stdatomic.h.
typedef intptr_t atomic_uint_fast32_t |
Definition at line 73 of file stdatomic.h.
typedef intptr_t atomic_int_fast64_t |
Definition at line 74 of file stdatomic.h.
typedef intptr_t atomic_uint_fast64_t |
Definition at line 75 of file stdatomic.h.
typedef intptr_t atomic_intptr_t |
Definition at line 76 of file stdatomic.h.
typedef intptr_t atomic_uintptr_t |
Definition at line 77 of file stdatomic.h.
typedef intptr_t atomic_size_t |
Definition at line 78 of file stdatomic.h.
typedef intptr_t atomic_ptrdiff_t |
Definition at line 79 of file stdatomic.h.
typedef intptr_t atomic_intmax_t |
Definition at line 80 of file stdatomic.h.
typedef intptr_t atomic_uintmax_t |
Definition at line 81 of file stdatomic.h.
|
inlinestatic |
Definition at line 104 of file stdatomic.h.