1 /* 2 * tracker/wince/WaitStateThread.h 3 * 4 * Copyright 2009 Peter Barth 5 * 6 * This file is part of Milkytracker. 7 * 8 * Milkytracker is free software: you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License as published by 10 * the Free Software Foundation, either version 3 of the License, or 11 * (at your option) any later version. 12 * 13 * Milkytracker is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 * GNU General Public License for more details. 17 * 18 * You should have received a copy of the GNU General Public License 19 * along with Milkytracker. If not, see <http://www.gnu.org/licenses/>. 20 * 21 */ 22 23 #ifndef WAITSTATETHREAD__H 24 #define WAITSTATETHREAD__H 25 26 #include <windows.h> 27 28 class WaitStateThread 29 { 30 private: 31 static WaitStateThread* instance; 32 33 BOOL bActivated; 34 35 DWORD nSleepTime; 36 DWORD threadID; 37 HANDLE hThread; 38 39 WORD* saveBuffer; 40 41 // display width, height, pitch in 16 bit words 42 int xres, yres, pitch; 43 44 int UpperLeftX, UpperLeftY; 45 int LowerRightX, LowerRightY; 46 // area width, height 47 int Width, Height; 48 49 static DWORD WINAPI MyThreadProc(LPVOID lpParameter); 50 51 WaitStateThread(); 52 53 public: getInstance()54 static WaitStateThread* getInstance() 55 { 56 if (instance == NULL) 57 instance = new WaitStateThread(); 58 59 return instance; 60 } 61 62 void setDisplayResolution(int width, int height); 63 64 void activate(BOOL bActivate, BOOL bDarken = TRUE, BOOL bPutText = TRUE); 65 }; 66 67 #endif 68