insert cutmark on EIT change
[enigma2.git] / lib / dvb / frontendparms.h
1 #ifndef __lib_dvb_frontendparms_h
2 #define __lib_dvb_frontendparms_h
3
4 #include <lib/python/swig.h>
5
6 class SatelliteDeliverySystemDescriptor;
7 class CableDeliverySystemDescriptor;
8 class TerrestrialDeliverySystemDescriptor;
9
10 struct eDVBFrontendParametersSatellite
11 {
12 #ifndef SWIG
13         void set(const SatelliteDeliverySystemDescriptor  &);
14 #endif
15         struct Polarisation {
16                 enum {
17                         Horizontal, Vertical, CircularLeft, CircularRight
18                 };
19         };
20         struct Inversion {
21                 enum {
22                         Off, On, Unknown
23                 };
24         };
25         struct FEC {
26                 enum {
27                         fAuto, f1_2, f2_3, f3_4, f5_6, f7_8, f8_9, f3_5, f4_5, f9_10, fNone=15
28                 };
29         };
30         struct System {
31                 enum {
32                         DVB_S, DVB_S2
33                 };
34         };
35         struct Modulation {
36                 enum {
37                         Auto, QPSK, M8PSK, QAM_16
38                 };
39         };
40         // dvb-s2
41         struct RollOff {
42                 enum {
43                         alpha_0_35, alpha_0_25, alpha_0_20
44                 };
45         };
46         struct Pilot {  
47                 enum {
48                         Off, On, Unknown
49                 };
50         };
51         bool no_rotor_command_on_tune;
52         unsigned int frequency, symbol_rate;
53         int polarisation, fec, inversion, orbital_position, system, modulation, rolloff, pilot;
54 };
55 SWIG_ALLOW_OUTPUT_SIMPLE(eDVBFrontendParametersSatellite);
56
57 struct eDVBFrontendParametersCable
58 {
59 #ifndef SWIG
60         void set(const CableDeliverySystemDescriptor  &);
61 #endif
62         struct Inversion {
63                 enum {
64                         Off, On, Unknown
65                 };
66         };
67         struct FEC {
68                 enum {
69                         fAuto, f1_2, f2_3, f3_4, f5_6, f7_8, f8_9, fNone=15
70                 };
71         };
72         struct Modulation {
73                 enum {
74                         Auto, QAM16, QAM32, QAM64, QAM128, QAM256
75                 };
76         };
77         unsigned int frequency, symbol_rate;
78         int modulation, inversion, fec_inner;
79 };
80 SWIG_ALLOW_OUTPUT_SIMPLE(eDVBFrontendParametersCable);
81
82 struct eDVBFrontendParametersTerrestrial
83 {
84 #ifndef SWIG
85         void set(const TerrestrialDeliverySystemDescriptor  &);
86 #endif
87         struct Bandwidth {
88                 enum {
89                         Bw8MHz, Bw7MHz, Bw6MHz, /*Bw5MHz,*/ BwAuto
90                 }; // Bw5Mhz nyi (compatibilty with enigma1)
91         };
92         struct FEC {
93                 enum {
94                         f1_2, f2_3, f3_4, f5_6, f7_8, fAuto
95                 };
96         };
97         struct TransmissionMode {
98                 enum {
99                         TM2k, TM8k, /*TM4k,*/ TMAuto
100                 }; // TM4k nyi (compatibility with enigma1)
101         };
102         struct GuardInterval {
103                 enum {
104                         GI_1_32, GI_1_16, GI_1_8, GI_1_4, GI_Auto
105                 };
106         };
107         struct Hierarchy {
108                 enum {
109                         HNone, H1, H2, H4, HAuto
110                 };
111         };
112         struct Modulation {
113                 enum {
114                         QPSK, QAM16, QAM64, Auto
115                 };
116         };
117         struct Inversion
118         {
119                 enum {
120                         Off, On, Unknown
121                 };
122         };
123         unsigned int frequency;
124         int bandwidth;
125         int code_rate_HP, code_rate_LP;
126         int modulation;
127         int transmission_mode;
128         int guard_interval;
129         int hierarchy;
130         int inversion;
131 };
132 SWIG_ALLOW_OUTPUT_SIMPLE(eDVBFrontendParametersTerrestrial);
133
134 #endif