summaryrefslogtreecommitdiff
path: root/p2pvr/lib/siParsers/programAssociation.h
blob: 653be0c59ce4c59a94a4fc44cd304537e15db98e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#ifndef PROGRAMASSOCIATION_H
#define PROGRAMASSOCIATION_H

#include "table.h"
#include <dvbsi.h>

struct ProgramAssociationSection {
	SiTableHeader header;
	u_char data[];
} __attribute__((packed));

typedef std::map<uint16_t, uint16_t> ProgramAssociationMap;
typedef boost::shared_ptr<ProgramAssociationMap> ProgramAssociationMapPtr;

class SiProgramAssociationParser : public SiTableParser<ProgramAssociationSection, ProgramAssociationMapPtr, int> {
	protected:
		bool CheckTableId(u_char tableId) const;
		void ParseSiTable(const struct ProgramAssociationSection * pas, ProgramAssociationMapPtr);
};

#endif