Files
SabreTools.Models/Quantum/FileDescriptor.cs
2023-09-04 21:14:41 -04:00

58 lines
1.4 KiB
C#

namespace SabreTools.Models.Quantum
{
/// <summary>
/// Quantum archive file descriptor
/// </summary>
/// <see href="https://handwiki.org/wiki/Software:Quantum_compression"/>
public class FileDescriptor
{
/// <summary>
/// Length of file name
/// </summary>
public int FileNameSize;
/// <summary>
/// File name, variable length string, not zero-terminated
/// </summary>
#if NET48
public string FileName;
#else
public string? FileName;
#endif
/// <summary>
/// Length of comment field
/// </summary>
public int CommentFieldSize;
/// <summary>
/// Comment field, variable length string, not zero-terminated
/// </summary>
#if NET48
public string CommentField;
#else
public string? CommentField;
#endif
/// <summary>
/// Fully expanded file size in bytes
/// </summary>
public uint ExpandedFileSize;
/// <summary>
/// File time (DOS format)
/// </summary>
public ushort FileTime;
/// <summary>
/// File date (DOS format)
/// </summary>
public ushort FileDate;
/// <summary>
/// Unknown data, Checksum?
/// </summary>
/// <remarks>Minor version 22</remarks>
public ushort? Unknown;
}
}