Mercurial > mm7
view OSInfo.h @ 2541:a902abdfc7f2
1. Renamed class Game to class Engine.
2. Separated game logic as state of FSM from game logic as engine.
3. Found out that many UI screen initializers were optimized away, intially
they all returned newly created window as separate object like it is done
in CharacterUI_Initialize.
author | a.parshin |
---|---|
date | Sun, 10 May 2015 01:29:11 +0200 |
parents | d44b7775fc06 |
children |
line wrap: on
line source
#pragma once #include "OSAPI.h" class OSInfo { public: inline static bool CanUseDirectDraw4() { if (Ready()) return info.dwPlatformId != VER_PLATFORM_WIN32_NT || info.dwMajorVersion >= 4; return false; } inline static bool CanUseDirectDraw2() { return true; } private: static bool initialized; static OSVERSIONINFOA info; static bool Ready() { if (!initialized) { info.dwOSVersionInfoSize = sizeof(OSVERSIONINFOA); if (GetVersionExA(&info)) initialized = true; } return initialized; } };