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!
16 # include <vlc_common.h>
17 # include <vlc_threads.h>
22 void *p_thread; /* cast to CThread * */
33 #if defined(_ATMO_VLC_PLUGIN_)
35 atmo_thread_t *m_pAtmoThread;
36 vlc_mutex_t m_TerminateLock;
37 vlc_cond_t m_TerminateCond;
38 vlc_object_t *m_pOwner;
44 HANDLE m_hTerminateEvent;
48 volatile ATMO_BOOL m_bTerminated;
52 #if defined(_ATMO_VLC_PLUGIN_)
53 static void ThreadProc(atmo_thread_t *pAtmoThread);
55 static DWORD WINAPI ThreadProc(LPVOID lpParameter);
59 virtual DWORD Execute(void);
60 ATMO_BOOL ThreadSleep(DWORD millisekunden);
63 #if defined(_ATMO_VLC_PLUGIN_)
64 CThread(vlc_object_t *pOwner);
69 virtual ~CThread(void);