2025-09-26 10:57:15 -04:00
|
|
|
using System.Runtime.InteropServices;
|
|
|
|
|
|
2025-09-26 13:06:18 -04:00
|
|
|
namespace SabreTools.Data.Models.PFF
|
2025-09-26 10:57:15 -04:00
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// PFF archive header
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <remarks>Versions 2, 3, and 4 supported</remarks>
|
|
|
|
|
/// <see href="https://devilsclaws.net/download/file-pff-new-bz2"/>
|
|
|
|
|
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
|
|
|
|
|
public sealed class Header
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Size of the following header
|
|
|
|
|
/// </summary>
|
|
|
|
|
public uint HeaderSize;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Signature
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <remarks>Versions 2 and 3 share the same signature but different header sizes</remarks>
|
|
|
|
|
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
|
2025-10-31 13:59:28 -04:00
|
|
|
public string Signature = string.Empty;
|
2025-09-26 10:57:15 -04:00
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Number of files
|
|
|
|
|
/// </summary>
|
|
|
|
|
public uint NumberOfFiles;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// File segment size
|
|
|
|
|
/// </summary>
|
|
|
|
|
public uint FileSegmentSize;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// File list offset
|
|
|
|
|
/// </summary>
|
|
|
|
|
public uint FileListOffset;
|
|
|
|
|
}
|
2025-10-30 22:56:23 -04:00
|
|
|
}
|