vdr  2.6.1
config.h
Go to the documentation of this file.
1 /*
2  * config.h: Configuration file handling
3  *
4  * See the main source file 'vdr.c' for copyright information and
5  * how to reach the author.
6  *
7  * $Id: config.h 5.9 2022/02/02 10:56:43 kls Exp $
8  */
9 
10 #ifndef __CONFIG_H
11 #define __CONFIG_H
12 
13 #include <arpa/inet.h>
14 #include <stdio.h>
15 #include <stdlib.h>
16 #include <string.h>
17 #include <time.h>
18 #include <unistd.h>
19 #include "i18n.h"
20 #include "font.h"
21 #include "tools.h"
22 
23 // VDR's own version number:
24 
25 #define VDRVERSION "2.6.1"
26 #define VDRVERSNUM 20601 // Version * 10000 + Major * 100 + Minor
27 
28 // The plugin API's version number:
29 
30 #define APIVERSION "2.6.1"
31 #define APIVERSNUM 20601 // Version * 10000 + Major * 100 + Minor
32 
33 // When loading plugins, VDR searches them by their APIVERSION, which
34 // may be smaller than VDRVERSION in case there have been no changes to
35 // VDR header files since the last APIVERSION. This allows compiled
36 // plugins to work with newer versions of the core VDR as long as no
37 // VDR header files have changed.
38 
39 // The MainMenuHook Patch's version number:
40 #define MAINMENUHOOKSVERSION "1.0.1"
41 #define MAINMENUHOOKSVERSNUM 10001 // Version * 10000 + Major * 100 + Minor
42 
43 #define MAXPRIORITY 99
44 #define MINPRIORITY (-MAXPRIORITY)
45 #define LIVEPRIORITY 0 // priority used when selecting a device for live viewing
46 #define TRANSFERPRIORITY (LIVEPRIORITY - 1) // priority used for actual local Transfer Mode
47 #define IDLEPRIORITY (MINPRIORITY - 1) // priority of an idle device
48 #define MAXLIFETIME 99
49 #define DEFINSTRECTIME 180 // default instant recording time (minutes)
50 
51 #define TIMERMACRO_TITLE "TITLE"
52 #define TIMERMACRO_EPISODE "EPISODE"
53 #define TIMERMACRO_BEFORE "{<}"
54 #define TIMERMACRO_MATCH "{=}"
55 #define TIMERMACRO_AFTER "{>}"
56 
57 #define TIMERPATTERN_AVOID "@"
58 #define TIMERPATTERN_BEGIN "^"
59 #define TIMERPATTERN_END "$"
60 
61 #define MINOSDWIDTH 480
62 #define MAXOSDWIDTH 1920
63 #define MINOSDHEIGHT 324
64 #define MAXOSDHEIGHT 1200
65 
66 #define MaxFileName NAME_MAX // obsolete - use NAME_MAX directly instead!
67 #define MaxSkinName 16
68 #define MaxThemeName 16
69 
70 // Basically VDR works according to the DVB standard, but there are countries/providers
71 // that use other standards, which in some details deviate from the DVB standard.
72 // This makes it necessary to handle things differently in some areas, depending on
73 // which standard is actually used. The following macros are used to distinguish
74 // these cases (make sure to adjust cMenuSetupDVB::standardComplianceTexts accordingly
75 // when adding a new standard):
76 
77 #define STANDARD_DVB 0
78 #define STANDARD_ANSISCTE 1
79 #define STANDARD_NORDIG 2
80 
81 typedef uint32_t in_addr_t; //XXX from /usr/include/netinet/in.h (apparently this is not defined on systems with glibc < 2.2)
82 
83 class cSVDRPhost : public cListObject {
84 private:
85  struct in_addr addr;
87 public:
88  cSVDRPhost(void);
89  bool Parse(const char *s);
90  bool IsLocalhost(void);
91  bool Accepts(in_addr_t Address);
92  };
93 
95 private:
96  int size;
97  int *array;
98 public:
99  cSatCableNumbers(int Size, const char *s = NULL);
101  int Size(void) const { return size; }
102  int *Array(void) { return array; }
103  bool FromString(const char *s);
104  cString ToString(void);
105  int FirstDeviceIndex(int DeviceIndex) const;
111  };
112 
113 template<class T> class cConfig : public cList<T> {
114 private:
115  char *fileName;
117  void Clear(void)
118  {
119  free(fileName);
120  fileName = NULL;
121  cList<T>::Clear();
122  }
123 public:
124  cConfig(const char *NeedsLocking = NULL): cList<T>(NeedsLocking) { fileName = NULL; }
125  virtual ~cConfig() { free(fileName); }
126  const char *FileName(void) { return fileName; }
127  bool Load(const char *FileName = NULL, bool AllowComments = false, bool MustExist = false)
128  {
130  if (FileName) {
131  free(fileName);
132  fileName = strdup(FileName);
133  allowComments = AllowComments;
134  }
135  bool result = !MustExist;
136  if (fileName && access(fileName, F_OK) == 0) {
137  isyslog("loading %s", fileName);
138  FILE *f = fopen(fileName, "r");
139  if (f) {
140  char *s;
141  int line = 0;
142  cReadLine ReadLine;
143  result = true;
144  while ((s = ReadLine.Read(f)) != NULL) {
145  line++;
146  if (allowComments) {
147  char *p = strchr(s, '#');
148  if (p)
149  *p = 0;
150  }
151  stripspace(s);
152  if (!isempty(s)) {
153  T *l = new T;
154  if (l->Parse(s))
155  this->Add(l);
156  else {
157  esyslog("ERROR: error in %s, line %d", fileName, line);
158  delete l;
159  result = false;
160  }
161  }
162  }
163  fclose(f);
164  }
165  else {
167  result = false;
168  }
169  }
170  if (!result)
171  fprintf(stderr, "vdr: error while reading '%s'\n", fileName);
172  return result;
173  }
174  bool Save(void) const
175  {
176  bool result = true;
177  T *l = (T *)this->First();
178  cSafeFile f(fileName);
179  if (f.Open()) {
180  while (l) {
181  if (!l->Save(f)) {
182  result = false;
183  break;
184  }
185  l = (T *)l->Next();
186  }
187  if (!f.Close())
188  result = false;
189  }
190  else
191  result = false;
192  return result;
193  }
194  };
195 
196 class cNestedItem : public cListObject {
197 private:
198  char *text;
200 public:
201  cNestedItem(const char *Text, bool WithSubItems = false);
202  virtual ~cNestedItem();
203  virtual int Compare(const cListObject &ListObject) const;
204  const char *Text(void) const { return text; }
206  void AddSubItem(cNestedItem *Item);
207  void SetText(const char *Text);
208  void SetSubItems(bool On);
209  };
210 
211 class cNestedItemList : public cList<cNestedItem> {
212 private:
213  char *fileName;
214  bool Parse(FILE *f, cList<cNestedItem> *List, int &Line);
215  bool Write(FILE *f, cList<cNestedItem> *List, int Indent = 0);
216 public:
217  cNestedItemList(void);
218  virtual ~cNestedItemList();
219  void Clear(void);
220  bool Load(const char *FileName);
221  bool Save(void);
222  };
223 
224 class cSVDRPhosts : public cConfig<cSVDRPhost> {
225 public:
226  bool LocalhostOnly(void);
227  bool Acceptable(in_addr_t Address);
228  };
229 
230 extern cNestedItemList Folders;
233 extern cSVDRPhosts SVDRPhosts;
234 
235 class cSetupLine : public cListObject {
236 private:
237  char *plugin;
238  char *name;
239  char *value;
240 public:
241  cSetupLine(void);
242  cSetupLine(const char *Name, const char *Value, const char *Plugin = NULL);
243  virtual ~cSetupLine();
244  virtual int Compare(const cListObject &ListObject) const;
245  const char *Plugin(void) { return plugin; }
246  const char *Name(void) { return name; }
247  const char *Value(void) { return value; }
248  bool Parse(char *s);
249  bool Save(FILE *f);
250  };
251 
252 class cSetup : public cConfig<cSetupLine> {
253  friend class cPlugin; // needs to be able to call Store()
254 private:
255  void StoreLanguages(const char *Name, int *Values);
256  bool ParseLanguages(const char *Value, int *Values);
257  bool Parse(const char *Name, const char *Value);
258  cSetupLine *Get(const char *Name, const char *Plugin = NULL);
259  void Store(const char *Name, const char *Value, const char *Plugin = NULL, bool AllowMultiple = false);
260  void Store(const char *Name, int Value, const char *Plugin = NULL);
261  void Store(const char *Name, double &Value, const char *Plugin = NULL);
262 public:
263  // Also adjust cMenuSetup (menu.c) when adding parameters here!
275  char NameInstantRecord[NAME_MAX + 1];
277  int LnbSLOF;
280  int DiSEqC;
282  int SiteLat;
283  int SiteLon;
303  char SVDRPHostName[HOST_NAME_MAX];
304  char SVDRPDefaultHost[HOST_NAME_MAX];
314  int UseVps;
331  double OSDAspect;
338  double FontOsdSizeP;
339  double FontSmlSizeP;
340  double FontFixSizeP;
363  int ResumeID;
376  cSetup(void);
377  cSetup& operator= (const cSetup &s);
378  bool Load(const char *FileName);
379  bool Save(void);
380  };
381 
382 extern cSetup Setup;
383 
384 #endif //__CONFIG_H
cSetup::operator=
cSetup & operator=(const cSetup &s)
Definition: config.c:502
cSetup::DefaultPriority
int DefaultPriority
Definition: config.h:309
cSetup::LnbSLOF
int LnbSLOF
Definition: config.h:277
MaxSkinName
#define MaxSkinName
Definition: config.h:67
cSetupLine::cSetupLine
cSetupLine(void)
Definition: config.c:306
cSetup::AdaptiveSkipInitial
int AdaptiveSkipInitial
Definition: config.h:357
cSetup::SubtitleLanguages
int SubtitleLanguages[I18N_MAX_LANGUAGES+1]
Definition: config.h:294
cSetup::DisplaySubtitles
int DisplaySubtitles
Definition: config.h:293
cReadLine
Definition: tools.h:421
cSetup::RecSortingDirection
int RecSortingDirection
Definition: config.h:320
cSatCableNumbers::Size
int Size(void) const
Definition: config.h:101
cSetup::__BeginData__
int __BeginData__
Definition: config.h:264
cConfig::Save
bool Save(void) const
Definition: config.h:174
cSetup::RcRepeatDelay
int RcRepeatDelay
Definition: config.h:307
cSetup::VolumeSteps
int VolumeSteps
Definition: config.h:366
cSetup::FoldersInTimerMenu
int FoldersInTimerMenu
Definition: config.h:317
cSetup::OSDLeft
int OSDLeft
Definition: config.h:330
cSetup::SubtitleOffset
int SubtitleOffset
Definition: config.h:295
cSetup::SplitEditedFiles
int SplitEditedFiles
Definition: config.h:345
cSetupLine::value
char * value
Definition: config.h:239
isempty
bool isempty(const char *s)
Definition: tools.c:349
cSatCableNumbers::~cSatCableNumbers
~cSatCableNumbers()
Definition: config.c:76
cSetup::ColorKey3
int ColorKey3
Definition: config.h:322
cSetup::SiteLat
int SiteLat
Definition: config.h:282
cSetup::OSDWidth
int OSDWidth
Definition: config.h:330
cSetup::AdaptiveSkipTimeout
int AdaptiveSkipTimeout
Definition: config.h:358
cNestedItemList
Definition: config.h:211
cSatCableNumbers::size
int size
Definition: config.h:96
cSVDRPhost::addr
struct in_addr addr
Definition: config.h:85
cSetup::InitialChannel
cString InitialChannel
Definition: config.h:374
cSatCableNumbers::cSatCableNumbers
cSatCableNumbers(int Size, const char *s=NULL)
Definition: config.c:69
cSetup::VideoFormat
int VideoFormat
Definition: config.h:324
cSetup::ChannelInfoTime
int ChannelInfoTime
Definition: config.h:328
cPlugin
Definition: plugin.h:22
cSetupLine::Plugin
const char * Plugin(void)
Definition: config.h:245
cSetup::MarginStop
int MarginStop
Definition: config.h:291
cNestedItem::Compare
virtual int Compare(const cListObject &ListObject) const
Must return 0 if this object is equal to ListObject, a positive value if it is "greater",...
Definition: config.c:143
cSetup::OSDLanguage
char OSDLanguage[I18N_MAX_LOCALE_LEN]
Definition: config.h:265
cSetup::SetSystemTime
int SetSystemTime
Definition: config.h:287
cSetupLine::name
char * name
Definition: config.h:238
cSetup::SkipSeconds
int SkipSeconds
Definition: config.h:361
cNestedItemList::~cNestedItemList
virtual ~cNestedItemList()
Definition: config.c:179
cSetup::Get
cSetupLine * Get(const char *Name, const char *Plugin=NULL)
Definition: config.c:510
cSatCableNumbers::ToString
cString ToString(void)
Definition: config.c:107
cSetup::SVDRPHostName
char SVDRPHostName[HOST_NAME_MAX]
Definition: config.h:303
cSetup::VpsMargin
int VpsMargin
Definition: config.h:315
cSetup::OSDTopP
double OSDTopP
Definition: config.h:329
cSetup::PauseOnMarkSet
int PauseOnMarkSet
Definition: config.h:353
cSetup::StoreLanguages
void StoreLanguages(const char *Name, int *Values)
Definition: config.c:567
cSetup::MaxVideoFileSize
int MaxVideoFileSize
Definition: config.h:344
cSetup::ParseLanguages
bool ParseLanguages(const char *Value, int *Values)
Definition: config.c:586
MaxThemeName
#define MaxThemeName
Definition: config.h:68
cConfig::FileName
const char * FileName(void)
Definition: config.h:126
cSetup::Load
bool Load(const char *FileName)
Definition: config.c:542
cSetup::LnbFrequLo
int LnbFrequLo
Definition: config.h:278
cSetup::InitialVolume
int InitialVolume
Definition: config.h:369
cSVDRPhost::cSVDRPhost
cSVDRPhost(void)
Definition: config.c:28
cSetup::__EndData__
int __EndData__
Definition: config.h:373
cSetup::AntiAlias
int AntiAlias
Definition: config.h:334
cSetup::FontOsdSize
int FontOsdSize
Definition: config.h:341
cSetup::UseSmallFont
int UseSmallFont
Definition: config.h:333
cSetup::OSDWidthP
double OSDWidthP
Definition: config.h:329
cListBase::Add
void Add(cListObject *Object, cListObject *After=NULL)
Definition: tools.c:2184
cSVDRPhost
Definition: config.h:83
cSetup::UpdateChannels
int UpdateChannels
Definition: config.h:325
cSetup::UseDolbyDigital
int UseDolbyDigital
Definition: config.h:326
cPlugin::Name
const char * Name(void)
Definition: plugin.h:36
cNestedItemList::Write
bool Write(FILE *f, cList< cNestedItem > *List, int Indent=0)
Definition: config.c:213
cSetup::TimeoutRequChInfo
int TimeoutRequChInfo
Definition: config.h:270
cConfig::Clear
void Clear(void)
Definition: config.h:117
cConfig::~cConfig
virtual ~cConfig()
Definition: config.h:125
cSetup::EPGBugfixLevel
int EPGBugfixLevel
Definition: config.h:299
cSetup::FontFix
char FontFix[MAXFONTNAME]
Definition: config.h:337
cSetup::NameInstantRecord
char NameInstantRecord[NAME_MAX+1]
Definition: config.h:275
cSetupLine::Parse
bool Parse(char *s)
Definition: config.c:340
cNestedItemList::Load
bool Load(const char *FileName)
Definition: config.c:234
cNestedItem::SetSubItems
void SetSubItems(bool On)
Definition: config.c:162
cNestedItem::text
char * text
Definition: config.h:198
cSetup::VideoDisplayFormat
int VideoDisplayFormat
Definition: config.h:323
cSetup::PositionerSpeed
int PositionerSpeed
Definition: config.h:284
cSetup::CurrentVolume
int CurrentVolume
Definition: config.h:365
cSetup::MenuScrollWrap
int MenuScrollWrap
Definition: config.h:272
cSetup::PausePriority
int PausePriority
Definition: config.h:312
I18N_MAX_LANGUAGES
#define I18N_MAX_LANGUAGES
Definition: i18n.h:18
cConfig::cConfig
cConfig(const char *NeedsLocking=NULL)
Definition: config.h:124
cConfig::allowComments
bool allowComments
Definition: config.h:116
cSatCableNumbers::FromString
bool FromString(const char *s)
Definition: config.c:81
cNestedItemList::Save
bool Save(void)
Definition: config.c:258
cSetup::PositionerLastLon
int PositionerLastLon
Definition: config.h:286
cNestedItemList::Parse
bool Parse(FILE *f, cList< cNestedItem > *List, int &Line)
Definition: config.c:184
cNestedItemList::cNestedItemList
cNestedItemList(void)
Definition: config.c:174
cSetup::VolumeLinearize
int VolumeLinearize
Definition: config.h:367
cSetupLine::Compare
virtual int Compare(const cListObject &ListObject) const
Must return 0 if this object is equal to ListObject, a positive value if it is "greater",...
Definition: config.c:325
cSetup::MinUserInactivity
int MinUserInactivity
Definition: config.h:347
cSetup::FontFixSize
int FontFixSize
Definition: config.h:343
cSVDRPhosts::LocalhostOnly
bool LocalhostOnly(void)
Definition: config.c:282
cSetup::ZapTimeout
int ZapTimeout
Definition: config.h:305
cSetup::TimeSource
int TimeSource
Definition: config.h:288
cSetup::PauseOnMarkJump
int PauseOnMarkJump
Definition: config.h:354
cSetup::FontSml
char FontSml[MAXFONTNAME]
Definition: config.h:336
SVDRPhosts
cSVDRPhosts SVDRPhosts
Definition: config.c:280
cSetup::SiteLon
int SiteLon
Definition: config.h:283
cSetup::PauseLifetime
int PauseLifetime
Definition: config.h:312
cListObject
Definition: tools.h:540
cSetup::InstantRecordTime
int InstantRecordTime
Definition: config.h:276
cSetupLine
Definition: config.h:235
stripspace
char * stripspace(char *s)
Definition: tools.c:219
Commands
cNestedItemList Commands
Definition: config.c:275
Setup
cSetup Setup
Definition: config.c:372
cSetup::OSDHeight
int OSDHeight
Definition: config.h:330
cSetup::ShowReplayMode
int ShowReplayMode
Definition: config.h:350
i18n.h
cSetup
Definition: config.h:252
cSetup::AlwaysSortFoldersFirst
int AlwaysSortFoldersFirst
Definition: config.h:318
cNestedItem::SetText
void SetText(const char *Text)
Definition: config.c:156
cSetup::EPGLanguages
int EPGLanguages[I18N_MAX_LANGUAGES+1]
Definition: config.h:297
cSetup::PrimaryDVB
int PrimaryDVB
Definition: config.h:268
cNestedItem::cNestedItem
cNestedItem(const char *Text, bool WithSubItems=false)
Definition: config.c:131
cSetup::ShowInfoOnChSwitch
int ShowInfoOnChSwitch
Definition: config.h:269
cSetup::OSDSkin
char OSDSkin[MaxSkinName]
Definition: config.h:266
cSetup::OSDMessageTime
int OSDMessageTime
Definition: config.h:332
cListBase::Clear
virtual void Clear(void)
Definition: tools.c:2261
cSetup::ResumeID
int ResumeID
Definition: config.h:363
cSVDRPhosts
Definition: config.h:224
cSetup::DefaultLifetime
int DefaultLifetime
Definition: config.h:309
font.h
cSetup::SVDRPPeering
int SVDRPPeering
Definition: config.h:302
cSetup::ShowChannelNamesWithSource
int ShowChannelNamesWithSource
Definition: config.h:371
cSetup::MultiSpeedMode
int MultiSpeedMode
Definition: config.h:349
cConfig::Load
bool Load(const char *FileName=NULL, bool AllowComments=false, bool MustExist=false)
Definition: config.h:127
cSetup::ChannelEntryTimeout
int ChannelEntryTimeout
Definition: config.h:306
cSetupLine::~cSetupLine
virtual ~cSetupLine()
Definition: config.c:318
cSetup::ColorKey1
int ColorKey1
Definition: config.h:322
cSetup::SubtitleBgTransparency
int SubtitleBgTransparency
Definition: config.h:296
cSetup::CurrentDolby
int CurrentDolby
Definition: config.h:368
cSetupLine::Name
const char * Name(void)
Definition: config.h:246
cSetup::RcRepeatDelta
int RcRepeatDelta
Definition: config.h:308
cNestedItem::Text
const char * Text(void) const
Definition: config.h:204
cSetup::OSDAspect
double OSDAspect
Definition: config.h:331
cNestedItem::AddSubItem
void AddSubItem(cNestedItem *Item)
Definition: config.c:148
cList
Definition: tools.h:641
cSetupLine::Value
const char * Value(void)
Definition: config.h:247
cNestedItem
Definition: config.h:196
cSetup::DiSEqC
int DiSEqC
Definition: config.h:280
cNestedItemList::Clear
void Clear(void)
Definition: config.c:227
cNestedItem::~cNestedItem
virtual ~cNestedItem()
Definition: config.c:137
cList::First
const T * First(void) const
Returns the first element in this list, or NULL if the list is empty.
Definition: tools.h:653
cSetup::CurrentChannel
int CurrentChannel
Definition: config.h:364
cSetup::NextWakeupTime
time_t NextWakeupTime
Definition: config.h:348
cSetup::AdaptiveSkipAlternate
int AdaptiveSkipAlternate
Definition: config.h:359
cSetupLine::Save
bool Save(FILE *f)
Definition: config.c:365
cSetup::ChannelInfoPos
int ChannelInfoPos
Definition: config.h:327
cSetup::FontOsdSizeP
double FontOsdSizeP
Definition: config.h:338
cNestedItemList::fileName
char * fileName
Definition: config.h:213
cSetup::SVDRPDefaultHost
char SVDRPDefaultHost[HOST_NAME_MAX]
Definition: config.h:304
cSatCableNumbers
Definition: config.h:94
cSetup::UsePositioner
int UsePositioner
Definition: config.h:281
cSetup::cSetup
cSetup(void)
Definition: config.c:374
cSetupLine::plugin
char * plugin
Definition: config.h:237
cSetup::MenuScrollPage
int MenuScrollPage
Definition: config.h:271
cString
Definition: tools.h:178
cSetup::FontSmlSize
int FontSmlSize
Definition: config.h:342
cSatCableNumbers::FirstDeviceIndex
int FirstDeviceIndex(int DeviceIndex) const
Returns the first device index (starting at 0) that uses the same sat cable number as the device with...
Definition: config.c:116
cSetup::RecordKeyHandling
int RecordKeyHandling
Definition: config.h:310
cSetup::Parse
bool Parse(const char *Name, const char *Value)
Definition: config.c:602
in_addr_t
uint32_t in_addr_t
Definition: config.h:81
cSetup::OSDTop
int OSDTop
Definition: config.h:330
cSetup::AdaptiveSkipPrevNext
int AdaptiveSkipPrevNext
Definition: config.h:360
cSetup::UseVps
int UseVps
Definition: config.h:314
cNestedItem::SubItems
cList< cNestedItem > * SubItems(void)
Definition: config.h:205
cSetup::EPGScanTimeout
int EPGScanTimeout
Definition: config.h:298
cSetup::MarginStart
int MarginStart
Definition: config.h:291
cSetup::PauseKeyHandling
int PauseKeyHandling
Definition: config.h:311
cConfig::fileName
char * fileName
Definition: config.h:115
cSetup::MarkInstantRecord
int MarkInstantRecord
Definition: config.h:274
cNestedItem::subItems
cList< cNestedItem > * subItems
Definition: config.h:199
cSetup::OSDTheme
char OSDTheme[MaxThemeName]
Definition: config.h:267
MAXFONTNAME
#define MAXFONTNAME
Definition: font.h:17
cSetup::SkipEdited
int SkipEdited
Definition: config.h:355
cSetup::EPGLinger
int EPGLinger
Definition: config.h:300
cSetup::Save
bool Save(void)
Definition: config.c:734
cSetup::MinEventTimeout
int MinEventTimeout
Definition: config.h:347
cSetup::LnbFrequHi
int LnbFrequHi
Definition: config.h:279
cSetup::ProgressDisplayTime
int ProgressDisplayTime
Definition: config.h:352
List
Definition: runvdr.c:107
cSetup::DefaultSortModeRec
int DefaultSortModeRec
Definition: config.h:319
Folders
cNestedItemList Folders
Definition: config.c:274
cConfig
Definition: config.h:113
cSetup::MenuKeyCloses
int MenuKeyCloses
Definition: config.h:273
cSafeFile
Definition: tools.h:488
cSetup::ColorKey2
int ColorKey2
Definition: config.h:322
cSafeFile::Close
bool Close(void)
Definition: tools.c:1782
cSetup::ShowRemainingTime
int ShowRemainingTime
Definition: config.h:351
cSetup::RecordingDirs
int RecordingDirs
Definition: config.h:316
cSetup::UseSubtitle
int UseSubtitle
Definition: config.h:313
cSVDRPhost::mask
in_addr_t mask
Definition: config.h:86
cSVDRPhost::Accepts
bool Accepts(in_addr_t Address)
Definition: config.c:62
cReadLine::Read
char * Read(FILE *f)
Definition: tools.c:1481
cSetup::ChannelsWrap
int ChannelsWrap
Definition: config.h:370
RecordingCommands
cNestedItemList RecordingCommands
Definition: config.c:276
cSVDRPhost::IsLocalhost
bool IsLocalhost(void)
Definition: config.c:57
cSetup::StandardCompliance
int StandardCompliance
Definition: config.h:290
cSetup::OSDHeightP
double OSDHeightP
Definition: config.h:329
cSVDRPhosts::Acceptable
bool Acceptable(in_addr_t Address)
Definition: config.c:293
cSafeFile::Open
bool Open(void)
Definition: tools.c:1772
cSVDRPhost::Parse
bool Parse(const char *s)
Definition: config.c:34
tools.h
cSetup::SkipSecondsRepeat
int SkipSecondsRepeat
Definition: config.h:362
isyslog
#define isyslog(a...)
Definition: tools.h:36
cSetup::EmergencyExit
int EmergencyExit
Definition: config.h:372
cSetup::DeviceBondings
cString DeviceBondings
Definition: config.h:375
cSetup::FontOsd
char FontOsd[MAXFONTNAME]
Definition: config.h:335
cSetup::AudioLanguages
int AudioLanguages[I18N_MAX_LANGUAGES+1]
Definition: config.h:292
I18N_MAX_LOCALE_LEN
#define I18N_MAX_LOCALE_LEN
Definition: i18n.h:17
esyslog
#define esyslog(a...)
Definition: tools.h:35
cSetup::Store
void Store(const char *Name, const char *Value, const char *Plugin=NULL, bool AllowMultiple=false)
Definition: config.c:521
cSetup::SVDRPTimeout
int SVDRPTimeout
Definition: config.h:301
cSetup::DelTimeshiftRec
int DelTimeshiftRec
Definition: config.h:346
cSetup::TimeTransponder
int TimeTransponder
Definition: config.h:289
cSetup::FontFixSizeP
double FontFixSizeP
Definition: config.h:340
cSetup::PauseAtLastMark
int PauseAtLastMark
Definition: config.h:356
cSetup::OSDLeftP
double OSDLeftP
Definition: config.h:329
LOG_ERROR_STR
#define LOG_ERROR_STR(s)
Definition: tools.h:40
cSatCableNumbers::array
int * array
Definition: config.h:97
cSetup::ColorKey0
int ColorKey0
Definition: config.h:322
cSatCableNumbers::Array
int * Array(void)
Definition: config.h:102
cSetup::SubtitleFgTransparency
int SubtitleFgTransparency
Definition: config.h:296
cSetup::PositionerSwing
int PositionerSwing
Definition: config.h:285
cSetup::NumberKeysForChars
int NumberKeysForChars
Definition: config.h:321
cSetup::FontSmlSizeP
double FontSmlSizeP
Definition: config.h:339