]> wimlib.net Git - wimlib/blob - include/wimlib/write.h
2cb9a3340d14d4a448405a0de29d9a8a5a012d14
[wimlib] / include / wimlib / write.h
1 #ifndef _WIMLIB_WRITE_H
2 #define _WIMLIB_WRITE_H
3
4 #include "wimlib.h"
5 #include "wimlib/types.h"
6
7 /* Internal use only */
8 #define WIMLIB_WRITE_FLAG_NO_LOOKUP_TABLE       0x80000000
9 #define WIMLIB_WRITE_FLAG_REUSE_INTEGRITY_TABLE 0x40000000
10 #define WIMLIB_WRITE_FLAG_CHECKPOINT_AFTER_XML  0x20000000
11 #define WIMLIB_WRITE_MASK_PUBLIC                0x1fffffff
12
13 extern int
14 begin_write(WIMStruct *w, const tchar *path, int write_flags);
15
16 extern void
17 close_wim_writable(WIMStruct *w);
18
19 extern int
20 finish_write(WIMStruct *w, int image, int write_flags,
21              wimlib_progress_func_t progress_func);
22
23 #if defined(HAVE_SYS_FILE_H) && defined(HAVE_FLOCK)
24 extern int
25 lock_wim(WIMStruct *w, int fd);
26 #else
27 static inline int
28 lock_wim(WIMStruct *w, int fd)
29 {
30         return 0;
31 }
32 #endif
33
34 #endif /* _WIMLIB_WRITE_H */