]> wimlib.net Git - wimlib/blobdiff - include/wimlib/write.h
Merge branch with pipable WIM support
[wimlib] / include / wimlib / write.h
index 1722dab82e95f930b38e504f1e0c29e33e9664f9..7a7bae619a760b13c1a6a7321ba5d4ab58970b6a 100644 (file)
@@ -5,20 +5,14 @@
 #include "wimlib/types.h"
 
 /* Internal use only */
-#define WIMLIB_WRITE_FLAG_NO_LOOKUP_TABLE      0x80000000
-#define WIMLIB_WRITE_FLAG_REUSE_INTEGRITY_TABLE 0x40000000
-#define WIMLIB_WRITE_FLAG_CHECKPOINT_AFTER_XML  0x20000000
-#define WIMLIB_WRITE_MASK_PUBLIC               0x1fffffff
-
-extern int
-begin_write(WIMStruct *wim, const tchar *path, int write_flags);
-
-extern void
-close_wim_writable(WIMStruct *wim);
-
-extern int
-finish_write(WIMStruct *wim, int image, int write_flags,
-            wimlib_progress_func_t progress_func);
+#define WIMLIB_WRITE_FLAG_NO_LOOKUP_TABLE              0x80000000
+#define WIMLIB_WRITE_FLAG_CHECKPOINT_AFTER_XML         0x40000000
+#define WIMLIB_WRITE_FLAG_REUSE_INTEGRITY_TABLE                0x20000000
+#define WIMLIB_WRITE_FLAG_HEADER_AT_END                        0x10000000
+#define WIMLIB_WRITE_FLAG_FILE_DESCRIPTOR              0x08000000
+#define WIMLIB_WRITE_FLAG_USE_EXISTING_TOTALBYTES      0x04000000
+#define WIMLIB_WRITE_FLAG_NO_METADATA                   0x02000000
+#define WIMLIB_WRITE_MASK_PUBLIC                       0x01ffffff
 
 #if defined(HAVE_SYS_FILE_H) && defined(HAVE_FLOCK)
 extern int
@@ -31,4 +25,18 @@ lock_wim(WIMStruct *wim, int fd)
 }
 #endif
 
+struct list_head;
+
+int
+write_wim_part(WIMStruct *wim,
+              const void *path_or_fd,
+              int image,
+              int write_flags,
+              unsigned num_threads,
+              wimlib_progress_func_t progress_func,
+              unsigned part_number,
+              unsigned total_parts,
+              struct list_head *stream_list_override,
+              const u8 *guid);
+
 #endif /* _WIMLIB_WRITE_H */