| /*!**************************************************************************** | |
| @file Windows/PVRShellOS.h | |
| @ingroup OS_Windows | |
| @copyright Copyright (c) Imagination Technologies Limited. | |
| @brief Initialization for the shell for the Windows OS. | |
| @details Makes programming for 3D APIs easier by wrapping surface | |
| initialization, Texture allocation and other functions for use by a demo. | |
| ******************************************************************************/ | |
| #ifndef _PVRSHELLOS_ | |
| #define _PVRSHELLOS_ | |
| #include <windows.h> | |
| // The following defines are for Windows PC platforms only | |
| #if defined(_WIN32) | |
| // Enable the following 2 lines for memory leak checking - also see WinMain() | |
| #define _CRTDBG_MAP_ALLOC | |
| #include <crtdbg.h> | |
| #endif | |
| #define PVRSHELL_DIR_SYM '\\' | |
| #define vsnprintf _vsnprintf | |
| /*! | |
| @addtogroup OS_Windows | |
| @brief Windows OS | |
| @details The following table illustrates how key codes are mapped in Windows: | |
| <table> | |
| <tr><th> Key code </th><th> KeyPressed (PVRShell) </th></tr> | |
| <tr><td> ESCAPE </td><td> PVRShellKeyNameQUIT </td></tr> | |
| <tr><td> UP </td><td> m_eKeyMapUP </td></tr> | |
| <tr><td> DOWN </td><td> m_eKeyMapDOWN </td></tr> | |
| <tr><td> LEFT </td><td> m_eKeyMapLEFT </td></tr> | |
| <tr><td> RIGHT </td><td> m_eKeyMapRIGHT </td></tr> | |
| <tr><td> SPACE </td><td> PVRShellKeyNameSELECT </td></tr> | |
| <tr><td> '1' </td><td> PVRShellKeyNameACTION1 </td></tr> | |
| <tr><td> '2' </td><td> PVRShellKeyNameACTION2 </td></tr> | |
| <tr><td> F11 </td><td> PVRShellKeyNameScreenshot </td></tr> | |
| </table> | |
| @{ | |
| */ | |
| /*!*************************************************************************** | |
| @class PVRShellInitOS | |
| @brief Interface with specific Operating System. | |
| *****************************************************************************/ | |
| class PVRShellInitOS | |
| { | |
| public: | |
| HDC m_hDC; | |
| HWND m_hWnd; | |
| // Pixmap support: variables for the pixmap | |
| HBITMAP m_hBmPixmap, m_hBmPixmapOld; | |
| HDC m_hDcPixmap; | |
| HACCEL m_hAccelTable; | |
| HINSTANCE m_hInstance; | |
| int m_nCmdShow; | |
| bool m_bHaveFocus; | |
| unsigned int m_u32ButtonState; | |
| public: | |
| ATOM MyRegisterClass(); | |
| }; | |
| /*! @} */ | |
| #endif /* _PVRSHELLOS_ */ | |
| /***************************************************************************** | |
| End of file (PVRShellOS.h) | |
| *****************************************************************************/ | |