#ifdef GEN_INTELLISENSE_DIRECTIVES # pragma once # include "header_start.hpp" #endif #pragma region Macros and Includes # include // NOTE: Ensure we use standard methods for these calls if we use GEN_PICO # if ! defined( GEN_PICO_CUSTOM_ROUTINES ) # if ! defined( GEN_MODULE_CORE ) # define _strlen strlen # define _printf_err( fmt, ... ) fprintf( stderr, fmt, __VA_ARGS__ ) # define _printf_err_va( fmt, va ) vfprintf( stderr, fmt, va ) # else # define _strlen c_str_len # define _printf_err( fmt, ... ) c_str_fmt_out_err( fmt, __VA_ARGS__ ) # define _printf_err_va( fmt, va ) c_str_fmt_out_err_va( fmt, va ) # endif # endif # # include # # if defined( GEN_SYSTEM_UNIX ) || defined( GEN_SYSTEM_MACOS ) # include # elif defined( GEN_SYSTEM_WINDOWS ) # if ! defined( GEN_NO_WINDOWS_H ) # ifndef WIN32_LEAN_AND_MEAN # ifndef NOMINMAX # define NOMINMAX # endif # # define WIN32_LEAN_AND_MEAN # define WIN32_MEAN_AND_LEAN # define VC_EXTRALEAN # endif # include # undef NOMINMAX # undef WIN32_LEAN_AND_MEAN # undef WIN32_MEAN_AND_LEAN # undef VC_EXTRALEAN # endif # endif #include #ifdef GEN_SYSTEM_MACOS # include #endif #ifdef GEN_SYSTEM_CYGWIN # include #endif #if defined( GEN_SYSTEM_WINDOWS ) && ! defined( GEN_COMPILER_GCC ) # include #endif #if defined( GEN_SYSTEM_LINUX ) # include #endif #ifdef GEN_BENCHMARK // Timing includes #if defined( GEN_SYSTEM_MACOS ) || GEN_SYSTEM_UNIX # include # include #endif #if defined( GEN_SYSTEM_MACOS ) # include # include # include #endif #if defined( GEN_SYSTEM_EMSCRIPTEN ) # include #endif #if defined( GEN_SYSTEM_WINDOWS ) # include #endif #endif #pragma endregion Macros and Includes