2004-12-30 23:43:55 +01:00
|
|
|
/*
|
2008-04-07 16:27:27 +02:00
|
|
|
* $Id: livefilter.h,v 1.5 2008/04/07 14:27:31 schmirl Exp $
|
2004-12-30 23:43:55 +01:00
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef VDR_STREAMEV_LIVEFILTER_H
|
|
|
|
#define VDR_STREAMEV_LIVEFILTER_H
|
|
|
|
|
2012-11-24 23:35:10 +01:00
|
|
|
#include "server/streamer.h"
|
2004-12-30 23:43:55 +01:00
|
|
|
|
2012-11-24 23:35:10 +01:00
|
|
|
class cDevice;
|
|
|
|
class cStreamdevLiveFilter;
|
2004-12-30 23:43:55 +01:00
|
|
|
|
2012-11-24 23:35:10 +01:00
|
|
|
class cStreamdevFilterStreamer: public cStreamdevStreamer {
|
2004-12-30 23:43:55 +01:00
|
|
|
private:
|
2012-11-24 23:35:10 +01:00
|
|
|
cDevice *m_Device;
|
|
|
|
cStreamdevLiveFilter *m_Filter;
|
2012-12-16 12:40:44 +01:00
|
|
|
cStreamdevBuffer *m_ReceiveBuffer;
|
|
|
|
|
|
|
|
protected:
|
|
|
|
virtual uchar* GetFromReceiver(int &Count) { return m_ReceiveBuffer->Get(Count); }
|
|
|
|
virtual void DelFromReceiver(int Count) { m_ReceiveBuffer->Del(Count); }
|
2004-12-30 23:43:55 +01:00
|
|
|
|
|
|
|
public:
|
2012-11-24 23:35:10 +01:00
|
|
|
cStreamdevFilterStreamer();
|
|
|
|
virtual ~cStreamdevFilterStreamer();
|
|
|
|
|
|
|
|
void SetDevice(cDevice *Device);
|
|
|
|
bool SetFilter(u_short Pid, u_char Tid, u_char Mask, bool On);
|
2012-12-16 13:21:19 +01:00
|
|
|
|
|
|
|
virtual bool IsReceiving(void) const;
|
2012-12-16 12:40:44 +01:00
|
|
|
void Receive(uchar *Data);
|
2012-11-24 23:35:10 +01:00
|
|
|
|
|
|
|
virtual void Attach(void);
|
|
|
|
virtual void Detach(void);
|
2004-12-30 23:43:55 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif // VDR_STREAMEV_LIVEFILTER_H
|