summaryrefslogtreecommitdiff
path: root/eepg.h
diff options
context:
space:
mode:
authorDimitar Petrovski <dimeptr@gmail.com>2011-08-26 11:43:24 +0200
committerDimitar Petrovski <dimeptr@gmail.com>2011-08-26 11:43:24 +0200
commitd5e15ce71cd5cb0dda3dc3b4c3a9b4c057950bf6 (patch)
tree79fdc83869482bef7bd1497efa4392db28dea115 /eepg.h
parent6ec148ba25e336e8d75a43cf2498fdcecd647b87 (diff)
downloadvdr-plugin-eepg-d5e15ce71cd5cb0dda3dc3b4c3a9b4c057950bf6.tar.gz
vdr-plugin-eepg-d5e15ce71cd5cb0dda3dc3b4c3a9b4c057950bf6.tar.bz2
Test support for Dish Network EEPG and Bell ExpressVU EEPG
Diffstat (limited to 'eepg.h')
-rw-r--r--eepg.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/eepg.h b/eepg.h
index 01fa877..0cda8cc 100644
--- a/eepg.h
+++ b/eepg.h
@@ -75,6 +75,37 @@ typedef struct {
unsigned char * Text;
} Summary_t;
+
+// -- InheritEnum.h
+template <typename EnumT, typename BaseEnumT>
+class InheritEnum
+{
+public:
+ InheritEnum() {}
+ InheritEnum(EnumT e)
+ : enum_(e)
+ {}
+
+ InheritEnum(BaseEnumT e)
+ : baseEnum_(e)
+ {}
+
+ explicit InheritEnum( int val )
+ : enum_(static_cast<EnumT>(val))
+ {}
+
+ operator EnumT() const { return enum_; }
+private:
+ // Note - the value is declared as a union mainly for as a debugging aid. If
+ // the union is undesired and you have other methods of debugging, change it
+ // to either of EnumT and do a cast for the constructor that accepts BaseEnumT.
+ union
+ {
+ EnumT enum_;
+ BaseEnumT baseEnum_;
+ };
+};
+
static const char *FileEquivalences[] = {
"#",
"# Simply add a list of the channels in this file with the following format:",