]> wimlib.net Git - wimlib/blobdiff - include/wimlib.h
system compression: try to attach WOF if compression fails
[wimlib] / include / wimlib.h
index a9fb8cc97882c30824a048581a24c09e659abe2e..09a427985469274526e3a80172aafcf4551dedc0 100644 (file)
@@ -3,52 +3,48 @@
  * @brief External header for wimlib.
  *
  * This file contains comments for generating documentation with Doxygen.  The
- * built HTML documentation can be viewed at http://wimlib.sourceforge.net.
- * Make sure to see the <a href="modules.html">Modules page</a> to make more
- * sense of the declarations in this header.
+ * built HTML documentation can be viewed at http://wimlib.net/apidoc.  Make
+ * sure to see the <a href="modules.html">Modules page</a> to make more sense of
+ * the declarations in this header.
  */
 
 /**
  * @mainpage
  *
- * This is the documentation for the library interface of wimlib 1.8.0, a C
+ * This is the documentation for the library interface of wimlib 1.8.2, a C
  * library for creating, modifying, extracting, and mounting files in the
  * Windows Imaging Format.  This documentation is intended for developers only.
  * If you have installed wimlib and want to know how to use the @b wimlib-imagex
  * program, please see the manual pages and also the <a
- * href="http://sourceforge.net/p/wimlib/code/ci/master/tree/README">README
+ * href="http://wimlib.net/gitlist/wimlib/blob/master/README">README
  * file</a>.
  *
  * @section sec_installing Installing
  *
  * @subsection UNIX
  *
- * Download the source code from <a
- * href="http://sourceforge.net/projects/wimlib/files">http://sourceforge.net/projects/wimlib/files</a>.
- * Install the library by running <c>configure && make && sudo make install</c>.
- * See the README for information about configuration options.  To use wimlib in
- * your program after installing it, include wimlib.h and link your program with
- * <c>-lwim</c>.
+ * Download the source code from http://wimlib.net.  Install the library by
+ * running <c>configure && make && sudo make install</c>.  See the README for
+ * information about configuration options.  To use wimlib in your program after
+ * installing it, include wimlib.h and link your program with <c>-lwim</c>.
  *
  * @subsection Windows
  *
  * Download the Windows binary distribution with the appropriate architecture
- * (i686 or x86_64 --- also called "x86" and "amd64" respectively) from <a
- * href="http://sourceforge.net/projects/wimlib/files">http://sourceforge.net/projects/wimlib/files</a>.
- * Link your program with the libwim-15.dll file.  Make sure to also download
- * the source code so you can get wimlib.h, as it is not included in the binary
- * distribution.  If you need to access the DLL from other programming
- * languages, note that the calling convention is "cdecl".
+ * (i686 or x86_64 --- also called "x86" and "amd64" respectively) from
+ * http://wimlib.net.  Link your program with the libwim-15.dll file.  Make sure
+ * to also download the source code so you can get wimlib.h, as it is not
+ * included in the binary distribution.  If you need to access the DLL from
+ * other programming languages, note that the calling convention is "cdecl".
  *
  * @section sec_examples Examples
  *
- * Several examples are located in the <a
- * href="http://sourceforge.net/p/wimlib/code/ci/master/tree/examples">examples</a>
- * directory of the source distribution.
+ * Several examples are located in the "examples" directory of the source
+ * distribution.
  *
  * There is also the <a
- * href="http://sourceforge.net/p/wimlib/code/ci/master/tree/programs/imagex.c">
- * source code of <b>wimlib-imagex</b></a>, which is complicated but uses most
+ * href="http://wimlib.net/gitlist/wimlib/blob/master/programs/imagex.c"> source
+ * code of <b>wimlib-imagex</b></a>, which is complicated but uses most
  * capabilities of wimlib.
  *
  * @section backwards_compatibility Backwards Compatibility
 #define WIMLIB_MINOR_VERSION 8
 
 /** Patch version of the library (for example, the 5 in 1.2.5). */
-#define WIMLIB_PATCH_VERSION 0
+#define WIMLIB_PATCH_VERSION 2
 
 #ifdef __cplusplus
 extern "C" {
@@ -1944,6 +1940,31 @@ typedef int (*wimlib_iterate_lookup_table_callback_t)(const struct wimlib_resour
  */
 #define WIMLIB_EXTRACT_FLAG_WIMBOOT                    0x00400000
 
+/**
+ * EXPERIMENTAL, Windows-only: compress the extracted files using System
+ * Compression, when possible.  This only works on either Windows 10 or later,
+ * or on an older Windows to which Microsoft's wofadk.sys driver has been added.
+ * Several different compression formats may be used with System Compression;
+ * this particular flag selects the XPRESS compression format with 4096 byte
+ * chunks.  <b>This flag is currently experimental and may be changed or removed
+ * in future releases of wimlib.</b>  */
+#define WIMLIB_EXTRACT_FLAG_COMPACT_XPRESS4K           0x01000000
+
+/** Like ::WIMLIB_EXTRACT_FLAG_COMPACT_XPRESS4K, but use XPRESS compression with
+ * 8192 byte chunks.  <b>This flag is currently experimental and may be changed
+ * or removed in future releases of wimlib.</b>  */
+#define WIMLIB_EXTRACT_FLAG_COMPACT_XPRESS8K           0x02000000
+
+/** Like ::WIMLIB_EXTRACT_FLAG_COMPACT_XPRESS4K, but use XPRESS compression with
+ * 16384 byte chunks.  <b>This flag is currently experimental and may be changed
+ * or removed in future releases of wimlib.</b>  */
+#define WIMLIB_EXTRACT_FLAG_COMPACT_XPRESS16K          0x04000000
+
+/** Like ::WIMLIB_EXTRACT_FLAG_COMPACT_XPRESS4K, but use LZX compression with
+ * 32768 byte chunks.  <b>This flag is currently experimental and may be changed
+ * or removed in future releases of wimlib.</b>  */
+#define WIMLIB_EXTRACT_FLAG_COMPACT_LZX                        0x08000000
+
 /** @} */
 /** @addtogroup G_mounting_wim_images
  * @{ */