Merged changes from trunk.

[SVN r85818]
This commit is contained in:
Andrey Semashev
2013-09-22 09:57:15 +00:00
20 changed files with 248 additions and 150 deletions

View File

@ -6,14 +6,18 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_GETCURRENTPROCESS_HPP
#define BOOST_DETAIL_WIN_GETCURRENTPROCESS_HPP
#ifndef BOOST_DETAIL_WINAPI_GETCURRENTPROCESS_HPP
#define BOOST_DETAIL_WINAPI_GETCURRENTPROCESS_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost {
namespace detail {
namespace win32 {
namespace winapi {
#if defined( BOOST_USE_WINDOWS_H )
using ::GetCurrentProcess;
#else
@ -22,4 +26,4 @@ namespace win32 {
}
}
}
#endif // BOOST_DETAIL_WIN_TIME_HPP
#endif // BOOST_DETAIL_WINAPI_GETCURRENTPROCESS_HPP

View File

@ -6,14 +6,18 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_GETCURRENTTHREAD_HPP
#define BOOST_DETAIL_WIN_GETCURRENTTHREAD_HPP
#ifndef BOOST_DETAIL_WINAPI_GETCURRENTTHREAD_HPP
#define BOOST_DETAIL_WINAPI_GETCURRENTTHREAD_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost {
namespace detail {
namespace win32 {
namespace winapi {
#if defined( UNDER_CE )
// Windows CE define GetCurrentThread as an inline function in kfuncs.h
inline HANDLE_ GetCurrentThread()
@ -31,4 +35,4 @@ inline HANDLE_ GetCurrentThread()
}
}
#endif // BOOST_DETAIL_WIN_TIME_HPP
#endif // BOOST_DETAIL_WINAPI_GETCURRENTTHREAD_HPP

View File

@ -6,14 +6,18 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_GETLASTERROR_HPP
#define BOOST_DETAIL_WIN_GETLASTERROR_HPP
#ifndef BOOST_DETAIL_WINAPI_GETLASTERROR_HPP
#define BOOST_DETAIL_WINAPI_GETLASTERROR_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost {
namespace detail {
namespace win32 {
namespace winapi {
#if defined( BOOST_USE_WINDOWS_H )
using ::GetLastError;
#else
@ -24,4 +28,4 @@ namespace win32 {
}
}
#endif // BOOST_DETAIL_WIN_TIME_HPP
#endif // BOOST_DETAIL_WINAPI_GETLASTERROR_HPP

View File

@ -6,14 +6,18 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_GETPROCESSTIMES_HPP
#define BOOST_DETAIL_WIN_GETPROCESSTIMES_HPP
#ifndef BOOST_DETAIL_WINAPI_GETPROCESSTIMES_HPP
#define BOOST_DETAIL_WINAPI_GETPROCESSTIMES_HPP
#include <boost/detail/win/time.hpp>
#include <boost/detail/winapi/time.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost {
namespace detail {
namespace win32 {
namespace winapi {
#if !defined(UNDER_CE) // Windows CE does not define GetProcessTimes
#if defined( BOOST_USE_WINDOWS_H )
using ::GetProcessTimes;
@ -32,4 +36,4 @@ namespace win32 {
}
}
#endif // BOOST_DETAIL_WIN_GETPROCESSTIMES_HPP
#endif // BOOST_DETAIL_WINAPI_GETPROCESSTIMES_HPP

View File

@ -6,14 +6,18 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_GETTHREADTIMES_HPP
#define BOOST_DETAIL_WIN_GETTHREADTIMES_HPP
#ifndef BOOST_DETAIL_WINAPI_GETTHREADTIMES_HPP
#define BOOST_DETAIL_WINAPI_GETTHREADTIMES_HPP
#include <boost/detail/win/time.hpp>
#include <boost/detail/winapi/time.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost {
namespace detail {
namespace win32 {
namespace winapi {
#if defined( BOOST_USE_WINDOWS_H )
using ::GetThreadTimes;
#else
@ -30,4 +34,4 @@ namespace win32 {
}
}
#endif // BOOST_DETAIL_WIN_GETTHREADTIMES_HPP
#endif // BOOST_DETAIL_WINAPI_GETTHREADTIMES_HPP

View File

@ -6,14 +6,18 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_LOCALFREE_HPP
#define BOOST_DETAIL_WIN_LOCALFREE_HPP
#ifndef BOOST_DETAIL_WINAPI_LOCALFREE_HPP
#define BOOST_DETAIL_WINAPI_LOCALFREE_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost {
namespace detail {
namespace win32 {
namespace winapi {
#if defined( BOOST_USE_WINDOWS_H )
typedef HANDLE_ HLOCAL_;
@ -26,4 +30,4 @@ namespace win32 {
}
}
}
#endif // BOOST_DETAIL_WIN_LOCALFREE_HPP
#endif // BOOST_DETAIL_WINAPI_LOCALFREE_HPP

View File

@ -6,15 +6,17 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_BASIC_TYPES_HPP
#define BOOST_DETAIL_WIN_BASIC_TYPES_HPP
#ifndef BOOST_DETAIL_WINAPI_BASIC_TYPES_HPP
#define BOOST_DETAIL_WINAPI_BASIC_TYPES_HPP
#include <boost/config.hpp>
#include <cstdarg>
#include <boost/cstdint.hpp>
#if defined( BOOST_USE_WINDOWS_H )
# include <windows.h>
#elif defined( WIN32 ) || defined( _WIN32 ) || defined( __WIN32__ ) || defined(__CYGWIN__)
# include <WinError.h>
# include <winerror.h>
// @FIXME Which condition must be tested
# ifdef UNDER_CE
# ifndef WINAPI
@ -33,9 +35,13 @@
# error "Win32 functions not available"
#endif
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost {
namespace detail {
namespace win32 {
namespace winapi {
#if defined( BOOST_USE_WINDOWS_H )
typedef ::BOOL BOOL_;
typedef ::WORD WORD_;
@ -102,10 +108,9 @@ extern "C" {
typedef wchar_t WCHAR_;
typedef WCHAR_ *LPWSTR_;
typedef const WCHAR_ *LPCWSTR_;
}
#endif
}
}
}
#endif // BOOST_DETAIL_WIN_TIME_HPP
#endif // BOOST_DETAIL_WINAPI_TIME_HPP

View File

@ -6,17 +6,21 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_DIRECTORY_MANAGEMENT_HPP
#define BOOST_DETAIL_WIN_DIRECTORY_MANAGEMENT_HPP
#ifndef BOOST_DETAIL_WINAPI_DIRECTORY_MANAGEMENT_HPP
#define BOOST_DETAIL_WINAPI_DIRECTORY_MANAGEMENT_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/win/security.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#include <boost/detail/winapi/security.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost
{
namespace detail
{
namespace win32
namespace winapi
{
#if defined( BOOST_USE_WINDOWS_H )
using ::CreateDirectory;
@ -33,11 +37,10 @@ extern "C" {
GetTempPathA(unsigned long length, char *buffer);
__declspec(dllimport) int __stdcall
RemoveDirectoryA(LPCTSTR_);
}
#endif
}
}
}
#endif // BOOST_DETAIL_WIN_THREAD_HPP
#endif // BOOST_DETAIL_WINAPI_THREAD_HPP

View File

@ -6,17 +6,21 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_DLL_HPP
#define BOOST_DETAIL_WIN_DLL_HPP
#ifndef BOOST_DETAIL_WINAPI_DLL_HPP
#define BOOST_DETAIL_WINAPI_DLL_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/win/security.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#include <boost/detail/winapi/security.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost
{
namespace detail
{
namespace win32
namespace winapi
{
#if defined( BOOST_USE_WINDOWS_H )
using ::LoadLibrary;
@ -42,11 +46,10 @@ extern "C" {
GetModuleHandleA(
LPCSTR_ lpProcName
);
}
#endif
}
}
}
#endif // BOOST_DETAIL_WIN_THREAD_HPP
#endif // BOOST_DETAIL_WINAPI_THREAD_HPP

View File

@ -6,15 +6,20 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_ERROR_HANDLING_HPP
#define BOOST_DETAIL_WIN_ERROR_HANDLING_HPP
#ifndef BOOST_DETAIL_WINAPI_ERROR_HANDLING_HPP
#define BOOST_DETAIL_WINAPI_ERROR_HANDLING_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/win/GetCurrentThread.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#include <boost/detail/winapi/GetCurrentThread.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost {
namespace detail {
namespace win32 {
namespace winapi {
#if defined( BOOST_USE_WINDOWS_H )
using ::FormatMessageA;
using ::FormatMessageW;
@ -85,4 +90,4 @@ extern "C" {
}
}
}
#endif // BOOST_DETAIL_WIN_ERROR_HANDLING_HPP
#endif // BOOST_DETAIL_WINAPI_ERROR_HANDLING_HPP

View File

@ -6,17 +6,21 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_FILE_MANAGEMENT_HPP
#define BOOST_DETAIL_WIN_FILE_MANAGEMENT_HPP
#ifndef BOOST_DETAIL_WINAPI_FILE_MANAGEMENT_HPP
#define BOOST_DETAIL_WINAPI_FILE_MANAGEMENT_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/win/security.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#include <boost/detail/winapi/security.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost
{
namespace detail
{
namespace win32
namespace winapi
{
#if defined( BOOST_USE_WINDOWS_H )
using ::CreateFileA;
@ -123,4 +127,4 @@ extern "C" {
}
}
#endif // BOOST_DETAIL_WIN_THREAD_HPP
#endif // BOOST_DETAIL_WINAPI_THREAD_HPP

View File

@ -6,17 +6,20 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_HANDLES_HPP
#define BOOST_DETAIL_WIN_HANDLES_HPP
#ifndef BOOST_DETAIL_WINAPI_HANDLES_HPP
#define BOOST_DETAIL_WINAPI_HANDLES_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost
{
namespace detail
{
namespace win32
namespace winapi
{
#if defined( BOOST_USE_WINDOWS_H )
using ::CloseHandle;
@ -34,4 +37,4 @@ extern "C" {
}
}
#endif // BOOST_DETAIL_WIN_HANDLES_HPP
#endif // BOOST_DETAIL_WINAPI_HANDLES_HPP

View File

@ -6,19 +6,22 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_MEMORY_HPP
#define BOOST_DETAIL_WIN_MEMORY_HPP
#ifndef BOOST_DETAIL_WINAPI_MEMORY_HPP
#define BOOST_DETAIL_WINAPI_MEMORY_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/win/security.hpp>
#include <boost/detail/win/LocalFree.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#include <boost/detail/winapi/security.hpp>
#include <boost/detail/winapi/LocalFree.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost
{
namespace detail
{
namespace win32
namespace winapi
{
#if defined( BOOST_USE_WINDOWS_H )
using ::CreateFileMappingA;
@ -30,9 +33,7 @@ namespace win32
using ::OpenFileMappingA;
using ::UnmapViewOfFile;
#else
# ifdef HeapAlloc
# undef HeapAlloc
# endif
#undef HeapAlloc
extern "C" {
__declspec(dllimport) void * __stdcall
CreateFileMappingA (void *, SECURITY_ATTRIBUTES_*, unsigned long, unsigned long, unsigned long, const char *);
@ -56,4 +57,4 @@ extern "C" {
}
}
#endif // BOOST_DETAIL_WIN_SYNCHRONIZATION_HPP
#endif // BOOST_DETAIL_WINAPI_MEMORY_HPP

View File

@ -6,15 +6,19 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_PROCESS_HPP
#define BOOST_DETAIL_WIN_PROCESS_HPP
#ifndef BOOST_DETAIL_WINAPI_PROCESS_HPP
#define BOOST_DETAIL_WINAPI_PROCESS_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/win/GetCurrentProcess.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#include <boost/detail/winapi/GetCurrentProcess.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost {
namespace detail {
namespace win32 {
namespace winapi {
#if defined( BOOST_USE_WINDOWS_H )
using ::GetCurrentProcessId;
#else
@ -30,4 +34,4 @@ extern "C" {
}
}
}
#endif // BOOST_DETAIL_WIN_PROCESS_HPP
#endif // BOOST_DETAIL_WINAPI_PROCESS_HPP

View File

@ -6,17 +6,20 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_SECURITY_HPP
#define BOOST_DETAIL_WIN_SECURITY_HPP
#ifndef BOOST_DETAIL_WINAPI_SECURITY_HPP
#define BOOST_DETAIL_WINAPI_SECURITY_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost
{
namespace detail
{
namespace win32
namespace winapi
{
#if defined( BOOST_USE_WINDOWS_H )
typedef ::SECURITY_ATTRIBUTES SECURITY_ATTRIBUTES_;
@ -59,4 +62,4 @@ extern "C" {
}
}
#endif // BOOST_DETAIL_WIN_SECURITY_HPP
#endif // BOOST_DETAIL_WINAPI_SECURITY_HPP

View File

@ -6,17 +6,20 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_SYNCHRONIZATION_HPP
#define BOOST_DETAIL_WIN_SYNCHRONIZATION_HPP
#ifndef BOOST_DETAIL_WINAPI_SYNCHRONIZATION_HPP
#define BOOST_DETAIL_WINAPI_SYNCHRONIZATION_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost
{
namespace detail
{
namespace win32
namespace winapi
{
#if defined( BOOST_USE_WINDOWS_H )
typedef ::CRITICAL_SECTION CRITICAL_SECTION_;
@ -27,7 +30,7 @@ namespace win32
using ::TryEnterCriticalSection;
using ::LeaveCriticalSection;
using ::DeleteCriticalSection;
# ifdef BOOST_NO_ANSI_APIS
using ::CreateMutexW;
using ::CreateEventW;
@ -45,9 +48,18 @@ namespace win32
using ::ResetEvent;
using ::WaitForMultipleObjects;
using ::WaitForSingleObject;
using ::QueueUserAPC;
#else
using ::QueueUserAPC;
const DWORD_ infinite = INFINITE;
const DWORD_ wait_abandoned = WAIT_ABANDONED;
const DWORD_ wait_object_0 = WAIT_OBJECT_0;
const DWORD_ wait_timeout = WAIT_TIMEOUT;
const DWORD_ wait_failed = WAIT_FAILED;
#else // defined( BOOST_USE_WINDOWS_H )
extern "C" {
struct CRITICAL_SECTION_
{
struct critical_section_debug * DebugInfo;
@ -62,64 +74,73 @@ extern "C" {
#endif
};
__declspec(dllimport) void __stdcall
__declspec(dllimport) void __stdcall
InitializeCriticalSection(CRITICAL_SECTION_ *);
__declspec(dllimport) void __stdcall
__declspec(dllimport) void __stdcall
EnterCriticalSection(CRITICAL_SECTION_ *);
__declspec(dllimport) bool __stdcall
__declspec(dllimport) bool __stdcall
TryEnterCriticalSection(CRITICAL_SECTION_ *);
__declspec(dllimport) void __stdcall
__declspec(dllimport) void __stdcall
LeaveCriticalSection(CRITICAL_SECTION_ *);
__declspec(dllimport) void __stdcall
__declspec(dllimport) void __stdcall
DeleteCriticalSection(CRITICAL_SECTION_ *);
struct _SECURITY_ATTRIBUTES;
# ifdef BOOST_NO_ANSI_APIS
__declspec(dllimport) void* __stdcall
__declspec(dllimport) void* __stdcall
CreateMutexW(_SECURITY_ATTRIBUTES*,int,wchar_t const*);
__declspec(dllimport) void* __stdcall
__declspec(dllimport) void* __stdcall
CreateSemaphoreW(_SECURITY_ATTRIBUTES*,long,long,wchar_t const*);
__declspec(dllimport) void* __stdcall
__declspec(dllimport) void* __stdcall
CreateEventW(_SECURITY_ATTRIBUTES*,int,int,wchar_t const*);
__declspec(dllimport) void* __stdcall
__declspec(dllimport) void* __stdcall
OpenEventW(unsigned long,int,wchar_t const*);
# else
__declspec(dllimport) void* __stdcall
__declspec(dllimport) void* __stdcall
CreateMutexA(_SECURITY_ATTRIBUTES*,int,char const*);
__declspec(dllimport) void* __stdcall
__declspec(dllimport) void* __stdcall
CreateSemaphoreA(_SECURITY_ATTRIBUTES*,long,long,char const*);
__declspec(dllimport) void* __stdcall
__declspec(dllimport) void* __stdcall
CreateEventA(_SECURITY_ATTRIBUTES*,int,int,char const*);
__declspec(dllimport) void* __stdcall
__declspec(dllimport) void* __stdcall
OpenEventA(unsigned long,int,char const*);
# endif
__declspec(dllimport) int __stdcall
__declspec(dllimport) int __stdcall
ReleaseMutex(void*);
__declspec(dllimport) unsigned long __stdcall
__declspec(dllimport) unsigned long __stdcall
WaitForSingleObject(void*,unsigned long);
__declspec(dllimport) unsigned long __stdcall
__declspec(dllimport) unsigned long __stdcall
WaitForMultipleObjects(unsigned long nCount,
void* const * lpHandles,
int bWaitAll,
unsigned long dwMilliseconds);
__declspec(dllimport) int __stdcall
__declspec(dllimport) int __stdcall
ReleaseSemaphore(void*,long,long*);
typedef void (__stdcall *PAPCFUNC8)(ulong_ptr);
__declspec(dllimport) unsigned long __stdcall
QueueUserAPC(PAPCFUNC8,void*,ulong_ptr);
typedef void (__stdcall *PAPCFUNC8)(ULONG_PTR_);
__declspec(dllimport) unsigned long __stdcall
QueueUserAPC(PAPCFUNC8,void*,ULONG_PTR_);
# ifndef UNDER_CE
__declspec(dllimport) int __stdcall
__declspec(dllimport) int __stdcall
SetEvent(void*);
__declspec(dllimport) int __stdcall
__declspec(dllimport) int __stdcall
ResetEvent(void*);
# else
using ::SetEvent;
using ::ResetEvent;
# endif
}
#endif
} // extern "C"
const DWORD_ infinite = (DWORD_)0xFFFFFFFF;
const DWORD_ wait_abandoned = 0x00000080L;
const DWORD_ wait_object_0 = 0x00000000L;
const DWORD_ wait_timeout = 0x00000102L;
const DWORD_ wait_failed = (DWORD_)0xFFFFFFFF;
#endif // defined( BOOST_USE_WINDOWS_H )
}
}
}
#endif // BOOST_DETAIL_WIN_SYNCHRONIZATION_HPP
#endif // BOOST_DETAIL_WINAPI_SYNCHRONIZATION_HPP

View File

@ -6,19 +6,21 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_SYSTEM_HPP
#define BOOST_DETAIL_WIN_SYSTEM_HPP
#include <boost/config.hpp>
#include <cstdarg>
#ifndef BOOST_DETAIL_WINAPI_SYSTEM_HPP
#define BOOST_DETAIL_WINAPI_SYSTEM_HPP
#include <boost/detail/win/basic_types.hpp>
extern "C" __declspec(dllimport) void __stdcall GetSystemInfo (struct system_info *);
#include <boost/detail/winapi/basic_types.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost {
namespace detail {
namespace win32 {
namespace winapi {
#if defined( BOOST_USE_WINDOWS_H )
typedef ::SYSTEM_INFO SYSTEM_INFO_;
extern "C" __declspec(dllimport) void __stdcall GetSystemInfo (struct system_info *);
#else
extern "C" {
typedef struct _SYSTEM_INFO {
@ -47,4 +49,4 @@ extern "C" {
}
}
}
#endif // BOOST_DETAIL_WIN_TIME_HPP
#endif // BOOST_DETAIL_WINAPI_SYSTEM_HPP

View File

@ -6,17 +6,21 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_THREAD_HPP
#define BOOST_DETAIL_WIN_THREAD_HPP
#ifndef BOOST_DETAIL_WINAPI_THREAD_HPP
#define BOOST_DETAIL_WINAPI_THREAD_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/win/GetCurrentThread.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#include <boost/detail/winapi/GetCurrentThread.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost
{
namespace detail
{
namespace win32
namespace winapi
{
#if defined( BOOST_USE_WINDOWS_H )
using ::GetCurrentThreadId;
@ -42,4 +46,4 @@ extern "C" {
}
}
#endif // BOOST_DETAIL_WIN_THREAD_HPP
#endif // BOOST_DETAIL_WINAPI_THREAD_HPP

View File

@ -6,15 +6,18 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_TIME_HPP
#define BOOST_DETAIL_WIN_TIME_HPP
#ifndef BOOST_DETAIL_WINAPI_TIME_HPP
#define BOOST_DETAIL_WINAPI_TIME_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost {
namespace detail {
namespace win32 {
namespace winapi {
#if defined( BOOST_USE_WINDOWS_H )
typedef FILETIME FILETIME_;
typedef PFILETIME PFILETIME_;
@ -23,7 +26,7 @@ namespace win32 {
typedef SYSTEMTIME SYSTEMTIME_;
typedef SYSTEMTIME* PSYSTEMTIME_;
#ifndef UNDER_CE // Windows CE does not define GetSystemTimeAsFileTime
#ifdef BOOST_HAS_GETSYSTEMTIMEASFILETIME // Windows CE does not define GetSystemTimeAsFileTime
using ::GetSystemTimeAsFileTime;
#endif
using ::FileTimeToLocalFileTime;
@ -49,24 +52,34 @@ extern "C" {
WORD_ wMilliseconds;
} SYSTEMTIME_, *PSYSTEMTIME_;
#ifndef UNDER_CE // Windows CE does not define GetSystemTimeAsFileTime
#ifdef BOOST_HAS_GETSYSTEMTIMEASFILETIME // Windows CE does not define GetSystemTimeAsFileTime
__declspec(dllimport) void WINAPI
GetSystemTimeAsFileTime(FILETIME_* lpFileTime);
#endif
__declspec(dllimport) int WINAPI
FileTimeToLocalFileTime(const FILETIME_* lpFileTime,
FileTimeToLocalFileTime(const FILETIME_* lpFileTime,
FILETIME_* lpLocalFileTime);
__declspec(dllimport) void WINAPI
GetSystemTime(SYSTEMTIME_* lpSystemTime);
__declspec(dllimport) int WINAPI
SystemTimeToFileTime(const SYSTEMTIME_* lpSystemTime,
SystemTimeToFileTime(const SYSTEMTIME_* lpSystemTime,
FILETIME_* lpFileTime);
__declspec(dllimport) unsigned long __stdcall
__declspec(dllimport) DWORD_ WINAPI
GetTickCount();
}
#endif
#ifndef BOOST_HAS_GETSYSTEMTIMEASFILETIME
inline void WINAPI GetSystemTimeAsFileTime(FILETIME_* lpFileTime)
{
SYSTEMTIME_ st;
GetSystemTime(&st);
SystemTimeToFileTime(&st, lpFileTime);
}
#endif
}
}
}
#endif // BOOST_DETAIL_WIN_TIME_HPP
#endif // BOOST_DETAIL_WINAPI_TIME_HPP

View File

@ -6,17 +6,20 @@
// See http://www.boost.org/LICENSE_1_0.txt
#ifndef BOOST_DETAIL_WIN_TIMERS_HPP
#define BOOST_DETAIL_WIN_TIMERS_HPP
#ifndef BOOST_DETAIL_WINAPI_TIMERS_HPP
#define BOOST_DETAIL_WINAPI_TIMERS_HPP
#include <boost/detail/win/basic_types.hpp>
#include <boost/detail/winapi/basic_types.hpp>
#ifdef BOOST_HAS_PRAGMA_ONCE
#pragma once
#endif
namespace boost
{
namespace detail
{
namespace win32
namespace winapi
{
#if defined( BOOST_USE_WINDOWS_H )
using ::QueryPerformanceCounter;
@ -38,4 +41,4 @@ extern "C" {
}
}
#endif // BOOST_DETAIL_WIN_TIMERS_HPP
#endif // BOOST_DETAIL_WINAPI_TIMERS_HPP