diff options
Diffstat (limited to 'p2pvr/scanner/eitRows.h')
-rw-r--r-- | p2pvr/scanner/eitRows.h | 33 |
1 files changed, 15 insertions, 18 deletions
diff --git a/p2pvr/scanner/eitRows.h b/p2pvr/scanner/eitRows.h index 1d76c2d..2a3603f 100644 --- a/p2pvr/scanner/eitRows.h +++ b/p2pvr/scanner/eitRows.h @@ -5,6 +5,7 @@ #include "rowSet.h" #include "variables.h" #include "dvbSiReaderHelper.h" +#include <boost/tuple/tuple.hpp> class EitProgram; @@ -17,18 +18,18 @@ class EitRows : public RowSet, DvbSiReaderHelper { void loadComplete(const CommonObjects *); private: - class SeenProgram { - public: - SeenProgram(int sid, int eid); - bool operator<(const SeenProgram &) const; - const int sid; - const int eid; - }; - typedef std::set<SeenProgram> SeenPrograms; - mutable SeenPrograms seenPrograms; - void filterInput(int fd) const; - bool parseInfoTable(const u_char *data, size_t len, const RowProcessor *) const; +}; + +class EitRowState : public RowState, DvbSiParserHelper { + public: + EitRowState(); + const Columns & getColumns() const; + RowAttribute resolveAttr(const Glib::ustring & attrName) const; + + bool parseInfoTable(const u_char *data, size_t len, const RowProcessor *); + + private: void parseEventDescription(const u_char *data, EitProgram * current) const; void parseLongEventDescription(const u_char *data, EitProgram * current) const; void parseComponentDescription(const u_char *data, EitProgram * current) const; @@ -36,15 +37,11 @@ class EitRows : public RowSet, DvbSiReaderHelper { void parseRatingDescription(const u_char *data, EitProgram * current) const; void parseContentIdentifierDescription(const u_char *data, EitProgram * current) const; void parseDescription(const u_char * data, size_t len, EitProgram * current) const; -}; -class EitRowState : public RowState { - public: - EitRowState(); - const Columns & getColumns() const; - RowAttribute resolveAttr(const Glib::ustring & attrName) const; + typedef boost::tuple<int, int> SeenProgram; + typedef std::set<SeenProgram> SeenPrograms; + SeenPrograms seenPrograms; - private: Columns columns; friend class EitRows; mutable EitProgram * current; |