00001 #ifndef FCAM_DUMMY_DAEMON_H
00002 #define FCAM_DUMMY_DAEMON_H
00003
00004 #include <pthread.h>
00005
00006 #include <FCam/TSQueue.h>
00007 #include <FCam/Dummy/Sensor.h>
00008
00009 namespace FCam { namespace Dummy {
00010
00011 void *daemon_launch_thread_(void *arg);
00012
00013 class Daemon {
00014 public:
00015 TSQueue<_Frame *> requestQueue;
00016 TSQueue<_Frame *> frameQueue;
00017
00018 Daemon(Sensor *sensor);
00019 ~Daemon();
00020
00021 void launchThreads();
00022 private:
00023 Sensor *sensor;
00024
00025 bool stop;
00026
00027 bool running;
00028 void run();
00029
00030 pthread_t simThread;
00031
00032 friend void *daemon_launch_thread_(void *arg);
00033 };
00034
00035 }}
00036 #endif