2003-12-22 13:29:24 +01:00
|
|
|
/*
|
|
|
|
* eit.h: EIT section filter
|
|
|
|
*
|
|
|
|
* See the main source file 'vdr.c' for copyright information and
|
|
|
|
* how to reach the author.
|
|
|
|
*
|
2017-05-09 08:33:37 +02:00
|
|
|
* $Id: eit.h 4.2 2017/05/08 21:10:29 kls Exp $
|
2003-12-22 13:29:24 +01:00
|
|
|
*/
|
2000-09-03 11:40:00 +02:00
|
|
|
|
|
|
|
#ifndef __EIT_H
|
|
|
|
#define __EIT_H
|
|
|
|
|
2003-12-22 13:29:24 +01:00
|
|
|
#include "filter.h"
|
2015-09-01 11:14:27 +02:00
|
|
|
#include "tools.h"
|
|
|
|
|
|
|
|
class cSectionSyncerEntry : public cListObject, public cSectionSyncer {};
|
|
|
|
|
2017-05-09 08:33:37 +02:00
|
|
|
class cSectionSyncerHash : public cHash<cSectionSyncerEntry> {
|
|
|
|
public:
|
|
|
|
cSectionSyncerHash(void) : cHash(HASHSIZE, true) {};
|
|
|
|
};
|
2000-09-03 11:40:00 +02:00
|
|
|
|
2003-12-22 13:29:24 +01:00
|
|
|
class cEitFilter : public cFilter {
|
2010-01-03 15:45:23 +01:00
|
|
|
private:
|
2015-09-01 11:14:27 +02:00
|
|
|
cMutex mutex;
|
|
|
|
cSectionSyncerHash sectionSyncerHash;
|
2010-01-03 15:45:23 +01:00
|
|
|
static time_t disableUntil;
|
2000-10-29 13:17:22 +01:00
|
|
|
protected:
|
2003-12-22 13:29:24 +01:00
|
|
|
virtual void Process(u_short Pid, u_char Tid, const u_char *Data, int Length);
|
2001-03-31 15:04:37 +02:00
|
|
|
public:
|
2003-12-22 13:29:24 +01:00
|
|
|
cEitFilter(void);
|
2015-09-01 11:14:27 +02:00
|
|
|
virtual void SetStatus(bool On);
|
2010-01-03 15:45:23 +01:00
|
|
|
static void SetDisableUntil(time_t Time);
|
2000-10-29 13:17:22 +01:00
|
|
|
};
|
2000-09-03 11:40:00 +02:00
|
|
|
|
2003-12-22 13:29:24 +01:00
|
|
|
#endif //__EIT_H
|