649aff77ece2475a87a21becdcfa22297946e855
[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 #ifndef SWIG
11         void set(const SatelliteDeliverySystemDescriptor  &);
12 #endif
13         struct Polarisation
14         {
15                 enum {
16                         Horizontal, Vertical, CircularLeft, CircularRight
17                 };
18         };
19         struct Inversion
20         {
21                 enum {
22                         Off, On, Unknown
23                 };
24         };
25         struct FEC
26         {
27                 enum {
28                         fAuto, f1_2, f2_3, f3_4, f5_6, f7_8, f8_9, fNone
29                 };
30         };
31         bool no_rotor_command_on_tune;
32         unsigned int frequency, symbol_rate;
33         int polarisation, fec, inversion, orbital_position;
34 };
35
36 struct eDVBFrontendParametersCable
37 {
38 #ifndef SWIG
39         void set(const CableDeliverySystemDescriptor  &);
40 #endif
41         struct Inversion
42         {
43                 enum {
44                         Off, On, Unknown
45                 };
46         };
47         struct FEC
48         {
49                 enum {
50                         fAuto, f1_2, f2_3, f3_4, f5_6, f7_8, f8_9, fNone
51                 };
52         };
53         struct Modulation {
54                 enum {
55                         Auto, QAM16, QAM32, QAM64, QAM128, QAM256
56                 };
57         };
58         unsigned int frequency, symbol_rate;
59         int modulation, inversion, fec_inner;
60 };
61
62 struct eDVBFrontendParametersTerrestrial
63 {
64 #ifndef SWIG
65  void set(const TerrestrialDeliverySystemDescriptor  &);
66 #endif
67         struct Bandwidth {
68                 enum { Bw8MHz, Bw7MHz, Bw6MHz, Bw5MHz, BwAuto };
69         };
70         struct FEC
71         {
72                 enum {
73                         f1_2, f2_3, f3_4, f5_6, f7_8, fAuto
74                 };
75         };
76         struct TransmissionMode {
77                 enum {
78                         TM2k, TM8k, TM4k, TMAuto
79                 };
80         };
81         struct GuardInterval {
82                 enum {
83                         GI_1_32, GI_1_16, GI_1_8, GI_1_4, GI_Auto
84                 };
85         };
86         struct Hierarchy {
87                 enum {
88                         HNone, H1, H2, H4, HAuto
89                 };
90         };
91         struct Modulation {
92                 enum {
93                         QPSK, QAM16, QAM64, Auto
94                 };
95         };
96         struct Inversion
97         {
98                 enum {
99                         Off, On, Unknown
100                 };
101         };
102         unsigned int frequency;
103         int bandwidth;
104         int code_rate_HP, code_rate_LP;
105         int modulation;
106         int transmission_mode;
107         int guard_interval;
108         int hierarchy;
109         int inversion;
110 };
111
112 #endif