1 #ifndef __dvb_frontend_h
2 #define __dvb_frontend_h
5 #include <lib/dvb/idvb.h>
7 class eDVBFrontendParameters: public iDVBFrontendParameters
9 DECLARE_REF(eDVBFrontendParameters);
12 eDVBFrontendParametersSatellite sat;
13 eDVBFrontendParametersCable cable;
14 eDVBFrontendParametersTerrestrial terrestrial;
18 eDVBFrontendParameters();
20 RESULT getSystem(int &type) const;
21 RESULT getDVBS(eDVBFrontendParametersSatellite &p) const;
22 RESULT getDVBC(eDVBFrontendParametersCable &p) const;
23 RESULT getDVBT(eDVBFrontendParametersTerrestrial &p) const;
25 RESULT setDVBS(eDVBFrontendParametersSatellite &p);
26 RESULT setDVBC(eDVBFrontendParametersCable &p);
27 RESULT setDVBT(eDVBFrontendParametersTerrestrial &p);
29 RESULT calculateDifference(const iDVBFrontendParameters *parm, int &diff) const;
31 RESULT getHash(unsigned long &hash) const;
34 class eDVBFrontend: public iDVBFrontend, public Object
36 DECLARE_REF(eDVBFrontend);
39 #if HAVE_DVB_API_VERSION < 3
43 Signal1<void,iDVBFrontend*> m_stateChanged;
44 ePtr<iDVBSatelliteEquipmentControl> m_sec;
45 eSocketNotifier *m_sn;
52 eDVBFrontend(int adap, int fe, int &ok);
53 virtual ~eDVBFrontend();
55 RESULT getFrontendType(int &type);
56 RESULT tune(const iDVBFrontendParameters &where);
57 RESULT connectStateChange(const Slot1<void,iDVBFrontend*> &stateChange, ePtr<eConnection> &connection);
58 RESULT getState(int &state);
59 RESULT setTone(int tone);
60 RESULT setVoltage(int voltage);
61 RESULT sendDiseqc(const eDVBDiseqcCommand &diseqc);
62 RESULT setSEC(iDVBSatelliteEquipmentControl *sec);