summaryrefslogtreecommitdiff
path: root/src/third_party/boost-1.69.0/boost/winapi/handles.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/third_party/boost-1.69.0/boost/winapi/handles.hpp')
-rw-r--r--src/third_party/boost-1.69.0/boost/winapi/handles.hpp70
1 files changed, 70 insertions, 0 deletions
diff --git a/src/third_party/boost-1.69.0/boost/winapi/handles.hpp b/src/third_party/boost-1.69.0/boost/winapi/handles.hpp
new file mode 100644
index 00000000000..5f74d77096e
--- /dev/null
+++ b/src/third_party/boost-1.69.0/boost/winapi/handles.hpp
@@ -0,0 +1,70 @@
+/*
+ * 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_HANDLES_HPP_INCLUDED_
+#define BOOST_WINAPI_HANDLES_HPP_INCLUDED_
+
+#include <boost/winapi/basic_types.hpp>
+
+#ifdef BOOST_HAS_PRAGMA_ONCE
+#pragma once
+#endif
+
+#if !defined( BOOST_USE_WINDOWS_H )
+extern "C" {
+BOOST_SYMBOL_IMPORT boost::winapi::BOOL_ BOOST_WINAPI_WINAPI_CC
+CloseHandle(boost::winapi::HANDLE_ handle);
+
+BOOST_SYMBOL_IMPORT boost::winapi::BOOL_ BOOST_WINAPI_WINAPI_CC
+DuplicateHandle(
+ boost::winapi::HANDLE_ hSourceProcessHandle,
+ boost::winapi::HANDLE_ hSourceHandle,
+ boost::winapi::HANDLE_ hTargetProcessHandle,
+ boost::winapi::HANDLE_* lpTargetHandle,
+ boost::winapi::DWORD_ dwDesiredAccess,
+ boost::winapi::BOOL_ bInheritHandle,
+ boost::winapi::DWORD_ dwOptions);
+
+#if BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_WIN10
+BOOST_SYMBOL_IMPORT boost::winapi::BOOL_ BOOST_WINAPI_WINAPI_CC
+CompareObjectHandles(
+ boost::winapi::HANDLE_ hFirstObjectHandle,
+ boost::winapi::HANDLE_ hSecondObjectHandle);
+#endif
+} // extern "C"
+#endif
+
+namespace boost {
+namespace winapi {
+
+using ::CloseHandle;
+using ::DuplicateHandle;
+
+#if BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_WIN10
+using ::CompareObjectHandles;
+#endif
+
+// Note: MSVC-14.1 does not interpret INVALID_HANDLE_VALUE_ initializer as a constant expression
+#if defined( BOOST_USE_WINDOWS_H )
+BOOST_CONSTEXPR_OR_CONST DWORD_ DUPLICATE_CLOSE_SOURCE_ = DUPLICATE_CLOSE_SOURCE;
+BOOST_CONSTEXPR_OR_CONST DWORD_ DUPLICATE_SAME_ACCESS_ = DUPLICATE_SAME_ACCESS;
+const HANDLE_ INVALID_HANDLE_VALUE_ = INVALID_HANDLE_VALUE;
+#else
+BOOST_CONSTEXPR_OR_CONST DWORD_ DUPLICATE_CLOSE_SOURCE_ = 1;
+BOOST_CONSTEXPR_OR_CONST DWORD_ DUPLICATE_SAME_ACCESS_ = 2;
+const HANDLE_ INVALID_HANDLE_VALUE_ = (HANDLE_)(-1);
+#endif
+
+BOOST_CONSTEXPR_OR_CONST DWORD_ duplicate_close_source = DUPLICATE_CLOSE_SOURCE_;
+BOOST_CONSTEXPR_OR_CONST DWORD_ duplicate_same_access = DUPLICATE_SAME_ACCESS_;
+const HANDLE_ invalid_handle_value = INVALID_HANDLE_VALUE_;
+
+}
+}
+
+#endif // BOOST_WINAPI_HANDLES_HPP_INCLUDED_