github.com/searKing/golang/go@v1.2.74/os/signal/cgo/include/boost/winapi/overlapped.hpp (about) 1 /* 2 * Copyright 2016 Klemens D. Morgenstern 3 * 4 * Distributed under the Boost Software License, Version 1.0. 5 * See http://www.boost.org/LICENSE_1_0.txt 6 */ 7 8 #ifndef BOOST_WINAPI_OVERLAPPED_HPP_INCLUDED_ 9 #define BOOST_WINAPI_OVERLAPPED_HPP_INCLUDED_ 10 11 #include <boost/winapi/basic_types.hpp> 12 13 #ifdef BOOST_HAS_PRAGMA_ONCE 14 #pragma once 15 #endif 16 17 #if !defined( BOOST_USE_WINDOWS_H ) 18 extern "C" { 19 struct _OVERLAPPED; 20 } 21 #endif 22 23 namespace boost { 24 namespace winapi { 25 26 #ifdef BOOST_MSVC 27 #pragma warning(push) 28 #pragma warning(disable:4201) // nonstandard extension used : nameless struct/union 29 #endif 30 31 typedef struct BOOST_MAY_ALIAS _OVERLAPPED { 32 ULONG_PTR_ Internal; 33 ULONG_PTR_ InternalHigh; 34 union { 35 BOOST_WINAPI_DETAIL_EXTENSION struct { 36 DWORD_ Offset; 37 DWORD_ OffsetHigh; 38 }; 39 PVOID_ Pointer; 40 }; 41 HANDLE_ hEvent; 42 } OVERLAPPED_, *LPOVERLAPPED_; 43 44 #ifdef BOOST_MSVC 45 #pragma warning(pop) 46 #endif 47 48 } // namespace winapi 49 } // namespace boost 50 51 #endif // BOOST_WINAPI_OVERLAPPED_HPP_INCLUDED_