QVisu
Qt-based visualization for smart homes
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
vlc_atomic.h File Reference

Go to the source code of this file.

Classes

union  vlc_atomic_t
 

Macros

#define ATOMIC_FLAG_INIT   false
 
#define ATOMIC_VAR_INIT(value)   (value)
 
#define atomic_init(obj, value)   do { *(obj) = (value); } while(0)
 
#define kill_dependency(y)   ((void)0)
 
#define atomic_thread_fence(order)   __sync_synchronize()
 
#define atomic_signal_fence(order)   ((void)0)
 
#define atomic_is_lock_free(obj)   false
 
#define VLC_ATOMIC_INIT(val)   { (val) }
 

Typedefs

typedef bool atomic_flag
 
typedef bool atomic_bool
 
typedef char atomic_char
 
typedef signed char atomic_schar
 
typedef unsigned char atomic_uchar
 
typedef short atomic_short
 
typedef unsigned short atomic_ushort
 
typedef int atomic_int
 
typedef unsigned int atomic_uint
 
typedef long atomic_long
 
typedef unsigned long atomic_ulong
 
typedef long long atomic_llong
 
typedef unsigned long long atomic_ullong
 
typedef wchar_t atomic_wchar_t
 
typedef int_least8_t atomic_int_least8_t
 
typedef uint_least8_t atomic_uint_least8_t
 
typedef int_least16_t atomic_int_least16_t
 
typedef uint_least16_t atomic_uint_least16_t
 
typedef int_least32_t atomic_int_least32_t
 
typedef uint_least32_t atomic_uint_least32_t
 
typedef int_least64_t atomic_int_least64_t
 
typedef uint_least64_t atomic_uint_least64_t
 
typedef int_fast8_t atomic_int_fast8_t
 
typedef uint_fast8_t atomic_uint_fast8_t
 
typedef int_fast16_t atomic_int_fast16_t
 
typedef uint_fast16_t atomic_uint_fast16_t
 
typedef int_fast32_t atomic_int_fast32_t
 
typedef uint_fast32_t atomic_uint_fast32_t
 
typedef int_fast64_t atomic_int_fast64_t
 
typedef uint_fast64_t atomic_uint_fast64_t
 
typedef intptr_t atomic_intptr_t
 
typedef uintptr_t atomic_uintptr_t
 
typedef size_t atomic_size_t
 
typedef ptrdiff_t atomic_ptrdiff_t
 
typedef intmax_t atomic_intmax_t
 
typedef uintmax_t atomic_uintmax_t
 
typedef atomic_uint_least32_t vlc_atomic_float
 

Detailed Description

Atomic operations do not require locking, but they are not very powerful.

Macro Definition Documentation

#define VLC_ATOMIC_INIT (   val)    { (val) }

Static initializer for vlc_atomic_t