summaryrefslogtreecommitdiff
path: root/server/livefilter.h
diff options
context:
space:
mode:
Diffstat (limited to 'server/livefilter.h')
-rw-r--r--server/livefilter.h31
1 files changed, 14 insertions, 17 deletions
diff --git a/server/livefilter.h b/server/livefilter.h
index 13e8956..25174ad 100644
--- a/server/livefilter.h
+++ b/server/livefilter.h
@@ -5,28 +5,25 @@
#ifndef VDR_STREAMEV_LIVEFILTER_H
#define VDR_STREAMEV_LIVEFILTER_H
-#include <vdr/config.h>
+#include "server/streamer.h"
-#include <vdr/filter.h>
+class cDevice;
+class cStreamdevLiveFilter;
-class cStreamdevStreamer;
-
-class cStreamdevLiveFilter: public cFilter {
+class cStreamdevFilterStreamer: public cStreamdevStreamer {
private:
- cStreamdevStreamer *m_Streamer;
-
-protected:
- virtual void Process(u_short Pid, u_char Tid, const u_char *Data, int Length);
+ cDevice *m_Device;
+ cStreamdevLiveFilter *m_Filter;
public:
- cStreamdevLiveFilter(cStreamdevStreamer *Streamer);
-
- void Set(u_short Pid, u_char Tid, u_char Mask) {
- cFilter::Set(Pid, Tid, Mask);
- }
- void Del(u_short Pid, u_char Tid, u_char Mask) {
- cFilter::Del(Pid, Tid, Mask);
- }
+ cStreamdevFilterStreamer();
+ virtual ~cStreamdevFilterStreamer();
+
+ void SetDevice(cDevice *Device);
+ bool SetFilter(u_short Pid, u_char Tid, u_char Mask, bool On);
+
+ virtual void Attach(void);
+ virtual void Detach(void);
};
#endif // VDR_STREAMEV_LIVEFILTER_H