2 * AtmoThread.h: Base thread class for all threads inside AtmoWin
5 * See the README.txt file for copyright information and how to reach the author(s).
10 #define _AtmoThread_h_
14 #if defined(_ATMO_VLC_PLUGIN_)
15 // use threading stuff from videolan!
17 # include <vlc_threads_funcs.h>
18 # include <vlc_threads.h>
23 void *p_thread; /* cast to CThread * */
34 #if defined(_ATMO_VLC_PLUGIN_)
36 atmo_thread_t *m_pAtmoThread;
37 vlc_mutex_t m_TerminateLock;
38 vlc_cond_t m_TerminateCond;
39 vlc_object_t *m_pOwner;
45 HANDLE m_hTerminateEvent;
49 volatile ATMO_BOOL m_bTerminated;
53 #if defined(_ATMO_VLC_PLUGIN_)
54 static void ThreadProc(atmo_thread_t *pAtmoThread);
56 static DWORD WINAPI ThreadProc(LPVOID lpParameter);
60 virtual DWORD Execute(void);
61 ATMO_BOOL ThreadSleep(DWORD millisekunden);
64 #if defined(_ATMO_VLC_PLUGIN_)
65 CThread(vlc_object_t *pOwner);
70 virtual ~CThread(void);