source: Daodan/src/Daodan_Config.h@ 1051

Last change on this file since 1051 was 1000, checked in by alloc, 11 years ago

Daodan 3.7

File size: 945 bytes
RevLine 
[838]1#ifndef DAODAN_CONFIG_H
2#define DAODAN_CONFIG_H
3
4#include "stdint.h"
5
[994]6typedef void (*cmd_callback)();
7
[993]8typedef enum {
[994]9 C_CMD,
[993]10 C_BOOL,
11 C_INT,
12 C_STRING,
13 EXT_BOOL
14} OptionType_t;
[838]15
[993]16typedef union {
17 int intBoolVal;
18 uint8_t* extBoolVal;
19 char* stringVal;
[994]20 cmd_callback callback;
[993]21} OptionValue_t;
[838]22
[993]23typedef struct {
24 char* name;
25 char* description;
26 OptionType_t type;
27 OptionValue_t defaultValue;
28 OptionValue_t value;
29} ConfigOption_t;
[838]30
[993]31typedef struct {
32 char* name;
33 char* description;
[1000]34 ConfigOption_t options[20];
[993]35} ConfigSection_t;
[838]36
[993]37
38void DDrConfig(int argc, char* argv[]);
[1000]39void DDrConfig_WriteIni();
[993]40
41ConfigOption_t* DDrConfig_GetOptOfType(const char* fullOptName, OptionType_t type);
42const char* DDrConfig_GetOptionTypeName(OptionType_t type);
[1000]43const char* DDrConfig_GetOptionValueString(ConfigOption_t* opt, char printdefault);
44char DDrConfig_NonDefaultOptionValue(ConfigOption_t* opt);
[993]45
[838]46#endif
Note: See TracBrowser for help on using the repository browser.