using System.Runtime.InteropServices; namespace SabreTools.Data.Models.CHD { /// [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)] public class HeaderV5 : Header { /// /// Which custom compressors are used? /// /// There should be 4 entries public CodecType[] Compressors { get; set; } = []; /// /// Logical size of the data (in bytes) /// public ulong LogicalBytes { get; set; } /// /// Offset to the map /// public ulong MapOffset { get; set; } /// /// Offset to the first blob of metadata /// public ulong MetaOffset { get; set; } /// /// Number of bytes per hunk (512k maximum) /// public uint HunkBytes { get; set; } /// /// Number of bytes per unit within each hunk /// public uint UnitBytes { get; set; } /// /// Raw data SHA1 /// public byte[] RawSHA1 { get; set; } = new byte[20]; /// /// Combined raw+meta SHA1 /// public byte[] SHA1 { get; set; } = new byte[20]; /// /// Combined raw+meta SHA1 of parent /// public byte[] ParentSHA1 { get; set; } = new byte[20]; } }