Files
Matt Nadareski 7689c6dd07 Libraries
This change looks dramatic, but it's just separating out the already-split namespaces into separate top-level folders. In theory, every single one could be built into their own Nuget package. `SabreTools.Serialization` still builds the normal Nuget package that is used by all other projects and includes all namespaces.
2026-03-21 16:26:56 -04:00

36 lines
1.1 KiB
C#

using System.Runtime.InteropServices;
namespace SabreTools.Data.Models.MoPaQ
{
/// <summary>
/// Block table contains informations about file sizes and way of their storage within
/// the archive. It also contains the position of file content in the archive. Size
/// of block table entry is (like hash table entry). The block table is also encrypted.
/// </summary>
/// <see href="http://zezula.net/en/mpq/mpqformat.html"/>
[StructLayout(LayoutKind.Sequential)]
public sealed class BlockEntry
{
/// <summary>
/// Offset of the beginning of the file data, relative to the beginning of the archive.
/// </summary>
public uint FilePosition;
/// <summary>
/// Compressed file size
/// </summary>
public uint CompressedSize;
/// <summary>
/// Size of uncompressed file
/// </summary>
public uint UncompressedSize;
/// <summary>
/// Flags for the file.
/// </summary>
[MarshalAs(UnmanagedType.U4)]
public FileFlags Flags;
}
}