Files
SabreTools.Models/XZP/File.cs

64 lines
1.5 KiB
C#
Raw Permalink Normal View History

2023-09-04 00:12:49 -04:00
namespace SabreTools.Models.XZP
2023-09-04 00:11:04 -04:00
{
/// <summary>
/// XBox Package File
/// </summary>
/// <see href="https://github.com/RavuAlHemio/hllib/blob/master/HLLib/XZPFile.h"/>
public sealed class File
{
/// <summary>
/// Header data
/// </summary>
2023-09-04 21:14:41 -04:00
#if NET48
2023-09-04 00:11:04 -04:00
public Header Header { get; set; }
2023-09-04 21:14:41 -04:00
#else
public Header? Header { get; set; }
#endif
2023-09-04 00:11:04 -04:00
/// <summary>
/// Directory entries data
/// </summary>
2023-09-04 21:14:41 -04:00
#if NET48
2023-09-04 00:11:04 -04:00
public DirectoryEntry[] DirectoryEntries { get; set; }
2023-09-04 21:14:41 -04:00
#else
2023-09-10 20:47:25 -04:00
public DirectoryEntry?[]? DirectoryEntries { get; set; }
2023-09-04 21:14:41 -04:00
#endif
2023-09-04 00:11:04 -04:00
/// <summary>
/// Preload directory entries data
/// </summary>
2023-09-04 21:14:41 -04:00
#if NET48
2023-09-04 00:11:04 -04:00
public DirectoryEntry[] PreloadDirectoryEntries { get; set; }
2023-09-04 21:14:41 -04:00
#else
2023-09-10 20:47:25 -04:00
public DirectoryEntry?[]? PreloadDirectoryEntries { get; set; }
2023-09-04 21:14:41 -04:00
#endif
2023-09-04 00:11:04 -04:00
/// <summary>
/// Preload directory mappings data
/// </summary>
2023-09-04 21:14:41 -04:00
#if NET48
2023-09-04 00:11:04 -04:00
public DirectoryMapping[] PreloadDirectoryMappings { get; set; }
2023-09-04 21:14:41 -04:00
#else
2023-09-10 20:47:25 -04:00
public DirectoryMapping?[]? PreloadDirectoryMappings { get; set; }
2023-09-04 21:14:41 -04:00
#endif
2023-09-04 00:11:04 -04:00
/// <summary>
/// Directory items data
/// </summary>
2023-09-04 21:14:41 -04:00
#if NET48
2023-09-04 00:11:04 -04:00
public DirectoryItem[] DirectoryItems { get; set; }
2023-09-04 21:14:41 -04:00
#else
2023-09-10 20:47:25 -04:00
public DirectoryItem?[]? DirectoryItems { get; set; }
2023-09-04 21:14:41 -04:00
#endif
2023-09-04 00:11:04 -04:00
/// <summary>
/// Footer data
/// </summary>
2023-09-04 21:14:41 -04:00
#if NET48
2023-09-04 00:11:04 -04:00
public Footer Footer { get; set; }
2023-09-04 21:14:41 -04:00
#else
public Footer? Footer { get; set; }
#endif
2023-09-04 00:11:04 -04:00
}
}