Go to the documentation of this file.
28 #ifndef GWENHYWFAR_DB_H
29 #define GWENHYWFAR_DB_H
31 #include <gwenhywfar/gwenhywfarapi.h>
32 #include <gwenhywfar/path.h>
33 #include <gwenhywfar/fastbuffer.h>
34 #include <gwenhywfar/types.h>
102 #define GWEN_DB_LINE_MAXSIZE 1024
119 #define GWEN_DB_FLAGS_ALLOW_EMPTY_STREAM 0x00008000
121 #define GWEN_DB_FLAGS_OVERWRITE_VARS 0x00010000
123 #define GWEN_DB_FLAGS_OVERWRITE_GROUPS 0x00020000
125 #define GWEN_DB_FLAGS_QUOTE_VARNAMES 0x00040000
127 #define GWEN_DB_FLAGS_QUOTE_VALUES 0x00080000
129 #define GWEN_DB_FLAGS_WRITE_SUBGROUPS 0x00100000
131 #define GWEN_DB_FLAGS_DETAILED_GROUPS 0x00200000
134 #define GWEN_DB_FLAGS_INDEND 0x00400000
137 #define GWEN_DB_FLAGS_ADD_GROUP_NEWLINES 0x00800000
140 #define GWEN_DB_FLAGS_USE_COLON 0x01000000
142 #define GWEN_DB_FLAGS_UNTIL_EMPTY_LINE 0x02000000
145 #define GWEN_DB_FLAGS_OMIT_TYPES 0x04000000
147 #define GWEN_DB_FLAGS_APPEND_FILE 0x08000000
149 #define GWEN_DB_FLAGS_ESCAPE_CHARVALUES 0x10000000
152 #define GWEN_DB_FLAGS_UNESCAPE_CHARVALUES 0x10000000
155 #define GWEN_DB_FLAGS_LOCKFILE 0x20000000
160 #define GWEN_DB_FLAGS_INSERT 0x40000000
165 #define GWEN_DB_FLAGS_DOSMODE 0x80000000
168 #define GWEN_DB_FLAGS_DEFAULT \
170 GWEN_DB_FLAGS_QUOTE_VALUES | \
171 GWEN_DB_FLAGS_WRITE_SUBGROUPS | \
172 GWEN_DB_FLAGS_DETAILED_GROUPS | \
173 GWEN_DB_FLAGS_INDEND | \
174 GWEN_DB_FLAGS_ADD_GROUP_NEWLINES | \
175 GWEN_DB_FLAGS_ESCAPE_CHARVALUES | \
176 GWEN_DB_FLAGS_UNESCAPE_CHARVALUES\
182 #define GWEN_DB_FLAGS_COMPACT \
184 GWEN_DB_FLAGS_QUOTE_VALUES | \
185 GWEN_DB_FLAGS_WRITE_SUBGROUPS | \
186 GWEN_DB_FLAGS_ESCAPE_CHARVALUES | \
187 GWEN_DB_FLAGS_UNESCAPE_CHARVALUES\
193 #define GWEN_DB_FLAGS_HTTP \
195 GWEN_DB_FLAGS_USE_COLON |\
196 GWEN_DB_FLAGS_UNTIL_EMPTY_LINE |\
197 GWEN_DB_FLAGS_OMIT_TYPES | \
198 GWEN_DB_FLAGS_DOSMODE \
207 #define GWEN_DB_NODE_FLAGS_DIRTY 0x00000001
209 #define GWEN_DB_NODE_FLAGS_VOLATILE 0x00000002
212 #define GWEN_DB_NODE_FLAGS_INHERIT_HASH_MECHANISM 0x00000004
214 #define GWEN_DB_NODE_FLAGS_SAFE 0x00000008
218 #define GWEN_DB_DEFAULT_LOCK_TIMEOUT 1000
378 typedef void *(*GWEN_DB_NODES_CB)(
GWEN_DB_NODE *node,
void *user_data);
567 unsigned int defValSize,
568 unsigned int *returnValueSize);
585 unsigned int valSize);
1133 unsigned int *size);