39 * line dlist |
39 * line dlist |
40 * mempool |
40 * mempool |
41 * object |
41 * object |
42 */ |
42 */ |
43 |
43 |
44 ObjectConfig *load_object_config(char *file) { |
|
45 FILE *in = fopen(file, "r"); |
|
46 if(in == NULL) { |
|
47 return NULL; |
|
48 } |
|
49 |
|
50 ObjectConfig *conf = malloc(sizeof(ObjectConfig)); |
|
51 conf->parser.parse = objconf_parse; |
|
52 conf->file = file; |
|
53 //conf->conditions = NULL; |
|
54 conf->levels = NULL; |
|
55 conf->objects = cxLinkedListCreate(cxDefaultAllocator, NULL, CX_STORE_POINTERS); |
|
56 //conf->lines = NULL; |
|
57 |
|
58 int r = cfg_parse_basic_file((ConfigParser*)conf, in); |
|
59 if(r != 0) { |
|
60 // TODO: free |
|
61 return NULL; |
|
62 } |
|
63 |
|
64 fclose(in); |
|
65 |
|
66 return conf; |
|
67 } |
|
68 |
44 |
69 ObjectConfig2* objectconf_load(const char *file) { |
45 ObjectConfig2* objectconf_load(const char *file) { |
70 CxMempool *mp = cxBasicMempoolCreate(512); |
46 CxMempool *mp = cxBasicMempoolCreate(512); |
71 if(!mp) { |
47 if(!mp) { |
72 return NULL; |
48 return NULL; |