williamr@2: #ifndef BOOST_DETAIL_LIGHTWEIGHT_MUTEX_HPP_INCLUDED williamr@2: #define BOOST_DETAIL_LIGHTWEIGHT_MUTEX_HPP_INCLUDED williamr@2: williamr@2: // MS compatible compilers support #pragma once williamr@2: williamr@2: #if defined(_MSC_VER) && (_MSC_VER >= 1020) williamr@2: # pragma once williamr@2: #endif williamr@2: williamr@2: // williamr@2: // boost/detail/lightweight_mutex.hpp - lightweight mutex williamr@2: // williamr@2: // Copyright (c) 2002, 2003 Peter Dimov and Multi Media Ltd. williamr@2: // williamr@2: // Distributed under the Boost Software License, Version 1.0. (See williamr@2: // accompanying file LICENSE_1_0.txt or copy at williamr@2: // http://www.boost.org/LICENSE_1_0.txt) williamr@2: // williamr@2: // typedef boost::detail::lightweight_mutex; williamr@2: // williamr@2: // boost::detail::lightweight_mutex is a header-only implementation of williamr@2: // a subset of the Mutex concept requirements: williamr@2: // williamr@2: // http://www.boost.org/doc/html/threads/concepts.html#threads.concepts.Mutex williamr@2: // williamr@2: // It maps to a CRITICAL_SECTION on Windows or a pthread_mutex on POSIX. williamr@2: // williamr@2: williamr@2: #include williamr@2: williamr@2: #if !defined(BOOST_HAS_THREADS) williamr@2: # include williamr@2: #elif defined(WIN32) || defined(_WIN32) || defined(__WIN32__) williamr@2: # include williamr@2: #elif defined(BOOST_HAS_PTHREADS) williamr@2: # include williamr@2: #else williamr@2: // Use #define BOOST_DISABLE_THREADS to avoid the error williamr@2: # error Unrecognized threading platform williamr@2: #endif williamr@2: williamr@2: #endif // #ifndef BOOST_DETAIL_LIGHTWEIGHT_MUTEX_HPP_INCLUDED