mirror of
https://github.com/SabreTools/SabreTools.Serialization.git
synced 2026-04-05 22:01:33 +00:00
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.
67 lines
1.7 KiB
C#
67 lines
1.7 KiB
C#
namespace SabreTools.Data.Models.InstallShieldCabinet
|
|
{
|
|
/// <see href="https://github.com/twogood/unshield/blob/main/lib/cabfile.h"/>
|
|
public sealed class FileDescriptor
|
|
{
|
|
/// <summary>
|
|
/// Offset to the file descriptor name
|
|
/// </summary>
|
|
public uint NameOffset { get; set; }
|
|
|
|
/// <summary>
|
|
/// File descriptor name
|
|
/// </summary>
|
|
public string Name { get; set; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// Directory index
|
|
/// </summary>
|
|
public uint DirectoryIndex { get; set; }
|
|
|
|
/// <summary>
|
|
/// File flags
|
|
/// </summary>
|
|
public FileFlags Flags { get; set; }
|
|
|
|
/// <summary>
|
|
/// Size of the entry when expanded
|
|
/// </summary>
|
|
public ulong ExpandedSize { get; set; }
|
|
|
|
/// <summary>
|
|
/// Size of the entry when compressed
|
|
/// </summary>
|
|
public ulong CompressedSize { get; set; }
|
|
|
|
/// <summary>
|
|
/// Offset to the entry data
|
|
/// </summary>
|
|
public ulong DataOffset { get; set; }
|
|
|
|
/// <summary>
|
|
/// MD5 of the entry data
|
|
/// </summary>
|
|
public byte[] MD5 { get; set; } = new byte[0x10];
|
|
|
|
/// <summary>
|
|
/// Volume number
|
|
/// </summary>
|
|
public ushort Volume { get; set; }
|
|
|
|
/// <summary>
|
|
/// Link previous
|
|
/// </summary>
|
|
public uint LinkPrevious { get; set; }
|
|
|
|
/// <summary>
|
|
/// Link next
|
|
/// </summary>
|
|
public uint LinkNext { get; set; }
|
|
|
|
/// <summary>
|
|
/// Link flags
|
|
/// </summary>
|
|
public LinkFlags LinkFlags { get; set; }
|
|
}
|
|
}
|