00001 00009 /* 00010 ---- Copyright (C) 2002 Jose Eduardo R. Mourão (eduardo_rdm@hotmail.com) ---- 00011 00012 This file is part of ToxiTea. 00013 00014 ToxiTea is free software; you can redistribute it and/or modify 00015 it under the terms of the GNU General Public License as published by 00016 the Free Software Foundation; either version 2 of the License, or 00017 (at your option) any later version. 00018 00019 ToxiTea is distributed in the hope that it will be useful, 00020 but WITHOUT ANY WARRANTY; without even the implied warranty of 00021 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00022 GNU General Public License for more details. 00023 00024 You should have received a copy of the GNU General Public License 00025 along with ToxiTea; if not, write to the Free Software 00026 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00027 00028 For more information and updates visit: 00029 http://toxitea.sourceforge.net 00030 or mail to: eduardo_rdm@hotmail.com 00031 00032 COMPILING AND/OR USING YOU ARE ACCEPTING ALL TERMS ABOVE. 00033 THIS LICENSE CAN BE CHANGED ANY TIME FOR ANY REASON WITHOUT NO COMMUNICATION. 00034 */ 00035 00040 #include "Generals.h" 00041 00042 #ifndef _CTOXITHREAD_CLASS_ 00043 #define _CTOXITHREAD_CLASS_ 00044 00045 #define WINDOWS_LEAN_AND_MEAN 00046 00047 class TOXITEADLL_API CToxiThread 00048 { 00049 00050 protected: 00051 HANDLE d_threadHandle; 00052 DWORD d_threadID; 00053 bool d_bIsRunning; 00054 00055 public: 00056 CToxiThread(); 00057 CToxiThread(int priority); 00058 00059 ~CToxiThread(); 00060 00061 void begin(); 00062 void end(); 00063 bool isRunning(); 00064 bool setThreadFunc(void (*Action)(void)); 00065 void setPriority(int priority); 00066 int getPriority(); 00067 00068 DWORD ThreadProc(); 00069 private: 00070 void (*pAction)(void); 00071 }; 00072 00073 #endif