blob: d33353dbde5bc39a1edd1dc0c6614e2b3a3e7788 (
plain)
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
31
32
|
#ifndef P2PVR_FRONTEND_H
#define P2PVR_FRONTEND_H
#include <linux/dvb/frontend.h>
#include <genLoader.h>
#include <dvb.h>
class Tuner;
class Frontend {
public:
typedef boost::function<bool(long)> OnFrequencyFound;
Frontend(Tuner *, int fd, const struct dvb_frontend_info &);
virtual ~Frontend();
fe_status_t GetStatus() const;
virtual void TuneTo(const DVBSI::DeliveryPtr &) const = 0;
virtual void FrequencyScan(const OnFrequencyFound & off) const = 0;
virtual std::string Type() const = 0;
const struct dvb_frontend_info & Info() const;
protected:
const Tuner * tuner;
const int frontendFD;
const struct dvb_frontend_info fe_info;
};
typedef GenLoader<Frontend, fe_type, Tuner *, int, const struct dvb_frontend_info &> FrontendLoader;
typedef boost::shared_ptr<Frontend> FrontendPtr;
#endif
|