diff options
Diffstat (limited to 'p2pvr/scanner/dvbSiReaderHelper.h')
-rw-r--r-- | p2pvr/scanner/dvbSiReaderHelper.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/p2pvr/scanner/dvbSiReaderHelper.h b/p2pvr/scanner/dvbSiReaderHelper.h new file mode 100644 index 0000000..325bc66 --- /dev/null +++ b/p2pvr/scanner/dvbSiReaderHelper.h @@ -0,0 +1,34 @@ +#ifndef DVBSIREADERHELPER_H +#define DVBSIREADERHELPER_H + +#include "xmlObjectLoader.h" +#include "variables.h" + +class RowProcessor; + +class DvbSiReaderHelper { + public: + DvbSiReaderHelper(const xmlpp::Element * p); + ~DvbSiReaderHelper(); + + const Variable demux; + const Variable timeout; + + protected: + void openInput() const; + virtual void filterInput(int fd) const = 0; + void readTables(const RowProcessor *) const; + virtual bool parseSIT(const u_char *data, size_t len, const RowProcessor *) const = 0; + void closeInput() const; + + static VariableType convert(const char * txt, size_t len); + static const std::string ISO10646; + static const std::string EitEncoding; + static const std::string UTF8; + + private: + mutable int fd_epg; +}; + +#endif + |