Source code

Revision control

Copy as Markdown

Other Tools

/* XzEnc.h -- Xz Encode↩
2017-06-27 : Igor Pavlov : Public domain */
#ifndef __XZ_ENC_H↩
#define __XZ_ENC_H↩
#include "Lzma2Enc.h"
#include "Xz.h"
EXTERN_C_BEGIN↩
#define XZ_PROPS__BLOCK_SIZE__AUTO LZMA2_ENC_PROPS__BLOCK_SIZE__AUTO↩
#define XZ_PROPS__BLOCK_SIZE__SOLID LZMA2_ENC_PROPS__BLOCK_SIZE__SOLID↩
typedef struct
{↩
UInt32 id;↩
UInt32 delta;↩
UInt32 ip;↩
int ipDefined;↩
} CXzFilterProps;↩
void XzFilterProps_Init(CXzFilterProps *p);↩
typedef struct
{↩
CLzma2EncProps lzma2Props;↩
CXzFilterProps filterProps;↩
unsigned checkId;↩
UInt64 blockSize;↩
int numBlockThreads_Reduced;↩
int numBlockThreads_Max;↩
int numTotalThreads;↩
int forceWriteSizesInHeader;↩
UInt64 reduceSize;↩
} CXzProps;↩
void XzProps_Init(CXzProps *p);↩
typedef void * CXzEncHandle;↩
CXzEncHandle XzEnc_Create(ISzAllocPtr alloc, ISzAllocPtr allocBig);↩
void XzEnc_Destroy(CXzEncHandle p);↩
SRes XzEnc_SetProps(CXzEncHandle p, const CXzProps *props);↩
void XzEnc_SetDataSize(CXzEncHandle p, UInt64 expectedDataSiize);↩
SRes XzEnc_Encode(CXzEncHandle p, ISeqOutStream *outStream, ISeqInStream *inStream, ICompressProgress *progress);↩
SRes Xz_Encode(ISeqOutStream *outStream, ISeqInStream *inStream,↩
const CXzProps *props, ICompressProgress *progress);↩
SRes Xz_EncodeEmpty(ISeqOutStream *outStream);↩
EXTERN_C_END↩
#endif