1
#ifndef BOOST_THREAD_WIN32_MUTEX_HPP
2
#define BOOST_THREAD_WIN32_MUTEX_HPP
3
// (C) Copyright 2005-7 Anthony Williams
4
// (C) Copyright 2011-2012 Vicente J. Botet Escriba
5
// Distributed under the Boost Software License, Version 1.0. (See
6
// accompanying file LICENSE_1_0.txt or copy at
7
// http://www.boost.org/LICENSE_1_0.txt)
9
#include <boost/thread/win32/basic_timed_mutex.hpp>
10
#include <boost/thread/exceptions.hpp>
11
#if defined BOOST_THREAD_PROVIDES_NESTED_LOCKS
12
#include <boost/thread/lock_types.hpp>
14
#include <boost/thread/detail/delete.hpp>
16
#include <boost/config/abi_prefix.hpp>
22
typedef ::boost::detail::basic_timed_mutex underlying_mutex;
26
public ::boost::detail::underlying_mutex
29
BOOST_THREAD_NO_COPYABLE(mutex)
39
#if defined BOOST_THREAD_PROVIDES_NESTED_LOCKS
40
typedef unique_lock<mutex> scoped_lock;
41
typedef detail::try_lock_wrapper<mutex> scoped_try_lock;
45
typedef mutex try_mutex;
48
public ::boost::detail::basic_timed_mutex
51
BOOST_THREAD_NO_COPYABLE(timed_mutex)
62
#if defined BOOST_THREAD_PROVIDES_NESTED_LOCKS
63
typedef unique_lock<timed_mutex> scoped_timed_lock;
64
typedef detail::try_lock_wrapper<timed_mutex> scoped_try_lock;
65
typedef scoped_timed_lock scoped_lock;
70
#include <boost/config/abi_suffix.hpp>