wimlib
|
Valid on messages WIMLIB_PROGRESS_MSG_EXTRACT_SPWM_PART_BEGIN, WIMLIB_PROGRESS_MSG_EXTRACT_IMAGE_BEGIN, WIMLIB_PROGRESS_MSG_EXTRACT_TREE_BEGIN, WIMLIB_PROGRESS_MSG_EXTRACT_FILE_STRUCTURE, WIMLIB_PROGRESS_MSG_EXTRACT_STREAMS, WIMLIB_PROGRESS_MSG_EXTRACT_METADATA, WIMLIB_PROGRESS_MSG_EXTRACT_TREE_END, and WIMLIB_PROGRESS_MSG_EXTRACT_IMAGE_END. More...
#include <wimlib.h>
Data Fields | |
uint32_t | image |
The 1-based index of the image from which files are being extracted. | |
uint32_t | extract_flags |
Extraction flags being used. | |
const wimlib_tchar * | wimfile_name |
If the WIMStruct from which the extraction being performed has a backing file, then this is an absolute path to that backing file. | |
const wimlib_tchar * | image_name |
Name of the image from which files are being extracted, or the empty string if the image is unnamed. | |
const wimlib_tchar * | target |
Path to the directory or NTFS volume to which the files are being extracted. | |
const wimlib_tchar * | reserved |
Reserved. | |
uint64_t | total_bytes |
The number of bytes of file data that will be extracted. | |
uint64_t | completed_bytes |
The number of bytes of file data that have been extracted so far. | |
uint64_t | total_streams |
The number of file streams that will be extracted. | |
uint64_t | completed_streams |
The number of file streams that have been extracted so far. | |
uint32_t | part_number |
Currently only used for WIMLIB_PROGRESS_MSG_EXTRACT_SPWM_PART_BEGIN. | |
uint32_t | total_parts |
Currently only used for WIMLIB_PROGRESS_MSG_EXTRACT_SPWM_PART_BEGIN. | |
uint8_t | guid [WIMLIB_GUID_LEN] |
Currently only used for WIMLIB_PROGRESS_MSG_EXTRACT_SPWM_PART_BEGIN. | |
uint64_t | current_file_count |
For WIMLIB_PROGRESS_MSG_EXTRACT_FILE_STRUCTURE and WIMLIB_PROGRESS_MSG_EXTRACT_METADATA messages, this is the number of files that have been processed so far. | |
uint64_t | end_file_count |
For WIMLIB_PROGRESS_MSG_EXTRACT_FILE_STRUCTURE and WIMLIB_PROGRESS_MSG_EXTRACT_METADATA messages, this is total number of files that will be processed. | |
Valid on messages WIMLIB_PROGRESS_MSG_EXTRACT_SPWM_PART_BEGIN, WIMLIB_PROGRESS_MSG_EXTRACT_IMAGE_BEGIN, WIMLIB_PROGRESS_MSG_EXTRACT_TREE_BEGIN, WIMLIB_PROGRESS_MSG_EXTRACT_FILE_STRUCTURE, WIMLIB_PROGRESS_MSG_EXTRACT_STREAMS, WIMLIB_PROGRESS_MSG_EXTRACT_METADATA, WIMLIB_PROGRESS_MSG_EXTRACT_TREE_END, and WIMLIB_PROGRESS_MSG_EXTRACT_IMAGE_END.
Note: most of the time of an extraction operation will be spent extracting file data, and the application will receive WIMLIB_PROGRESS_MSG_EXTRACT_STREAMS during this time. Using completed_bytes
and total_bytes
, the application can calculate a percentage complete. However, there is no way for applications to know which file is currently being extracted. This is by design because the best way to complete the extraction operation is not necessarily file-by-file.
uint32_t wimlib_progress_info::wimlib_progress_info_extract::image |
The 1-based index of the image from which files are being extracted.
uint32_t wimlib_progress_info::wimlib_progress_info_extract::extract_flags |
Extraction flags being used.
const wimlib_tchar* wimlib_progress_info::wimlib_progress_info_extract::wimfile_name |
If the WIMStruct from which the extraction being performed has a backing file, then this is an absolute path to that backing file.
Otherwise, this is NULL
.
const wimlib_tchar* wimlib_progress_info::wimlib_progress_info_extract::image_name |
Name of the image from which files are being extracted, or the empty string if the image is unnamed.
const wimlib_tchar* wimlib_progress_info::wimlib_progress_info_extract::target |
Path to the directory or NTFS volume to which the files are being extracted.
const wimlib_tchar* wimlib_progress_info::wimlib_progress_info_extract::reserved |
Reserved.
uint64_t wimlib_progress_info::wimlib_progress_info_extract::total_bytes |
The number of bytes of file data that will be extracted.
uint64_t wimlib_progress_info::wimlib_progress_info_extract::completed_bytes |
The number of bytes of file data that have been extracted so far.
This starts at 0 and ends at total_bytes
.
uint64_t wimlib_progress_info::wimlib_progress_info_extract::total_streams |
The number of file streams that will be extracted.
This will often be similar to the "number of files", but for several reasons (hard links, named data streams, empty files, etc.) it can be different.
uint64_t wimlib_progress_info::wimlib_progress_info_extract::completed_streams |
The number of file streams that have been extracted so far.
This starts at 0 and ends at total_streams
.
uint32_t wimlib_progress_info::wimlib_progress_info_extract::part_number |
Currently only used for WIMLIB_PROGRESS_MSG_EXTRACT_SPWM_PART_BEGIN.
uint32_t wimlib_progress_info::wimlib_progress_info_extract::total_parts |
Currently only used for WIMLIB_PROGRESS_MSG_EXTRACT_SPWM_PART_BEGIN.
uint8_t wimlib_progress_info::wimlib_progress_info_extract::guid[WIMLIB_GUID_LEN] |
Currently only used for WIMLIB_PROGRESS_MSG_EXTRACT_SPWM_PART_BEGIN.
uint64_t wimlib_progress_info::wimlib_progress_info_extract::current_file_count |
For WIMLIB_PROGRESS_MSG_EXTRACT_FILE_STRUCTURE and WIMLIB_PROGRESS_MSG_EXTRACT_METADATA messages, this is the number of files that have been processed so far.
Once the corresponding phase of extraction is complete, this value will be equal to end_file_count
.
uint64_t wimlib_progress_info::wimlib_progress_info_extract::end_file_count |
For WIMLIB_PROGRESS_MSG_EXTRACT_FILE_STRUCTURE and WIMLIB_PROGRESS_MSG_EXTRACT_METADATA messages, this is total number of files that will be processed.
This number is provided for informational purposes only, e.g. for a progress bar. This number will not necessarily be equal to the number of files actually being extracted. This is because extraction backends are free to implement an extraction algorithm that might be more efficient than processing every file in the "extract file structure" and "extract file metadata" phases. For example, the current implementation of the UNIX extraction backend will create files on-demand during the "extract file data" phase. Therefore, when using that particular extraction backend, end_file_count
will only include directories and empty files.