Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:39:17

0001 //  Copyright (C) 2008-2016 Tim Blechmann
0002 //
0003 //  Distributed under the Boost Software License, Version 1.0. (See
0004 //  accompanying file LICENSE_1_0.txt or copy at
0005 //  http://www.boost.org/LICENSE_1_0.txt)
0006 
0007 
0008 #ifndef BOOST_LOCKFREE_FORWARD_HPP_INCLUDED
0009 #define BOOST_LOCKFREE_FORWARD_HPP_INCLUDED
0010 
0011 
0012 #ifndef BOOST_DOXYGEN_INVOKED
0013 
0014 #include <cstddef> // size_t
0015 
0016 #include <boost/config.hpp>
0017 
0018 #ifdef BOOST_NO_CXX11_VARIADIC_TEMPLATES
0019 #include <boost/parameter/aux_/void.hpp>
0020 #endif
0021 
0022 namespace boost    {
0023 namespace lockfree {
0024 
0025 // policies
0026 template <bool IsFixedSized>
0027 struct fixed_sized;
0028 
0029 template <size_t Size>
0030 struct capacity;
0031 
0032 template <class Alloc>
0033 struct allocator;
0034 
0035 
0036 // data structures
0037 
0038 #ifdef BOOST_NO_CXX11_VARIADIC_TEMPLATES
0039 template <typename T,
0040           class A0 = boost::parameter::void_,
0041           class A1 = boost::parameter::void_,
0042           class A2 = boost::parameter::void_>
0043 #else
0044 template <typename T, typename ...Options>
0045 #endif
0046 class queue;
0047 
0048 #ifdef BOOST_NO_CXX11_VARIADIC_TEMPLATES
0049 template <typename T,
0050           class A0 = boost::parameter::void_,
0051           class A1 = boost::parameter::void_,
0052           class A2 = boost::parameter::void_>
0053 #else
0054 template <typename T, typename ...Options>
0055 #endif
0056 class stack;
0057 
0058 #ifdef BOOST_NO_CXX11_VARIADIC_TEMPLATES
0059 template <typename T,
0060           class A0 = boost::parameter::void_,
0061           class A1 = boost::parameter::void_>
0062 #else
0063 template <typename T, typename ...Options>
0064 #endif
0065 class spsc_queue;
0066 
0067 }
0068 }
0069 
0070 #endif // BOOST_DOXYGEN_INVOKED
0071 
0072 #endif // BOOST_LOCKFREE_FORWARD_HPP_INCLUDED