summaryrefslogtreecommitdiff
path: root/libs/xml.c/src/xml.h
diff options
context:
space:
mode:
authorAldrik Ramaekers <aldrikboy@gmail.com>2025-09-26 16:16:33 +0200
committerAldrik Ramaekers <aldrikboy@gmail.com>2025-09-26 16:16:33 +0200
commite2321f28730adcb8d67800a434ebc7d60a6dcccb (patch)
tree32395dfa99eafd5ec0f4bc7ce41f027caf73db79 /libs/xml.c/src/xml.h
parent69edd9082aea48a7d2ee8028c2d677f4708fc97e (diff)
refactor xml functions into xml.c library
Diffstat (limited to 'libs/xml.c/src/xml.h')
-rw-r--r--libs/xml.c/src/xml.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/libs/xml.c/src/xml.h b/libs/xml.c/src/xml.h
index b5ce81f..65a7b9f 100644
--- a/libs/xml.c/src/xml.h
+++ b/libs/xml.c/src/xml.h
@@ -188,6 +188,31 @@ size_t xml_string_length(struct xml_string* string);
*/
void xml_string_copy(struct xml_string* string, uint8_t* buffer, size_t length);
+#include "stdint.h"
+
+#define s8 int8_t
+#define s16 int16_t
+#define s32 int32_t
+#define s64 int64_t
+
+#define u8 uint8_t
+#define u16 uint16_t
+#define u32 uint32_t
+#define u64 uint64_t
+
+/// Custom OpenBooks functions.
+s64 xml_get_s64(struct xml_node* root, char* child_name);
+s32 xml_get_s32(struct xml_node* root, char* child_name);
+struct xml_node* xml_get_node_x(struct xml_node* root, char* child_name, ...);
+char* xml_get_str_attribute(struct xml_node* root, char* buffer, size_t bufsize, char* attribute_name, char* child_name, ...);
+s32 xml_get_s32_x(struct xml_node* root, char* child_name, ...);
+float xml_get_float(struct xml_node* root, char* child_name);
+float xml_get_float_x(struct xml_node* root, char* child_name, ...);
+char* xml_get_str(struct xml_node* root, char* buffer, size_t bufsize, char* child_name);
+char* xml_get_str_x(struct xml_node* root, char* buffer, size_t bufsize, char* child_name, ...);
+time_t xml_get_date_x(struct xml_node* root, char* child_name, ...);
+
+
#ifdef __cplusplus
}
#endif