// (C) Copyright 2012 Vicente J. Botet Escriba // Distributed under the Boost Software License, Version 1.0. (See // accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) #ifndef BOOST_THREAD_IS_LOCKED_BY_THIS_THREAD_HPP #define BOOST_THREAD_IS_LOCKED_BY_THIS_THREAD_HPP #include #include namespace boost { template class testable_mutex; /** * Overloaded function used to check if the mutex is locked when it is testable and do nothing otherwise. * * This function is used usually to assert the pre-condition when the function can only be called when the mutex * must be locked by the current thread. */ template bool is_locked_by_this_thread(testable_mutex const& mtx) { return mtx.is_locked(); } template bool is_locked_by_this_thread(Lockable const&) { return true; } } #include #endif // header