-struct image_info;
-struct resource_entry;
-
-/* A struct wim_info structure corresponds to the entire XML data for a WIM file. */
-struct wim_info {
- u64 total_bytes;
- int num_images;
- /* Array of `struct image_info's, one for each image in the WIM that is
- * mentioned in the XML data. */
- struct image_info *images;
-};
-
-/* xml.c */
+struct wim_info;
+struct wim_reshdr;
+
+extern u64
+wim_info_get_total_bytes(const struct wim_info *info);
+
+extern u64
+wim_info_get_image_hard_link_bytes(const struct wim_info *info, int image);
+
+extern u64
+wim_info_get_image_total_bytes(const struct wim_info *info, int image);
+
+extern unsigned
+wim_info_get_num_images(const struct wim_info *info);
+
+extern void
+wim_info_set_wimboot(struct wim_info *info, int image, bool value);
+
+extern bool
+wim_info_get_wimboot(const struct wim_info *info, int image);
+