generic language update
[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         struct RollOff {  // dvb-s2
41                 enum {
42                         alpha_0_35, alpha_0_25, alpha_0_20, alpha_auto
43                 };
44         };
45         bool no_rotor_command_on_tune;
46         unsigned int frequency, symbol_rate;
47         int polarisation, fec, inversion, orbital_position, system, modulation, roll_off;
48 };
49 SWIG_ALLOW_OUTPUT_SIMPLE(eDVBFrontendParametersSatellite);
50
51 struct eDVBFrontendParametersCable
52 {
53 #ifndef SWIG
54         void set(const CableDeliverySystemDescriptor  &);
55 #endif
56         struct Inversion {
57                 enum {
58                         Off, On, Unknown
59                 };
60         };
61         struct FEC {
62                 enum {
63                         fAuto, f1_2, f2_3, f3_4, f5_6, f7_8, f8_9, fNone=15
64                 };
65         };
66         struct Modulation {
67                 enum {
68                         Auto, QAM16, QAM32, QAM64, QAM128, QAM256
69                 };
70         };
71         unsigned int frequency, symbol_rate;
72         int modulation, inversion, fec_inner;
73 };
74 SWIG_ALLOW_OUTPUT_SIMPLE(eDVBFrontendParametersCable);
75
76 struct eDVBFrontendParametersTerrestrial
77 {
78 #ifndef SWIG
79         void set(const TerrestrialDeliverySystemDescriptor  &);
80 #endif
81         struct Bandwidth {
82                 enum {
83                         Bw8MHz, Bw7MHz, Bw6MHz, /*Bw5MHz,*/ BwAuto
84                 }; // Bw5Mhz nyi (compatibilty with enigma1)
85         };
86         struct FEC {
87                 enum {
88                         f1_2, f2_3, f3_4, f5_6, f7_8, fAuto
89                 };
90         };
91         struct TransmissionMode {
92                 enum {
93                         TM2k, TM8k, /*TM4k,*/ TMAuto
94                 }; // TM4k nyi (compatibility with enigma1)
95         };
96         struct GuardInterval {
97                 enum {
98                         GI_1_32, GI_1_16, GI_1_8, GI_1_4, GI_Auto
99                 };
100         };
101         struct Hierarchy {
102                 enum {
103                         HNone, H1, H2, H4, HAuto
104                 };
105         };
106         struct Modulation {
107                 enum {
108                         QPSK, QAM16, QAM64, Auto
109                 };
110         };
111         struct Inversion
112         {
113                 enum {
114                         Off, On, Unknown
115                 };
116         };
117         unsigned int frequency;
118         int bandwidth;
119         int code_rate_HP, code_rate_LP;
120         int modulation;
121         int transmission_mode;
122         int guard_interval;
123         int hierarchy;
124         int inversion;
125 };
126 SWIG_ALLOW_OUTPUT_SIMPLE(eDVBFrontendParametersTerrestrial);
127
128 #endif