X-Git-Url: https://wimlib.net/git/?a=blobdiff_plain;f=include%2Fwimlib%2Fxml.h;h=9ce52104093ea646686775448733672f43794613;hb=993d197cac3a09508f2afefe0e2a620d7e43fa1a;hp=209bb8c123908ac4b6e2ce9e6135d465cc4ab34b;hpb=2fed42ae0eee69e6352425c29ca2b12af99f8992;p=wimlib diff --git a/include/wimlib/xml.h b/include/wimlib/xml.h index 209bb8c1..9ce52104 100644 --- a/include/wimlib/xml.h +++ b/include/wimlib/xml.h @@ -3,56 +3,65 @@ #include "wimlib/types.h" -struct wim_info; -struct wim_reshdr; +/*****************************************************************************/ -extern u64 -wim_info_get_total_bytes(const struct wim_info *info); +struct wim_xml_info; -extern u64 -wim_info_get_image_hard_link_bytes(const struct wim_info *info, int image); +extern struct wim_xml_info * +xml_new_info_struct(void); + +extern void +xml_free_info_struct(struct wim_xml_info *info); + +/*****************************************************************************/ + +extern int +xml_get_image_count(const struct wim_xml_info *info); extern u64 -wim_info_get_image_total_bytes(const struct wim_info *info, int image); +xml_get_total_bytes(const struct wim_xml_info *info); -extern unsigned -wim_info_get_num_images(const struct wim_info *info); +extern u64 +xml_get_image_total_bytes(const struct wim_xml_info *info, int image); -extern void -wim_info_set_wimboot(struct wim_info *info, int image, bool value); +extern u64 +xml_get_image_hard_link_bytes(const struct wim_xml_info *info, int image); extern bool -wim_info_get_wimboot(const struct wim_info *info, int image); +xml_get_wimboot(const struct wim_xml_info *info, int image); extern u64 -wim_info_get_windows_build_number(const struct wim_info *info, int image); +xml_get_windows_build_number(const struct wim_xml_info *info, int image); extern int -xml_export_image(const struct wim_info *old_wim_info, int image, - struct wim_info **new_wim_info_p, - const tchar *dest_image_name, - const tchar *dest_image_description); +xml_set_wimboot(struct wim_xml_info *info, int image); -extern size_t -xml_get_max_image_name_len(const WIMStruct *wim); +/*****************************************************************************/ -extern void +extern int xml_update_image_info(WIMStruct *wim, int image); -extern void -xml_delete_image(struct wim_info **wim_info_p, int image); +extern int +xml_add_image(struct wim_xml_info *info, const tchar *name); extern int -xml_add_image(WIMStruct *wim, const tchar *name); +xml_export_image(const struct wim_xml_info *src_info, int src_image, + struct wim_xml_info *dest_info, const tchar *dest_image_name, + const tchar *dest_image_description, bool wimboot); extern void -free_wim_info(struct wim_info *info); +xml_delete_image(struct wim_xml_info *info, int image); + extern void -print_image_info(const struct wim_info *wim_info, int image); +xml_print_image_info(struct wim_xml_info *info, int image); + +/*****************************************************************************/ -#define WIM_TOTALBYTES_USE_EXISTING ((u64)0 - 1) -#define WIM_TOTALBYTES_OMIT ((u64)0 - 2) +struct wim_reshdr; + +#define WIM_TOTALBYTES_USE_EXISTING ((u64)(-1)) +#define WIM_TOTALBYTES_OMIT ((u64)(-2)) extern int read_wim_xml_data(WIMStruct *wim); @@ -62,11 +71,13 @@ write_wim_xml_data(WIMStruct *wim, int image, u64 total_bytes, struct wim_reshdr *out_reshdr, int write_resource_flags); +/*****************************************************************************/ + extern void -libxml_global_init(void); +xml_global_init(void); extern void -libxml_global_cleanup(void); +xml_global_cleanup(void); extern void xml_set_memory_allocator(void *(*malloc_func)(size_t),