3 #ifdef _INC_WINAPIFAMILY
4 # error Windows API detected. Please move any Windows API includes after CommonLib, or remove them.
7 #define REX_W32_IMPORT(a_ret, a_name, ...) \
8 extern "C" __declspec(dllimport) a_ret __stdcall W32_IMPL_##a_name(...) noexcept; \
9 __pragma(comment(linker, "/alternatename:__imp_W32_IMPL_" #a_name "=__imp_" #a_name))
18 using HDC =
struct HDC__*;
22 using HKEY =
struct HKEY__*;
27 using HPEN =
struct HPEN__*;
30 using HWND =
struct HWND__*;
45 *
this = std::bit_cast<FILETIME>(a_value);
48 constexpr
operator std::uint64_t() const noexcept
50 return std::bit_cast<std::uint64_t>(*
this);
56 static_assert(
sizeof(
FILETIME) == 0x8);
63 constexpr
GUID() noexcept = default;
65 constexpr
GUID(const
std::uint32_t a_data1,
std::uint16_t const a_data2, const
std::uint16_t a_data3, const
std::array<
std::uint8_t, 8>& a_data4) noexcept :
66 data1(a_data1),
data2(a_data2),
data3(a_data3),
data4{ a_data4[0], a_data4[1], a_data4[2], a_data4[3], a_data4[4], a_data4[5], a_data4[6], a_data4[7] }
71 return std::memcmp(&a_lhs, &a_rhs,
sizeof(a_lhs)) == 0;
76 return !(a_lhs == a_rhs);
84 static_assert(
sizeof(
GUID) == 0x10);
94 constexpr
POINT() noexcept = default;
96 constexpr
POINT(
std::int32_t a_x,
std::int32_t a_y) noexcept :
103 static_assert(
sizeof(
POINT) == 0x8);
110 constexpr
RECT() noexcept = default;
112 constexpr
RECT(const
std::int32_t a_x1, const
std::int32_t a_y1, const
std::int32_t a_x2, const
std::int32_t a_y2) noexcept :
113 x1(a_x1),
y1(a_y1),
x2(a_x2),
y2(a_y2)
121 static_assert(
sizeof(
RECT) == 0x10);
131 static_assert(
sizeof(
SIZE) == 0x8);
Definition: BSDirectInputManager.h:8
void * HANDLE
Definition: BASE.h:14
struct HPALETTE__ * HPALETTE
Definition: BASE.h:26
struct HDC__ * HDC
Definition: BASE.h:18
std::int32_t BOOL
Definition: BASE.h:13
struct HCURSOR__ * HCURSOR
Definition: BASE.h:17
struct HPEN__ * HPEN
Definition: BASE.h:27
struct HSTRING__ * HSTRING
Definition: BASE.h:29
constexpr auto MAX_PATH
Definition: BASE.h:34
struct HICON__ * HICON
Definition: BASE.h:20
struct HMENU__ * HMENU
Definition: BASE.h:23
struct HMONITOR__ * HMONITOR
Definition: BASE.h:25
HINSTANCE HMODULE
Definition: BASE.h:24
struct HBITMAP__ * HBITMAP
Definition: BASE.h:15
struct HWND__ * HWND
Definition: BASE.h:30
std::int32_t HRESULT
Definition: BASE.h:28
struct HBRUSH__ * HBRUSH
Definition: BASE.h:16
struct HINSTANCE__ * HINSTANCE
Definition: BASE.h:21
const auto INVALID_HANDLE_VALUE
Definition: BASE.h:33
struct HFONT__ * HFONT
Definition: BASE.h:19
struct HKEY__ * HKEY
Definition: BASE.h:22
Definition: EffectArchetypes.h:65
HANDLE lockSemaphore
Definition: BASE.h:142
std::uintptr_t spinCount
Definition: BASE.h:143
HANDLE owningThread
Definition: BASE.h:141
std::int32_t recursionCount
Definition: BASE.h:140
std::int32_t lockCount
Definition: BASE.h:139
void * debugInfo
Definition: BASE.h:138
constexpr FILETIME() noexcept=default
std::uint32_t lo
Definition: BASE.h:53
std::uint32_t hi
Definition: BASE.h:54
friend bool operator!=(const GUID &a_lhs, const GUID &a_rhs) noexcept
Definition: BASE.h:74
constexpr GUID() noexcept=default
std::uint8_t data4[8]
Definition: BASE.h:82
friend bool operator==(const GUID &a_lhs, const GUID &a_rhs) noexcept
Definition: BASE.h:69
std::uint32_t data1
Definition: BASE.h:79
std::uint16_t data3
Definition: BASE.h:81
std::uint16_t data2
Definition: BASE.h:80
constexpr POINT() noexcept=default
std::int32_t y
Definition: BASE.h:101
std::int32_t x
Definition: BASE.h:100
constexpr RECT() noexcept=default
std::int32_t x1
Definition: BASE.h:116
std::int32_t x2
Definition: BASE.h:118
std::int32_t y1
Definition: BASE.h:117
std::int32_t y2
Definition: BASE.h:119
std::uint32_t length
Definition: BASE.h:149
BOOL inheritHandle
Definition: BASE.h:151
void * securityDescriptor
Definition: BASE.h:150
std::int32_t y
Definition: BASE.h:129
std::int32_t x
Definition: BASE.h:128
std::uint32_t hi
Definition: BASE.h:160
std::uint32_t lo
Definition: BASE.h:159
std::uint64_t value
Definition: BASE.h:162