forked from berolinaro/dvbv5-tools
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathNetworkInformationTable.h
31 lines (26 loc) · 1002 Bytes
/
NetworkInformationTable.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#pragma once
#include "DVBTable.h"
#include "Transponder.h"
#include <map>
extern "C" {
#include <stdint.h>
}
class NetworkInformationTable:public DVBTable {
public:
NetworkInformationTable(DVBTable *t):DVBTable(t) { }
void dump(std::ostream &where=std::cerr, std::string const &indent="") const override;
uint16_t networkId() const { return _number; }
std::vector<Transponder*> transponders() const;
static constexpr uint8_t tablePid = NIT;
static constexpr uint8_t tableFilter = NetworkInformation;
static constexpr uint8_t tableMask = 0xff;
protected:
mutable std::map<uint16_t,uint16_t> _pids;
};
class NetworkInformationTables:public DVBTables<NetworkInformationTable> {
public:
NetworkInformationTables():DVBTables<NetworkInformationTable>() { }
NetworkInformationTables(NetworkInformationTable *t):DVBTables<NetworkInformationTable>(t) { }
void dump(std::ostream &where=std::cerr, std::string const &indent="") const override;
std::vector<Transponder*> transponders() const;
};