/usr/include/boost/winapi
NameSizeModeActions
detail/-0755rm
access_rights.hpp30530644editdlrm
apc.hpp11590644editdlrm
basic_types.hpp68750644editdlrm
bcrypt.hpp20790644editdlrm
character_code_conversion.hpp37380644editdlrm
condition_variable.hpp38590644editdlrm
config.hpp105870644editdlrm
critical_section.hpp79010644editdlrm
crypt.hpp59470644editdlrm
dbghelp.hpp65710644editdlrm
debugapi.hpp13740644editdlrm
directory_management.hpp34010644editdlrm
dll.hpp58530644editdlrm
environment.hpp44310644editdlrm
error_codes.hpp2186080644editdlrm
error_handling.hpp52700644editdlrm
event.hpp74170644editdlrm
file_management.hpp220140644editdlrm
file_mapping.hpp96540644editdlrm
get_current_process.hpp8740644editdlrm
get_current_process_id.hpp8540644editdlrm
get_current_thread.hpp8680644editdlrm
get_current_thread_id.hpp8820644editdlrm
get_last_error.hpp7610644editdlrm
get_process_times.hpp15530644editdlrm
get_proc_address.hpp24890644editdlrm
get_system_directory.hpp14650644editdlrm
get_thread_times.hpp14500644editdlrm
handles.hpp24910644editdlrm
handle_info.hpp14710644editdlrm
heap_memory.hpp23250644editdlrm
init_once.hpp40940644editdlrm
jobs.hpp55870644editdlrm
limits.hpp12780644editdlrm
local_memory.hpp17640644editdlrm
memory.hpp4550644editdlrm
mutex.hpp63390644editdlrm
overlapped.hpp9500644editdlrm
page_protection_flags.hpp20230644editdlrm
pipes.hpp112310644editdlrm
priority_class.hpp26990644editdlrm
process.hpp196530644editdlrm
security.hpp25740644editdlrm
semaphore.hpp67570644editdlrm
shell.hpp60910644editdlrm
show_window.hpp42000644editdlrm
srw_lock.hpp33430644editdlrm
stack_backtrace.hpp15020644editdlrm
synchronization.hpp8230644editdlrm
system.hpp21440644editdlrm
thread.hpp12300644editdlrm
thread_pool.hpp53260644editdlrm
time.hpp44770644editdlrm
timers.hpp12480644editdlrm
tls.hpp15940644editdlrm
wait.hpp25730644editdlrm
waitable_timer.hpp50660644editdlrm
wait_constants.hpp16510644editdlrm
wait_on_address.hpp14410644editdlrm
Edit: /usr/include/boost/winapi/critical_section.hpp (7901B)
/* * Copyright 2010 Vicente J. Botet Escriba * Copyright 2015 Andrey Semashev * * Distributed under the Boost Software License, Version 1.0. * See http://www.boost.org/LICENSE_1_0.txt */ #ifndef BOOST_WINAPI_CRITICAL_SECTION_HPP_INCLUDED_ #define BOOST_WINAPI_CRITICAL_SECTION_HPP_INCLUDED_ #include #include #include #ifdef BOOST_HAS_PRAGMA_ONCE #pragma once #endif #if !defined( BOOST_USE_WINDOWS_H ) extern "C" { #if !defined( BOOST_WINAPI_IS_MINGW ) // Windows CE uses a different name for the structure #if defined (_WIN32_WCE) struct CRITICAL_SECTION; namespace boost { namespace winapi { namespace detail { typedef CRITICAL_SECTION winsdk_critical_section; } } } #else struct _RTL_CRITICAL_SECTION; namespace boost { namespace winapi { namespace detail { typedef _RTL_CRITICAL_SECTION winsdk_critical_section; } } } #endif #else // MinGW uses a different name for the structure struct _CRITICAL_SECTION; namespace boost { namespace winapi { namespace detail { typedef _CRITICAL_SECTION winapi_critical_section; } } } #endif #if !defined( BOOST_WINAPI_IS_MINGW ) #if BOOST_WINAPI_PARTITION_APP_SYSTEM BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::VOID_ BOOST_WINAPI_WINAPI_CC InitializeCriticalSection(boost::winapi::detail::winsdk_critical_section* lpCriticalSection); #endif BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::VOID_ BOOST_WINAPI_WINAPI_CC EnterCriticalSection(boost::winapi::detail::winsdk_critical_section* lpCriticalSection); BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::VOID_ BOOST_WINAPI_WINAPI_CC LeaveCriticalSection(boost::winapi::detail::winsdk_critical_section* lpCriticalSection); #if BOOST_USE_WINAPI_VERSION >= 0x0403 #if BOOST_WINAPI_PARTITION_APP_SYSTEM BOOST_WINAPI_IMPORT boost::winapi::BOOL_ BOOST_WINAPI_WINAPI_CC InitializeCriticalSectionAndSpinCount( boost::winapi::detail::winsdk_critical_section* lpCriticalSection, boost::winapi::DWORD_ dwSpinCount); BOOST_WINAPI_IMPORT boost::winapi::DWORD_ BOOST_WINAPI_WINAPI_CC SetCriticalSectionSpinCount( boost::winapi::detail::winsdk_critical_section* lpCriticalSection, boost::winapi::DWORD_ dwSpinCount); #endif #if BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_WIN6 BOOST_WINAPI_IMPORT boost::winapi::BOOL_ BOOST_WINAPI_WINAPI_CC InitializeCriticalSectionEx( boost::winapi::detail::winsdk_critical_section* lpCriticalSection, boost::winapi::DWORD_ dwSpinCount, boost::winapi::DWORD_ Flags); #endif #endif #if BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_NT4 BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::BOOL_ BOOST_WINAPI_WINAPI_CC TryEnterCriticalSection(boost::winapi::detail::winsdk_critical_section* lpCriticalSection); #endif BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::VOID_ BOOST_WINAPI_WINAPI_CC DeleteCriticalSection(boost::winapi::detail::winsdk_critical_section* lpCriticalSection); #else // defined( BOOST_WINAPI_IS_MINGW ) BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::VOID_ BOOST_WINAPI_WINAPI_CC InitializeCriticalSection(boost::winapi::detail::winapi_critical_section* lpCriticalSection); BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::VOID_ BOOST_WINAPI_WINAPI_CC EnterCriticalSection(boost::winapi::detail::winapi_critical_section* lpCriticalSection); BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::VOID_ BOOST_WINAPI_WINAPI_CC LeaveCriticalSection(boost::winapi::detail::winapi_critical_section* lpCriticalSection); #if BOOST_USE_WINAPI_VERSION >= 0x0403 BOOST_WINAPI_IMPORT boost::winapi::BOOL_ BOOST_WINAPI_WINAPI_CC InitializeCriticalSectionAndSpinCount( boost::winapi::detail::winapi_critical_section* lpCriticalSection, boost::winapi::DWORD_ dwSpinCount); BOOST_WINAPI_IMPORT boost::winapi::DWORD_ BOOST_WINAPI_WINAPI_CC SetCriticalSectionSpinCount( boost::winapi::detail::winapi_critical_section* lpCriticalSection, boost::winapi::DWORD_ dwSpinCount); #endif #if BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_WIN6 BOOST_WINAPI_IMPORT boost::winapi::BOOL_ BOOST_WINAPI_WINAPI_CC InitializeCriticalSectionEx( boost::winapi::detail::winapi_critical_section* lpCriticalSection, boost::winapi::DWORD_ dwSpinCount, boost::winapi::DWORD_ Flags); #endif #if BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_NT4 BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::BOOL_ BOOST_WINAPI_WINAPI_CC TryEnterCriticalSection(boost::winapi::detail::winapi_critical_section* lpCriticalSection); #endif BOOST_WINAPI_IMPORT_EXCEPT_WM boost::winapi::VOID_ BOOST_WINAPI_WINAPI_CC DeleteCriticalSection(boost::winapi::detail::winapi_critical_section* lpCriticalSection); #endif // defined( BOOST_WINAPI_IS_MINGW ) } // extern "C" #endif namespace boost { namespace winapi { #pragma pack(push, 8) #if !defined(_WIN32_WCE) struct _RTL_CRITICAL_SECTION_DEBUG; typedef struct BOOST_MAY_ALIAS _RTL_CRITICAL_SECTION { _RTL_CRITICAL_SECTION_DEBUG* DebugInfo; LONG_ LockCount; LONG_ RecursionCount; HANDLE_ OwningThread; HANDLE_ LockSemaphore; ULONG_PTR_ SpinCount; } CRITICAL_SECTION_, *PCRITICAL_SECTION_; #else // Windows CE has different layout typedef struct BOOST_MAY_ALIAS CRITICAL_SECTION { unsigned int LockCount; HANDLE OwnerThread; HANDLE hCrit; DWORD needtrap; DWORD dwContentions; } CRITICAL_SECTION_, *LPCRITICAL_SECTION_; #endif #pragma pack(pop) #if BOOST_WINAPI_PARTITION_APP_SYSTEM BOOST_FORCEINLINE VOID_ InitializeCriticalSection(CRITICAL_SECTION_* lpCriticalSection) { ::InitializeCriticalSection(winapi::detail::cast_ptr(lpCriticalSection)); } #endif BOOST_FORCEINLINE VOID_ EnterCriticalSection(CRITICAL_SECTION_* lpCriticalSection) { ::EnterCriticalSection(winapi::detail::cast_ptr(lpCriticalSection)); } BOOST_FORCEINLINE VOID_ LeaveCriticalSection(CRITICAL_SECTION_* lpCriticalSection) { ::LeaveCriticalSection(winapi::detail::cast_ptr(lpCriticalSection)); } #if BOOST_USE_WINAPI_VERSION >= 0x0403 #if BOOST_WINAPI_PARTITION_APP_SYSTEM BOOST_FORCEINLINE BOOL_ InitializeCriticalSectionAndSpinCount(CRITICAL_SECTION_* lpCriticalSection, DWORD_ dwSpinCount) { return ::InitializeCriticalSectionAndSpinCount(winapi::detail::cast_ptr(lpCriticalSection), dwSpinCount); } BOOST_FORCEINLINE DWORD_ SetCriticalSectionSpinCount(CRITICAL_SECTION_* lpCriticalSection, DWORD_ dwSpinCount) { return ::SetCriticalSectionSpinCount(winapi::detail::cast_ptr(lpCriticalSection), dwSpinCount); } #endif // CRITICAL_SECTION_NO_DEBUG_INFO is defined for WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) BOOST_CONSTEXPR_OR_CONST DWORD_ CRITICAL_SECTION_NO_DEBUG_INFO_ = 0x01000000; BOOST_CONSTEXPR_OR_CONST DWORD_ CRITICAL_SECTION_FLAG_NO_DEBUG_INFO_ = CRITICAL_SECTION_NO_DEBUG_INFO_; BOOST_CONSTEXPR_OR_CONST DWORD_ CRITICAL_SECTION_FLAG_DYNAMIC_SPIN_ = 0x02000000; // undocumented BOOST_CONSTEXPR_OR_CONST DWORD_ CRITICAL_SECTION_FLAG_STATIC_INIT_ = 0x04000000; // undocumented #if BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_WIN6 BOOST_FORCEINLINE BOOL_ InitializeCriticalSectionEx(CRITICAL_SECTION_* lpCriticalSection, DWORD_ dwSpinCount, DWORD_ Flags) { return ::InitializeCriticalSectionEx(winapi::detail::cast_ptr(lpCriticalSection), dwSpinCount, Flags); } #endif // BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_WIN6 #endif // BOOST_USE_WINAPI_VERSION >= 0x0403 #if BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_NT4 BOOST_FORCEINLINE BOOL_ TryEnterCriticalSection(CRITICAL_SECTION_* lpCriticalSection) { return ::TryEnterCriticalSection(winapi::detail::cast_ptr(lpCriticalSection)); } #endif // BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_NT4 BOOST_FORCEINLINE VOID_ DeleteCriticalSection(CRITICAL_SECTION_* lpCriticalSection) { ::DeleteCriticalSection(winapi::detail::cast_ptr(lpCriticalSection)); } } } #include #endif // BOOST_WINAPI_CRITICAL_SECTION_HPP_INCLUDED_