- add more DVB-T support
[enigma2.git] / lib / dvb / specs.h
index 3c6908c220c98c77eac987a3ffd17b95be7bee23..2e2eed9bf1174f7f5e403945105c7215fb60a3ec 100644 (file)
@@ -2,12 +2,13 @@
 #define __lib_dvb_specs_h
 
 #include <lib/dvb/idvb.h>
-#include <lib/dvb/isection.h>
+#include <lib/dvb/idemux.h>
 #include <lib/dvb_si/pmt.h>
 #include <lib/dvb_si/sdt.h>
 #include <lib/dvb_si/nit.h>
 #include <lib/dvb_si/bat.h>
 #include <lib/dvb_si/pat.h>
+#include <lib/dvb_si/eit.h>
 
 struct eDVBPMTSpec
 {
@@ -18,7 +19,7 @@ public:
                m_spec.pid     = pid;
                m_spec.tid     = ProgramMapTable::TID;
                m_spec.tidext  = sid;
-               m_spec.timeout = ProgramMapTable::TIMEOUT;
+               m_spec.timeout = 20000; // ProgramMapTable::TIMEOUT;
                m_spec.flags   = eDVBTableSpec::tfAnyVersion | 
                        eDVBTableSpec::tfHaveTID | eDVBTableSpec::tfHaveTIDExt | 
                        eDVBTableSpec::tfCheckCRC | eDVBTableSpec::tfHaveTimeout;
@@ -37,7 +38,7 @@ public:
        {
                m_spec.pid     = ServiceDescriptionTable::PID;
                m_spec.tid     = ServiceDescriptionTable::TID;
-               m_spec.timeout = ServiceDescriptionTable::TIMEOUT;
+               m_spec.timeout = 20000; // ServiceDescriptionTable::TIMEOUT;
                m_spec.flags   = eDVBTableSpec::tfAnyVersion |
                        eDVBTableSpec::tfHaveTID | eDVBTableSpec::tfCheckCRC |
                        eDVBTableSpec::tfHaveTimeout;
@@ -94,7 +95,7 @@ public:
        {
                m_spec.pid     = ProgramAssociationTable::PID;
                m_spec.tid     = ProgramAssociationTable::TID;
-               m_spec.timeout = ProgramAssociationTable::TIMEOUT;
+               m_spec.timeout = 20000; // ProgramAssociationTable::TIMEOUT;
                m_spec.flags   = eDVBTableSpec::tfAnyVersion |
                        eDVBTableSpec::tfHaveTID | eDVBTableSpec::tfCheckCRC |
                        eDVBTableSpec::tfHaveTimeout;
@@ -105,4 +106,25 @@ public:
        }
 };
 
+class eDVBEITSpec
+{
+       eDVBTableSpec m_spec;
+public:
+               /* this is for now&next on actual transponder. */
+       eDVBEITSpec(int sid)
+       {
+               m_spec.pid     = EventInformationTable::PID;
+               m_spec.tid     = EventInformationTable::TID;
+               m_spec.tidext  = sid;
+               m_spec.timeout = EventInformationTable::TIMEOUT;
+               m_spec.flags   = eDVBTableSpec::tfAnyVersion | 
+                       eDVBTableSpec::tfHaveTID | eDVBTableSpec::tfHaveTIDExt |
+                       eDVBTableSpec::tfCheckCRC | eDVBTableSpec::tfHaveTimeout;
+       }
+       operator eDVBTableSpec &()
+       {
+               return m_spec;
+       }
+};
+
 #endif