File: eit.h

package info (click to toggle)
vdr 2.4.0-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 6,200 kB
  • sloc: ansic: 60,013; perl: 965; makefile: 693; sh: 656; python: 86
file content (36 lines) | stat: -rw-r--r-- 818 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/*
 * eit.h: EIT section filter
 *
 * See the main source file 'vdr.c' for copyright information and
 * how to reach the author.
 *
 * $Id: eit.h 4.2 2017/05/08 21:10:29 kls Exp $
 */

#ifndef __EIT_H
#define __EIT_H

#include "filter.h"
#include "tools.h"

class cSectionSyncerEntry : public cListObject, public cSectionSyncer {};

class cSectionSyncerHash : public cHash<cSectionSyncerEntry> {
public:
  cSectionSyncerHash(void) : cHash(HASHSIZE, true) {};
  };

class cEitFilter : public cFilter {
private:
  cMutex mutex;
  cSectionSyncerHash sectionSyncerHash;
  static time_t disableUntil;
protected:
  virtual void Process(u_short Pid, u_char Tid, const u_char *Data, int Length);
public:
  cEitFilter(void);
  virtual void SetStatus(bool On);
  static void SetDisableUntil(time_t Time);
  };

#endif //__EIT_H