Files
SabreTools.Serialization/SabreTools.Data.Models/InstallShieldCabinet/FileDescriptor.cs

67 lines
1.7 KiB
C#
Raw Normal View History

2025-09-26 13:06:18 -04:00
namespace SabreTools.Data.Models.InstallShieldCabinet
2025-09-26 10:57:15 -04:00
{
/// <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;
2025-09-26 10:57:15 -04:00
/// <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];
2025-09-26 10:57:15 -04:00
/// <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; }
}
}