Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:53:48

0001 /*
0002  * Copyright 2010 Vicente J. Botet Escriba
0003  * Copyright 2015 Andrey Semashev
0004  * Copyright 2017 James E. King, III
0005  *
0006  * Distributed under the Boost Software License, Version 1.0.
0007  * See http://www.boost.org/LICENSE_1_0.txt
0008  */
0009 
0010 #ifndef BOOST_WINAPI_WAIT_HPP_INCLUDED_
0011 #define BOOST_WINAPI_WAIT_HPP_INCLUDED_
0012 
0013 #include <boost/winapi/basic_types.hpp>
0014 #include <boost/winapi/wait_constants.hpp>
0015 #include <boost/winapi/detail/header.hpp>
0016 
0017 #ifdef BOOST_HAS_PRAGMA_ONCE
0018 #pragma once
0019 #endif
0020 
0021 #if !defined( BOOST_USE_WINDOWS_H )
0022 extern "C" {
0023 
0024 #if BOOST_WINAPI_PARTITION_APP || BOOST_WINAPI_PARTITION_SYSTEM
0025 BOOST_WINAPI_IMPORT boost::winapi::DWORD_ BOOST_WINAPI_WINAPI_CC
0026 WaitForSingleObjectEx(
0027     boost::winapi::HANDLE_ hHandle,
0028     boost::winapi::DWORD_ dwMilliseconds,
0029     boost::winapi::BOOL_ bAlertable);
0030 #endif
0031 
0032 #if BOOST_WINAPI_PARTITION_DESKTOP || BOOST_WINAPI_PARTITION_SYSTEM
0033 #if BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_NT4
0034 BOOST_WINAPI_IMPORT boost::winapi::DWORD_ BOOST_WINAPI_WINAPI_CC
0035 SignalObjectAndWait(
0036     boost::winapi::HANDLE_ hObjectToSignal,
0037     boost::winapi::HANDLE_ hObjectToWaitOn,
0038     boost::winapi::DWORD_ dwMilliseconds,
0039     boost::winapi::BOOL_ bAlertable);
0040 #endif
0041 #endif
0042 
0043 #if BOOST_WINAPI_PARTITION_APP_SYSTEM
0044 BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::DWORD_ BOOST_WINAPI_WINAPI_CC
0045 WaitForSingleObject(
0046     boost::winapi::HANDLE_ hHandle,
0047     boost::winapi::DWORD_ dwMilliseconds);
0048 
0049 BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::DWORD_ BOOST_WINAPI_WINAPI_CC
0050 WaitForMultipleObjects(
0051     boost::winapi::DWORD_ nCount,
0052     boost::winapi::HANDLE_ const* lpHandles,
0053     boost::winapi::BOOL_ bWaitAll,
0054     boost::winapi::DWORD_ dwMilliseconds);
0055 
0056 BOOST_WINAPI_IMPORT boost::winapi::DWORD_ BOOST_WINAPI_WINAPI_CC
0057 WaitForMultipleObjectsEx(
0058     boost::winapi::DWORD_ nCount,
0059     boost::winapi::HANDLE_ const* lpHandles,
0060     boost::winapi::BOOL_ bWaitAll,
0061     boost::winapi::DWORD_ dwMilliseconds,
0062     boost::winapi::BOOL_ bAlertable);
0063 #endif // BOOST_WINAPI_PARTITION_APP_SYSTEM
0064 
0065 } // extern "C"
0066 #endif
0067 
0068 namespace boost {
0069 namespace winapi {
0070 
0071 #if BOOST_WINAPI_PARTITION_APP || BOOST_WINAPI_PARTITION_SYSTEM
0072 using ::WaitForSingleObjectEx;
0073 #endif
0074 #if BOOST_WINAPI_PARTITION_DESKTOP || BOOST_WINAPI_PARTITION_SYSTEM
0075 #if BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_NT4
0076 using ::SignalObjectAndWait;
0077 #endif
0078 #endif
0079 
0080 #if BOOST_WINAPI_PARTITION_APP_SYSTEM
0081 using ::WaitForMultipleObjects;
0082 using ::WaitForMultipleObjectsEx;
0083 using ::WaitForSingleObject;
0084 #endif
0085 
0086 }
0087 }
0088 
0089 #include <boost/winapi/detail/footer.hpp>
0090 
0091 #endif // BOOST_WINAPI_WAIT_HPP_INCLUDED_