-
Notifications
You must be signed in to change notification settings - Fork 4
/
config.h
147 lines (134 loc) · 4.24 KB
/
config.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
/*
* config.h: Frontend Status Monitor plugin for the Video Disk Recorder
*
* See the README file for copyright information and how to reach the author.
*
*/
#ifndef __FEMON_CONFIG_H
#define __FEMON_CONFIG_H
#define MaxSvdrpIp 15 // xxx.xxx.xxx.xxx
enum eFemonModes
{
eFemonModeBasic,
eFemonModeTransponder,
eFemonModeStream,
eFemonModeAC3,
eFemonModeMaxNumber
};
enum eFemonSignalUnit
{
eFemonSignalUnitdBm,
eFemonSignalUnitdBuV,
eFemonSignalUnitdBV,
eFemonSignalUnitMaxNumber
};
class cFemonConfig
{
private:
unsigned int traceModeM;
int hideMenuM;
int displayModeM;
int skinM;
int themeM;
int positionM;
int downscaleM;
int signalUnitM;
int redLimitM;
int greenLimitM;
int updateIntervalM;
int analyzeStreamM;
int calcIntervalM;
int useSvdrpM;
int svdrpPortM;
char svdrpIpM[MaxSvdrpIp + 1]; // must end with additional null
public:
enum eTraceMode {
eTraceModeNormal = 0x0000,
eTraceModeDebug1 = 0x0001,
eTraceModeDebug2 = 0x0002,
eTraceModeDebug3 = 0x0004,
eTraceModeDebug4 = 0x0008,
eTraceModeDebug5 = 0x0010,
eTraceModeDebug6 = 0x0020,
eTraceModeDebug7 = 0x0040,
eTraceModeDebug8 = 0x0080,
eTraceModeDebug9 = 0x0100,
eTraceModeDebug10 = 0x0200,
eTraceModeDebug11 = 0x0400,
eTraceModeDebug12 = 0x0800,
eTraceModeDebug13 = 0x1000,
eTraceModeDebug14 = 0x2000,
eTraceModeDebug15 = 0x4000,
eTraceModeDebug16 = 0x8000,
eTraceModeMask = 0xFFFF
};
cFemonConfig();
unsigned int GetTraceMode(void) const { return traceModeM; }
bool IsTraceMode(eTraceMode modeP) const { return (traceModeM & modeP); }
int GetHideMenu(void) const { return hideMenuM; }
int GetDisplayMode(void) const { return displayModeM; }
int GetSkin(void) const { return skinM; }
int GetTheme(void) const { return themeM; }
int GetPosition(void) const { return positionM; }
int GetDownscale(void) const { return downscaleM; }
int GetSignalUnit(void) const { return signalUnitM; }
int GetRedLimit(void) const { return redLimitM; }
int GetGreenLimit(void) const { return greenLimitM; }
int GetUpdateInterval(void) const { return updateIntervalM; }
int GetAnalyzeStream(void) const { return analyzeStreamM; }
int GetCalcInterval(void) const { return calcIntervalM; }
int GetUseSvdrp(void) const { return useSvdrpM; }
int GetSvdrpPort(void) const { return svdrpPortM; }
const char *GetSvdrpIp(void) const { return svdrpIpM; }
void SetTraceMode(unsigned int modeP) { traceModeM = (modeP & eTraceModeMask); }
void SetHideMenu(int hideMenuP) { hideMenuM = hideMenuP; }
void SetDisplayMode(int displayModeP) { if (displayModeM < 0 || displayModeM >= eFemonModeMaxNumber) displayModeM = 0; else displayModeM = displayModeP; }
void SetSkin(int skinP) { skinM = skinP; }
void SetTheme(int themeP) { themeM = themeP; }
void SetPosition(int positionP) { positionM = positionP; }
void SetDownscale(int downscaleP) { downscaleM = downscaleP; }
void SetSignalUnit(int signalUnitP) { signalUnitM = signalUnitP; }
void SetRedLimit(int redLimitP) { redLimitM = redLimitP; }
void SetGreenLimit(int greenLimitP) { greenLimitM = greenLimitP; }
void SetUpdateInterval(int updateIntervalP) { updateIntervalM = updateIntervalP; }
void SetAnalyzeStream(int analyzeStreamP) { analyzeStreamM = analyzeStreamP; }
void SetCalcInterval(int calcIntervalP) { calcIntervalM = calcIntervalP; }
void SetUseSvdrp(int useSvdrpP) { useSvdrpM = useSvdrpP; }
void SetSvdrpPort(int svdrpPortP) { svdrpPortM = svdrpPortP; }
void SetSvdrpIp(const char *strP);
};
extern cFemonConfig FemonConfig;
enum eFemonSkins
{
eFemonSkinClassic,
eFemonSkinElchi,
eFemonSkinMaxNumber
};
enum eFemonThemes
{
eFemonThemeClassic,
eFemonThemeElchi,
eFemonThemeSTTNG,
eFemonThemeDeepBlue,
eFemonThemeMoronimo,
eFemonThemeEnigma,
eFemonThemeEgalsTry,
eFemonThemeDuotone,
eFemonThemeSilverGreen,
eFemonThemePearlHD,
eFemonThemeMaxNumber
};
struct cFemonTheme
{
int bpp;
unsigned int clrBackground;
unsigned int clrTitleBackground;
unsigned int clrTitleText;
unsigned int clrActiveText;
unsigned int clrInactiveText;
unsigned int clrRed;
unsigned int clrYellow;
unsigned int clrGreen;
};
extern const cFemonTheme FemonTheme[eFemonThemeMaxNumber];
#endif // __FEMON_CONFIG_H