use frontend_id in prepare too
[enigma2.git] / lib / dvb / frontendparms.h
1 #ifndef __lib_dvb_frontendparms_h
2 #define __lib_dvb_frontendparms_h
3
4 class SatelliteDeliverySystemDescriptor;
5 class CableDeliverySystemDescriptor;
6 class TerrestrialDeliverySystemDescriptor;
7
8 struct eDVBFrontendParametersSatellite
9 {
10         struct Polarisation
11         {
12                 enum {
13                         Horizontal, Vertical, CircularLeft, CircularRight
14                 };
15         };
16         struct Inversion
17         {
18                 enum {
19                         On, Off, Unknown
20                 };
21         };
22         struct FEC
23         {
24                 enum {
25                         fNone, f1_2, f2_3, f3_4, f5_6, f7_8, fAuto
26                 };
27         };
28         unsigned int frequency, symbol_rate;
29         int polarisation, fec, inversion, orbital_position;
30 #ifndef SWIG    
31         void set(const SatelliteDeliverySystemDescriptor  &);
32 #endif
33 };
34
35 struct eDVBFrontendParametersCable
36 {
37         unsigned int frequency, symbol_rate;
38         int modulation, inversion, fec_inner;
39 #ifndef SWIG
40         void set(const CableDeliverySystemDescriptor  &);
41 #endif
42 };
43
44 struct eDVBFrontendParametersTerrestrial
45 {
46         unsigned int frequency;
47         struct Bandwidth {
48                 enum { Bw8MHz, Bw7MHz, Bw6MHz, BwAuto };
49         };
50         
51         struct FEC
52         {
53                 enum {
54                         fNone, f1_2, f2_3, f3_4, f5_6, f7_8, fAuto
55                 };
56         };
57         
58         struct TransmissionMode {
59                 enum {
60                         TM2k, TM8k, TMAuto
61                 };
62         };
63         
64         struct GuardInterval {
65                 enum {
66                         GI_1_32, GI_1_16, GI_1_8, GI_1_4, GI_Auto
67                 };
68         };
69         
70         struct Hierarchy {
71                 enum {
72                         HNone, H1, H2, H4, HAuto
73                 };
74         };
75         
76         struct Modulation {
77                 enum {
78                         QPSK, QAM16, Auto
79                 };
80         };
81
82         struct Inversion
83         {
84                 enum {
85                         On, Off, Unknown
86                 };
87         };
88         
89         int bandwidth;
90         int code_rate_HP, code_rate_LP;
91         int modulation;
92         int transmission_mode;
93         int guard_interval;
94         int hierarchy;
95         int inversion;
96
97 #ifndef SWIG    
98         void set(const TerrestrialDeliverySystemDescriptor  &);
99 #endif
100 };
101
102 #endif