@@ -0,0 +1,33 @@
|
||||
#ifndef CGE_CONF_H
|
||||
#define CGE_CONF_H
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct CgeConfIO {
|
||||
int (*read)(void *ctx, void *buffer, size_t size, size_t *actual);
|
||||
void *ctx;
|
||||
} CgeConfIO;
|
||||
|
||||
enum CgeConfEvent {
|
||||
CGE_CONF_SECTION,
|
||||
CGE_CONF_KEYVALUE,
|
||||
};
|
||||
|
||||
typedef void (*CgeConfCb)(int type, const char *key, const char *value,
|
||||
void *user);
|
||||
|
||||
int CgeConfFromString(const char *str, CgeConfCb callback, void *user);
|
||||
int CgeConfFromMemory(const char *buffer, size_t size, CgeConfCb callback,
|
||||
void *user);
|
||||
int CgeConfFromFile(const char *path, CgeConfCb callback, void *user);
|
||||
int CgeConfFromCb(CgeConfIO *io, CgeConfCb callback, void *user);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* CGE_CONF_H */
|
||||
Reference in New Issue
Block a user