Lhaz
読み取り中…
検索中…
一致する文字列を見つけられません
xztar.h
[詳解]
1/*==========================================================================*/
2/* Lhaz .tar.xzインタフェース chitora@chitora.jp */
3/*==========================================================================*/
4#pragma once
5
6#include "../tgz/tar.h"
7#include "lzma.h"
8
9class MYSTR;
10class MYFILE;
11
12class XZTAR : public CTAR {
13
14public:
15 // 解凍用コンストラクタ
16 XZTAR(const MYSTR& name);
17 // 圧縮用コンストラクタ
18 XZTAR(const MYSTR& name, int method);
19 ‾XZTAR(void);
20 uint64_t Get_total_in(void) const;
21
22private:
23 enum {
24#if BUFSIZ <= 1024
25 IO_BUFFER_SIZE = 8192
26#else
27 IO_BUFFER_SIZE = BUFSIZ
28#endif
29 };
30 //
31 size_t TarRead(void *buf, size_t size, unsigned long* crc);
32 int TarSeek(fpos_t offset, int origin);
33 size_t TarWrite(const void* buf, size_t size, bool eof);
34 //
35 uint64_t MemLimit;
36 MYFILE* File;
37 lzma_stream Stream;
41 int Method;
42
43};
Definition tar.h:14
Definition xztar.h:12
size_t TarWrite(const void *buf, size_t size, bool eof)
Definition xztar.cpp:116
bool FirstEncode
Definition xztar.h:40
uint8_t OutBuf[IO_BUFFER_SIZE]
Definition xztar.h:39
uint64_t MemLimit
Definition xztar.h:35
int TarSeek(fpos_t offset, int origin)
Definition xztar.cpp:97
lzma_stream Stream
Definition xztar.h:37
size_t TarRead(void *buf, size_t size, unsigned long *crc)
Definition xztar.cpp:64
@ IO_BUFFER_SIZE
Definition xztar.h:25
‾XZTAR(void)
Definition xztar.cpp:56
uint8_t InBuf[IO_BUFFER_SIZE]
Definition xztar.h:38
MYFILE * File
Definition xztar.h:36
uint64_t Get_total_in(void) const
Definition xztar.cpp:167
int Method
Definition xztar.h:41