Chris@101: /* Chris@101: * Distributed under the Boost Software License, Version 1.0. Chris@101: * (See accompanying file LICENSE_1_0.txt or copy at Chris@101: * http://www.boost.org/LICENSE_1_0.txt) Chris@101: * Chris@101: * Copyright (c) 2011 Helge Bahmann Chris@101: * Copyright (c) 2013 Tim Blechmann Chris@101: * Copyright (c) 2014 Andrey Semashev Chris@101: */ Chris@101: /*! Chris@101: * \file atomic/atomic.hpp Chris@101: * Chris@101: * This header contains definition of \c atomic template and \c atomic_flag. Chris@101: */ Chris@16: Chris@101: #ifndef BOOST_ATOMIC_ATOMIC_HPP_INCLUDED_ Chris@101: #define BOOST_ATOMIC_ATOMIC_HPP_INCLUDED_ Chris@16: Chris@101: #include Chris@101: #include Chris@101: #include Chris@101: #include Chris@101: #include Chris@16: Chris@16: #ifdef BOOST_HAS_PRAGMA_ONCE Chris@16: #pragma once Chris@16: #endif Chris@16: Chris@16: namespace boost { Chris@16: Chris@101: using atomics::atomic; Chris@101: Chris@101: using atomics::atomic_char; Chris@101: using atomics::atomic_uchar; Chris@101: using atomics::atomic_schar; Chris@101: using atomics::atomic_uint8_t; Chris@101: using atomics::atomic_int8_t; Chris@101: using atomics::atomic_ushort; Chris@101: using atomics::atomic_short; Chris@101: using atomics::atomic_uint16_t; Chris@101: using atomics::atomic_int16_t; Chris@101: using atomics::atomic_uint; Chris@101: using atomics::atomic_int; Chris@101: using atomics::atomic_uint32_t; Chris@101: using atomics::atomic_int32_t; Chris@101: using atomics::atomic_ulong; Chris@101: using atomics::atomic_long; Chris@101: using atomics::atomic_uint64_t; Chris@101: using atomics::atomic_int64_t; Chris@101: #ifdef BOOST_HAS_LONG_LONG Chris@101: using atomics::atomic_ullong; Chris@101: using atomics::atomic_llong; Chris@101: #endif Chris@101: using atomics::atomic_address; Chris@101: using atomics::atomic_bool; Chris@101: using atomics::atomic_wchar_t; Chris@101: #if !defined(BOOST_NO_CXX11_CHAR16_T) Chris@101: using atomics::atomic_char16_t; Chris@101: #endif Chris@101: #if !defined(BOOST_NO_CXX11_CHAR32_T) Chris@101: using atomics::atomic_char32_t; Chris@16: #endif Chris@16: Chris@101: using atomics::atomic_int_least8_t; Chris@101: using atomics::atomic_uint_least8_t; Chris@101: using atomics::atomic_int_least16_t; Chris@101: using atomics::atomic_uint_least16_t; Chris@101: using atomics::atomic_int_least32_t; Chris@101: using atomics::atomic_uint_least32_t; Chris@101: using atomics::atomic_int_least64_t; Chris@101: using atomics::atomic_uint_least64_t; Chris@101: using atomics::atomic_int_fast8_t; Chris@101: using atomics::atomic_uint_fast8_t; Chris@101: using atomics::atomic_int_fast16_t; Chris@101: using atomics::atomic_uint_fast16_t; Chris@101: using atomics::atomic_int_fast32_t; Chris@101: using atomics::atomic_uint_fast32_t; Chris@101: using atomics::atomic_int_fast64_t; Chris@101: using atomics::atomic_uint_fast64_t; Chris@101: using atomics::atomic_intmax_t; Chris@101: using atomics::atomic_uintmax_t; Chris@101: Chris@101: using atomics::atomic_size_t; Chris@101: using atomics::atomic_ptrdiff_t; Chris@101: Chris@101: #if defined(BOOST_HAS_INTPTR_T) Chris@101: using atomics::atomic_intptr_t; Chris@101: using atomics::atomic_uintptr_t; Chris@16: #endif Chris@16: Chris@101: } // namespace boost Chris@16: Chris@101: #endif // BOOST_ATOMIC_ATOMIC_HPP_INCLUDED_