summaryrefslogtreecommitdiff
path: root/plugin/vdrtva.h
diff options
context:
space:
mode:
authorDave <vdr@pickles.me.uk>2011-08-21 09:22:34 +0100
committerDave <vdr@pickles.me.uk>2011-08-21 09:22:34 +0100
commitbf74a992bb85b026802eae35f884c949706c3d1f (patch)
tree613875c88ca8eaac6187b6b98d98d56dbdf55cb7 /plugin/vdrtva.h
parent7a02673d36a45482a111687df03c652560a07468 (diff)
downloadvdrtva-bf74a992bb85b026802eae35f884c949706c3d1f.tar.gz
vdrtva-bf74a992bb85b026802eae35f884c949706c3d1f.tar.bz2
Initial plugin release.
Diffstat (limited to 'plugin/vdrtva.h')
-rw-r--r--plugin/vdrtva.h95
1 files changed, 95 insertions, 0 deletions
diff --git a/plugin/vdrtva.h b/plugin/vdrtva.h
new file mode 100644
index 0000000..785f846
--- /dev/null
+++ b/plugin/vdrtva.h
@@ -0,0 +1,95 @@
+#include <vdr/filter.h>
+#include <vdr/device.h>
+
+class cTvaFilter : public cFilter {
+private:
+ cSectionSyncer sectionSyncer;
+ cPatFilter *patFilter;
+protected:
+ virtual void Process(u_short Pid, u_char Tid, const u_char *Data, int Length);
+public:
+ cTvaFilter(void);
+};
+
+class cChanDA : public cListObject {
+ private:
+ int cid;
+ char *defaultAuthority;
+ public:
+ cChanDA(void);
+ ~cChanDA(void);
+ int Cid(void) { return cid; }
+ void Set(int Cid);
+ char * DA(void) { return defaultAuthority; }
+ void SetDA(char *DA);
+};
+
+class cChanDAs : public cRwLock, public cConfig<cChanDA> {
+ private:
+ int maxNumber;
+ cHash<cChanDA> chanDAHash;
+ public:
+ cChanDAs(void);
+ ~cChanDAs(void);
+ int MaxNumber(void) { return maxNumber; }
+ void SetMaxNumber(int number) { maxNumber = number; }
+ cChanDA *GetByChannelID(int cid);
+ cChanDA *NewChanDA(int Cid);
+};
+
+
+class cEventCRID : public cListObject {
+ private:
+ tEventID eid;
+ int cid;
+ char *iCrid;
+ char *sCrid;
+ public:
+ cEventCRID(void);
+ ~cEventCRID(void);
+ tEventID Eid(void) { return eid; }
+ void Set(int Cid, tEventID Eid);
+ char * iCRID(void) { return iCrid; }
+ char * sCRID(void) { return sCrid; }
+ void SetCRIDs(char *iCRID, char *sCRID);
+ int Cid(void) { return cid; }
+};
+
+class cEventCRIDs : public cRwLock, public cConfig<cEventCRID> {
+ private:
+ int maxNumber;
+ cHash<cEventCRID> EventCRIDHash;
+ public:
+ cEventCRIDs(void);
+ ~cEventCRIDs(void);
+ int MaxNumber(void) { return maxNumber; }
+ void SetMaxNumber(int number) { maxNumber = number; }
+ cEventCRID *GetByID(int Cid, tEventID Eid);
+ cEventCRID *NewEventCRID(int Cid, tEventID Eid);
+};
+
+
+class cLinkItem : public cListObject {
+ private:
+ char *sCrid;
+ int modtime;
+ char *iCrids;
+ public:
+ cLinkItem(void);
+ ~cLinkItem(void);
+ void Set(const char *sCRID, int ModTime, const char *iCRIDs);
+ char * iCRIDs(void) { return iCrids; }
+ char * sCRID(void) { return sCrid; }
+ int ModTime(void) { return modtime; }
+};
+
+class cLinks : public cRwLock, public cConfig<cLinkItem> {
+ private:
+ int maxNumber;
+ public:
+ cLinks(void);
+// ~cLinks(void);
+ int MaxNumber(void) { return maxNumber; }
+ void SetMaxNumber(int number) { maxNumber = number; }
+ cLinkItem *NewLinkItem(const char *sCRID, int ModTime, const char *iCRIDs);
+};