10 #define RESOURCE_LIBRARY_EXPAT
13 RESOURCE_BUFFER_SIZE
= BUFSIZ
16 enum resource_data_type_t
{
22 struct resource_text_t
{
26 struct resource_reference_t
{
28 struct resource_list_t
*list
;
31 struct resource_data_t
{
32 enum resource_data_type_t type
;
34 struct resource_text_t
*text
;
35 struct resource_reference_t
*reference
;
39 struct resource_list_t
{
40 struct resource_data_t
**data
;
45 struct resource_list_t
*list
;
48 void init_resource(struct resource_t
*resource
);
49 void write_default_settings(void);
50 int parse_resource(struct resource_t
*resource
, const char *filename
);
51 struct resource_list_t
*find_resource_in_list(struct resource_list_t
*list
,
53 char *find_resource_text(struct resource_list_t
*list
, const char *data
);
54 const char *lookup_resource_string(struct resource_t
*resource
,
55 const char *def
, ...);
56 long lookup_resource_number(struct resource_t
*resource
, long def
,
58 void free_resource(struct resource_t
*resource
);