using System;
namespace SabreTools.Data.Models.LZ
{
///
public enum KWAJCompressionType : ushort
{
///
/// No compression
///
NoCompression = 0,
///
/// No compression, data is XORed with byte 0xFF
///
NoCompressionXor = 1,
///
/// The same compression method as the QBasic variant of SZDD
///
QBasic = 2,
///
/// LZ + Huffman "Jeff Johnson" compression
///
LZH = 3,
///
/// MS-ZIP
///
MSZIP = 4,
}
///
[Flags]
public enum KWAJHeaderFlags : ushort
{
///
/// Header extensions contains 4-byte decompressed length
///
HasDecompressedLength = 0x0001,
///
/// Header extensions contains 2-byte unknown value
///
HasUnknownFlag = 0x0002,
///
/// Header extensions contains 2-byte prefix followed by
/// that many bytes of (unknown purpose) data
///
HasPrefixedData = 0x0004,
///
/// Header extensions contains null-terminated string of
/// max length 8 representing the file name
///
HasFileName = 0x0008,
///
/// Header extensions contains null-terminated string of
/// max length 3 representing the file name
///
HasFileExtension = 0x0010,
///
/// Header extensions contains 2-byte prefix followed by
/// that many bytes of (arbitrary text) data
///
HasAdditionalText = 0x0020,
}
///
///
public enum ExpandCompressionType : byte
{
///
/// Only valid compression type: 'A'
///
A = 0x41,
}
}