namespace SabreTools.Data.Models.OperaFS
{
///
/// OperaFS Directory Record
///
///
public class DirectoryRecord
{
///
/// Flags about this directory record
///
public DirectoryRecordFlags DirectoryRecordFlags { get; set; } = new();
///
/// Hash or random value to identify this record
///
public byte[] UniqueIdentifier { get; set; } = new byte[4];
///
/// Type of record, ASCII
///
public byte[] Type { get; set; } = new byte[4];
///
/// Sector size for this record
/// Should be 0x800
///
public uint BlockSize { get; set; }
///
/// Number of bytes in this record
///
public uint ByteCount { get; set; }
///
/// Number of blocks allocated to this record
///
public uint BlockCount { get; set; }
///
/// Burst, usually 0x1
///
public uint Burst { get; set; }
///
/// Gap, usually 0x0
///
public uint Gap { get; set; }
///
/// Filename of record
///
public byte[] Filename { get; set; } = new byte[32];
///
/// Number of duplicates of the file/directory provided
///
public uint LastAvatarIndex { get; set; }
///
/// Offset of the file/directories provided
/// Length of array is LastAvatarIndex + 1
///
public uint[] AvatarList { get; set; } = [];
}
}