source: trunk/TREEGEN/readcfg.h

Last change on this file was 16766, checked in by westram, 7 years ago
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.2 KB
Line 
1#ifndef READCFG_H
2#define READCFG_H
3
4#ifndef DEFINES_H
5#include "defines.h"
6#endif
7
8//  decodeFunc bekommt einen Zeiger auf den Text hinter dem
9//  Schluesselwort und einen Zeiger auf eine zu setzende lokale Variable
10/* */
11//  Rueckgabewerte:
12/* */
13//  0   =   Angabe war falsch (in diesem Fall wird eine ggf. mit der Funktion
14//                             setCfgError() gesetzte Fehlermeldung ausgeben)
15//  1   =   Angabe war korrekt (Das Schluesselwort darf nicht mehrfach
16//                              verwendet werden)
17//  2   =   Angabe war korrekt (Das Schluesselwort darf mehrfach
18//                              verwendet werden)
19
20typedef int (*decodeFunc)(str afterKeyword, void *varPointer);
21
22
23typedef struct S_cfgLine {
24    cstr        keyword,
25                defaultVal;
26    decodeFunc  decode;
27    void       *varPointer;
28    cstr        description;
29
30} *cfgLine;
31
32
33#ifdef __cplusplus
34extern "C" {
35#endif
36
37    // Das 'keyword' des letzten Elements des Arrays 'line' muss NULL sein!
38
39    int  readCfg     (cstr fname, struct S_cfgLine line[]);
40
41    // Optional kann hiermit eine Nachricht ausgegeben werden,
42    // falls das Decodieren fehlschlaegt
43
44    void setCfgError (cstr message);
45
46#ifdef __cplusplus
47}
48#endif
49
50#endif
Note: See TracBrowser for help on using the repository browser.