BaseAudioApplication.hxx
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef __BaseAudioApplication__
00023 #define __BaseAudioApplication__
00024
00025 #include "Application.hxx"
00026
00027 #include <pthread.h>
00028 #undef GetClassName
00029
00030 namespace CLAM {
00031
00032 class BaseAudioApplication:public Application
00033 {
00034 protected:
00035 BaseAudioApplication();
00036 bool Canceled()
00037 {
00038 return cancel;
00039 }
00040 private:
00041 pthread_t thread;
00042
00043 static void* SAudioThread(BaseAudioApplication *pThis);
00044 static void SAudioThreadCleanup(BaseAudioApplication *pThis);
00045 virtual void AudioMain(void) = 0;
00046 virtual void UserMain(void);
00047 virtual void AppCleanup() {};
00048 protected:
00049 bool cancel;
00050 virtual void Run(int argc = 0,char** argv = 0);
00051 void Start(void);
00052 public:
00053 void Stop(void);
00054 };
00055
00056 }
00057
00058 #endif
00059