1 #ifndef BOOST_SMART_PTR_DETAIL_ATOMIC_COUNT_SOLARIS_HPP_INCLUDED
\r
2 #define BOOST_SMART_PTR_DETAIL_ATOMIC_COUNT_SOLARIS_HPP_INCLUDED
\r
5 // boost/detail/atomic_count_solaris.hpp
\r
6 // based on: boost/detail/atomic_count_win32.hpp
\r
8 // Copyright (c) 2001-2005 Peter Dimov
\r
9 // Copyright (c) 2006 Michael van der Westhuizen
\r
11 // Distributed under the Boost Software License, Version 1.0. (See
\r
12 // accompanying file LICENSE_1_0.txt or copy at
\r
13 // http://www.boost.org/LICENSE_1_0.txt)
\r
28 explicit atomic_count( uint32_t v ): value_( v )
\r
34 return atomic_inc_32_nv( &value_ );
\r
39 return atomic_dec_32_nv( &value_ );
\r
42 operator uint32_t() const
\r
44 return static_cast<uint32_t const volatile &>( value_ );
\r
49 atomic_count( atomic_count const & );
\r
50 atomic_count & operator=( atomic_count const & );
\r
55 } // namespace detail
\r
57 } // namespace boost
\r
59 #endif // #ifndef BOOST_SMART_PTR_DETAIL_ATOMIC_COUNT_SOLARIS_HPP_INCLUDED
\r