OLD | NEW |
| (Empty) |
1 /* 7zExtract.h */ | |
2 | |
3 #ifndef __7Z_EXTRACT_H | |
4 #define __7Z_EXTRACT_H | |
5 | |
6 #include "7zIn.h" | |
7 | |
8 /* | |
9 SzExtract extracts file from archive | |
10 | |
11 *outBuffer must be 0 before first call for each new archive. | |
12 | |
13 Extracting cache: | |
14 If you need to decompress more than one file, you can send | |
15 these values from previous call: | |
16 *blockIndex, | |
17 *outBuffer, | |
18 *outBufferSize | |
19 You can consider "*outBuffer" as cache of solid block. If your archive is so
lid, | |
20 it will increase decompression speed. | |
21 | |
22 If you use external function, you can declare these 3 cache variables | |
23 (blockIndex, outBuffer, outBufferSize) as static in that external function. | |
24 | |
25 Free *outBuffer and set *outBuffer to 0, if you want to flush cache. | |
26 */ | |
27 | |
28 SZ_RESULT SzExtract( | |
29 ISzInStream *inStream, | |
30 CArchiveDatabaseEx *db, | |
31 UInt32 fileIndex, /* index of file */ | |
32 UInt32 *blockIndex, /* index of solid block */ | |
33 Byte **outBuffer, /* pointer to pointer to output buffer (allocated
with allocMain) */ | |
34 size_t *outBufferSize, /* buffer size for output buffer */ | |
35 size_t *offset, /* offset of stream for required file in *outBuffe
r */ | |
36 size_t *outSizeProcessed, /* size of file in *outBuffer */ | |
37 ISzAlloc *allocMain, | |
38 ISzAlloc *allocTemp); | |
39 | |
40 #endif | |
OLD | NEW |