#pragma once

#if defined(_WIN32) || defined(_WIN64)
#define EHS_OS_WINDOWS
    #define EHS_FILE __FILE__
    #define EHS_FUNC __FUNCTION__
    #define EHS_LINE __LINE__

    #ifndef NOMINMAX
        #define NOMINMAX
    #endif

    #ifndef WIN32_LEAN_AND_MEAN
        #define WIN32_LEAN_AND_MEAN
    #endif

    #include <Windows.h>

    typedef void* Handle;
#elif defined(__linux__)
	#define EHS_OS_LINUX
	#define EHS_FILE __FILE__
	#define EHS_FUNC __FUNCTION__
	#define EHS_LINE __LINE__

typedef int Handle;
#endif