diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/plist/plist.h | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/include/plist/plist.h b/include/plist/plist.h index 49d978c..4469f06 100644 --- a/include/plist/plist.h +++ b/include/plist/plist.h | |||
| @@ -45,11 +45,14 @@ typedef enum { | |||
| 45 | PLIST_NONE | 45 | PLIST_NONE |
| 46 | } plist_type; | 46 | } plist_type; |
| 47 | 47 | ||
| 48 | //Plist edition | 48 | //Plist creation and edition |
| 49 | void plist_new_dict(plist_t * plist); | 49 | //utilitary functions to create root nodes (supposed to be dict or array) |
| 50 | void plist_new_array(plist_t * plist); | 50 | plist_t plist_new_dict(); |
| 51 | void plist_new_dict_in_plist(plist_t plist, plist_t * dict); | 51 | plist_t plist_new_array(); |
| 52 | void plist_add_dict_element(plist_t dict, char *key, plist_type type, void *value, uint64_t length); | 52 | //Plist edition, create a new root if node is NULL |
| 53 | plist_t plist_add_sub_element( plist_t node, plist_type type, void* value, uint64_t length); | ||
| 54 | |||
| 55 | //plist free | ||
| 53 | void plist_free(plist_t plist); | 56 | void plist_free(plist_t plist); |
| 54 | 57 | ||
| 55 | //plist navigation | 58 | //plist navigation |
| @@ -57,20 +60,16 @@ plist_t plist_get_first_child(plist_t node); | |||
| 57 | plist_t plist_get_next_sibling(plist_t node); | 60 | plist_t plist_get_next_sibling(plist_t node); |
| 58 | plist_t plist_get_prev_sibling(plist_t node); | 61 | plist_t plist_get_prev_sibling(plist_t node); |
| 59 | 62 | ||
| 63 | plist_t plist_find_node(plist_t plist, plist_type type, void *value); | ||
| 64 | void plist_get_type_and_value(plist_t node, plist_type * type, void *value, uint64_t * length); | ||
| 60 | 65 | ||
| 66 | //import and export functions | ||
| 61 | void plist_to_xml(plist_t plist, char **plist_xml, uint32_t * length); | 67 | void plist_to_xml(plist_t plist, char **plist_xml, uint32_t * length); |
| 62 | void plist_to_bin(plist_t plist, char **plist_bin, uint32_t * length); | 68 | void plist_to_bin(plist_t plist, char **plist_bin, uint32_t * length); |
| 63 | 69 | ||
| 64 | void plist_from_xml(const char *plist_xml, uint32_t length, plist_t * plist); | 70 | void plist_from_xml(const char *plist_xml, uint32_t length, plist_t * plist); |
| 65 | void plist_from_bin(const char *plist_bin, uint32_t length, plist_t * plist); | 71 | void plist_from_bin(const char *plist_bin, uint32_t length, plist_t * plist); |
| 66 | 72 | ||
| 67 | plist_t plist_find_query_node(plist_t plist, char *key, char *request); | ||
| 68 | plist_t plist_find_node(plist_t plist, plist_type type, void *value); | ||
| 69 | void plist_get_type_and_value(plist_t node, plist_type * type, void *value, uint64_t * length); | ||
| 70 | |||
| 71 | |||
| 72 | |||
| 73 | |||
| 74 | #ifdef __cplusplus | 73 | #ifdef __cplusplus |
| 75 | } | 74 | } |
| 76 | #endif | 75 | #endif |
