#pragma once #define NOMINMAX #define _CRT_SECURE_NO_WARNINGS #define WIN32_LEAN_AND_MEAN #define _WIN32_WINNT 0x0601 #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define FMT_HEADER_ONLY #include #include #include #include #include "logger.hpp" namespace big { using namespace std::chrono_literals; template using comptr = Microsoft::WRL::ComPtr; inline HMODULE g_hmodule{}; inline HANDLE g_main_thread{}; inline DWORD g_main_thread_id{}; inline std::atomic_bool g_running{ true }; struct stackwalker : public StackWalker { using StackWalker::StackWalker; void OnOutput(LPCSTR szText) override { g_logger->raw(log_color::red, szText); } }; inline stackwalker g_stackwalker; }