Compare commits
2 commits
425d7789dd
...
5aeff5d0ce
| Author | SHA1 | Date | |
|---|---|---|---|
| 5aeff5d0ce | |||
| a35bec87de |
1 changed files with 50 additions and 42 deletions
|
|
@ -4,25 +4,9 @@
|
|||
|
||||
#define TAG "CFGLR"
|
||||
|
||||
uint8_t cfglr_init(cfglr_handle_t *handle) {
|
||||
cfglr_backend_t *backend = &handle->backend;
|
||||
cfglr_element_t *element;
|
||||
uint8_t cfglr_add_element(cfglr_handle_t *handle, cfglr_element_t *element) {
|
||||
cfglr_signaler_t *signaler;
|
||||
|
||||
handle->element_count = 0;
|
||||
|
||||
CFGLR_LOGI(TAG, "initializing backend");
|
||||
|
||||
if(backend->open != NULL) {
|
||||
CFGLR_LOGI(TAG, "opening backend");
|
||||
backend->open(backend, handle);
|
||||
}
|
||||
|
||||
CFGLR_LOGI(TAG, "initializing elements");
|
||||
|
||||
while((element = &handle->elements[handle->element_count])) {
|
||||
if(element->key == NULL) break;
|
||||
|
||||
CFGLR_LOGI(TAG, "Initializing element: %s", element->key);
|
||||
CFGLR_LOGI(TAG, "size: %d", element->datatype_size);
|
||||
|
||||
|
|
@ -62,7 +46,28 @@ uint8_t cfglr_init(cfglr_handle_t *handle) {
|
|||
}
|
||||
}
|
||||
|
||||
++handle->element_count;
|
||||
return ++handle->element_count;
|
||||
}
|
||||
|
||||
uint8_t cfglr_init(cfglr_handle_t *handle) {
|
||||
cfglr_backend_t *backend = &handle->backend;
|
||||
cfglr_element_t *element;
|
||||
|
||||
handle->element_count = 0;
|
||||
|
||||
CFGLR_LOGI(TAG, "initializing backend");
|
||||
|
||||
if(backend->open != NULL) {
|
||||
CFGLR_LOGI(TAG, "opening backend");
|
||||
backend->open(backend, handle);
|
||||
}
|
||||
|
||||
CFGLR_LOGI(TAG, "initializing elements");
|
||||
|
||||
while((element = &handle->elements[handle->element_count])) {
|
||||
if(element->key == NULL) break;
|
||||
|
||||
cfglr_add_element(handle, element);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
|
@ -94,7 +99,10 @@ cfglr_element_t * cfglr_get_element(cfglr_handle_t *handle, const char *name) {
|
|||
cfglr_element_t *element;
|
||||
|
||||
uint8_t i = 0;
|
||||
while((element = &handle->elements[i++]) != NULL) {
|
||||
for(; i < handle->element_count; i++) {
|
||||
element = &handle->elements[i];
|
||||
|
||||
CFGLR_LOGI(TAG, "element: %s @ %p", element->key, element);
|
||||
if(strcmp(element->key, name) == 0) return element;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue