Add everything from oab.h

This commit is contained in:
Matt Nadareski
2023-09-19 12:19:42 -04:00
parent 0eb17b9e26
commit 82ea2ca03c
3 changed files with 39 additions and 1 deletions

View File

@@ -9,6 +9,8 @@ namespace SabreTools.Compression.libmspack
/// <see cref="mspack_destroy_oab_compressor()"/>
public abstract class msoab_compressor
{
public mspack_system system { get; set; }
/// <summary>
/// Compress a full OAB file.
///

View File

@@ -9,6 +9,10 @@ namespace SabreTools.Compression.libmspack
/// <see cref="mspack_destroy_oab_decompressor()"/>
public abstract class msoab_decompressor
{
public mspack_system system { get; set; }
public int buf_size { get; set; }
/// <summary>
/// Decompresses a full Offline Address Book file.
///
@@ -56,7 +60,7 @@ namespace SabreTools.Compression.libmspack
/// </param>
/// <returns>An error code, or MSPACK_ERR_OK if successful</returns>
public abstract MSPACK_ERR decompress_incremental(in string input, in string @base, in string output);
/// <summary>
/// Sets an OAB decompression engine parameter. Available only in OAB
/// decompressor version 2 and above.

32
libmspack/oab.cs Normal file
View File

@@ -0,0 +1,32 @@
namespace SabreTools.Compression.libmspack
{
public static class oab
{
public const int oabhead_VersionHi = 0x0000;
public const int oabhead_VersionLo = 0x0004;
public const int oabhead_BlockMax = 0x0008;
public const int oabhead_TargetSize = 0x000c;
public const int oabhead_SIZEOF = 0x0010;
public const int oabblk_Flags = 0x0000;
public const int oabblk_CompSize = 0x0004;
public const int oabblk_UncompSize = 0x0008;
public const int oabblk_CRC = 0x000c;
public const int oabblk_SIZEOF = 0x0010;
public const int patchhead_VersionHi = 0x0000;
public const int patchhead_VersionLo = 0x0004;
public const int patchhead_BlockMax = 0x0008;
public const int patchhead_SourceSize = 0x000c;
public const int patchhead_TargetSize = 0x0010;
public const int patchhead_SourceCRC = 0x0014;
public const int patchhead_TargetCRC = 0x0018;
public const int patchhead_SIZEOF = 0x001c;
public const int patchblk_PatchSize = 0x0000;
public const int patchblk_TargetSize = 0x0004;
public const int patchblk_SourceSize = 0x0008;
public const int patchblk_CRC = 0x000c;
public const int patchblk_SIZEOF = 0x0010;
}
}