summaryrefslogtreecommitdiffstats
path: root/k9decmpeg/k9decodethread.h
diff options
context:
space:
mode:
Diffstat (limited to 'k9decmpeg/k9decodethread.h')
-rw-r--r--k9decmpeg/k9decodethread.h52
1 files changed, 52 insertions, 0 deletions
diff --git a/k9decmpeg/k9decodethread.h b/k9decmpeg/k9decodethread.h
new file mode 100644
index 0000000..b98abb5
--- /dev/null
+++ b/k9decmpeg/k9decodethread.h
@@ -0,0 +1,52 @@
+//
+// C++ Interface: k9decodethread
+//
+// Description:
+//
+//
+// Author: Jean-Michel PETIT <k9copy@free.fr>, (C) 2006
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef K9DECODETHREAD_H
+#define K9DECODETHREAD_H
+#include "k9common.h"
+#include "k9vamps.h"
+
+#include <qthread.h>
+#include <qobject.h>
+#include <qwaitcondition.h>
+
+#include "kdecmpeg2.h"
+
+/**
+ @author Jean-Michel PETIT <k9copy@free.fr>
+*/
+class k9DecodeThread : public QThread
+{
+private:
+ kDecMPEG2 *m_decoder;
+ k9fifo m_fifo;
+ QWaitCondition wDataRead;
+ QWaitCondition wDataReady;
+ bool noData;
+
+public:
+ k9DecodeThread();
+ ~k9DecodeThread();
+ void addData(uchar *data,uint size);
+ void setNoData();
+ void clear();
+ void sleepms(int _ms);
+ kDecMPEG2 *getDecoder() {return m_decoder;}
+
+protected:
+ int readData(uchar * data,uint size);
+ void run();
+
+
+
+};
+
+#endif