Files
compute-runtime/shared/source/os_interface/windows/sys_calls.cpp
Krzysztof Gibala 0a41c42854 Add debug key for aub file generation per process id
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-07-14 08:59:26 +02:00

56 lines
1.4 KiB
C++

/*
* Copyright (C) 2018-2021 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#include "shared/source/os_interface/windows/sys_calls.h"
namespace NEO {
unsigned int getPid() {
return GetCurrentProcessId();
}
bool isShutdownInProgress() {
auto handle = GetModuleHandleA("ntdll.dll");
if (!handle) {
return true;
}
auto RtlDllShutdownInProgress = reinterpret_cast<BOOLEAN(WINAPI *)()>(GetProcAddress(handle, "RtlDllShutdownInProgress"));
return RtlDllShutdownInProgress();
}
namespace SysCalls {
unsigned int getProcessId() {
return GetCurrentProcessId();
}
HANDLE createEvent(LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPCSTR lpName) {
return CreateEventA(lpEventAttributes, bManualReset, bInitialState, lpName);
}
BOOL closeHandle(HANDLE hObject) {
return CloseHandle(hObject);
}
BOOL getSystemPowerStatus(LPSYSTEM_POWER_STATUS systemPowerStatusPtr) {
return GetSystemPowerStatus(systemPowerStatusPtr);
}
BOOL getModuleHandle(DWORD dwFlags, LPCWSTR lpModuleName, HMODULE *phModule) {
return GetModuleHandleEx(dwFlags, lpModuleName, phModule);
}
DWORD getModuleFileName(HMODULE hModule, LPWSTR lpFilename, DWORD nSize) {
return GetModuleFileName(hModule, lpFilename, nSize);
}
char *getenv(const char *variableName) {
return ::getenv(variableName);
}
} // namespace SysCalls
} // namespace NEO