28 |
* SUCH DAMAGE. |
* SUCH DAMAGE. |
29 |
* |
* |
30 |
* |
* |
31 |
* $Id: settings.h,v 1.3 2006/05/05 21:52:21 debug Exp $ |
* $Id: settings.h,v 1.8 2006/09/21 11:53:26 debug Exp $ |
32 |
*/ |
*/ |
33 |
|
|
34 |
#include <inttypes.h> |
#include <inttypes.h> |
39 |
|
|
40 |
/* Storage types: */ |
/* Storage types: */ |
41 |
#define SETTINGS_TYPE_SUBSETTINGS 1 |
#define SETTINGS_TYPE_SUBSETTINGS 1 |
42 |
#define SETTINGS_TYPE_INT 2 |
#define SETTINGS_TYPE_STRING 2 |
43 |
#define SETTINGS_TYPE_INT32 3 |
#define SETTINGS_TYPE_INT 3 |
44 |
#define SETTINGS_TYPE_INT64 4 |
#define SETTINGS_TYPE_INT8 4 |
45 |
|
#define SETTINGS_TYPE_INT16 5 |
46 |
|
#define SETTINGS_TYPE_INT32 6 |
47 |
|
#define SETTINGS_TYPE_INT64 7 |
48 |
|
#define SETTINGS_TYPE_UINT 8 |
49 |
|
#define SETTINGS_TYPE_UINT8 9 |
50 |
|
#define SETTINGS_TYPE_UINT16 10 |
51 |
|
#define SETTINGS_TYPE_UINT32 11 |
52 |
|
#define SETTINGS_TYPE_UINT64 12 |
53 |
|
|
54 |
/* Presentation formats: */ |
/* Presentation formats: */ |
55 |
#define SETTINGS_FORMAT_DECIMAL 1 /* -123 */ |
#define SETTINGS_FORMAT_DECIMAL 1 /* -123 */ |
56 |
#define SETTINGS_FORMAT_HEX 2 /* 0xffffffff80000000 */ |
#define SETTINGS_FORMAT_HEX8 2 /* 0x12 */ |
57 |
#define SETTINGS_FORMAT_BOOL 3 /* true, false */ |
#define SETTINGS_FORMAT_HEX16 3 /* 0x1234 */ |
58 |
#define SETTINGS_FORMAT_YESNO 4 /* yes, no */ |
#define SETTINGS_FORMAT_HEX32 4 /* 0x80000000 */ |
59 |
|
#define SETTINGS_FORMAT_HEX64 5 /* 0xffffffff80000000 */ |
60 |
|
#define SETTINGS_FORMAT_BOOL 6 /* true, false */ |
61 |
|
#define SETTINGS_FORMAT_YESNO 7 /* yes, no */ |
62 |
|
#define SETTINGS_FORMAT_STRING 8 /* %s */ |
63 |
|
|
64 |
|
|
65 |
|
/* |
66 |
|
* settings.c: |
67 |
|
*/ |
68 |
|
|
|
/* settings.c: */ |
|
69 |
struct settings *settings_new(void); |
struct settings *settings_new(void); |
70 |
void settings_destroy(struct settings *settings); |
void settings_destroy(struct settings *settings); |
71 |
|
|
72 |
void settings_debugdump(struct settings *settings, const char *prefix, |
void settings_debugdump(struct settings *settings, const char *prefix, |
73 |
int recurse); |
int recurse); |
74 |
|
|
75 |
void settings_add(struct settings *settings, const char *name, int writable, |
void settings_add(struct settings *settings, const char *name, int writable, |
76 |
int type, int format, void *ptr); |
int type, int format, void *ptr); |
77 |
|
void settings_remove(struct settings *settings, const char *name); |
78 |
|
void settings_remove_all(struct settings *settings); |
79 |
|
|
80 |
|
int settings_access(struct settings *settings, const char *fullname, |
81 |
|
int writeflag, uint64_t *valuep); |
82 |
|
|
83 |
|
/* Result codes from settings_access: */ |
84 |
|
#define SETTINGS_OK 1 |
85 |
|
#define SETTINGS_NAME_NOT_FOUND 2 |
86 |
|
#define SETTINGS_READONLY 3 |
87 |
|
|
88 |
|
|
89 |
#endif /* SETTINGS_H */ |
#endif /* SETTINGS_H */ |