2023-03-07 16:59:14 -05:00
|
|
|
namespace BinaryObjectScanner.Models.AACS
|
2023-01-12 09:40:02 -08:00
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// This is a speed-up record which can be ignored by devices not wishing to
|
|
|
|
|
/// take advantage of it. It is a lookup table which allows devices to quickly
|
|
|
|
|
/// find their subset-difference in the Explicit Subset-Difference record,
|
|
|
|
|
/// without processing the entire record. This Subset-Difference Index record
|
|
|
|
|
/// is always present, and always precedes the Explicit Subset-Difference record
|
|
|
|
|
/// in the MKB, although it does not necessarily immediately precede it.
|
|
|
|
|
/// </summary>
|
2023-01-12 12:28:31 -08:00
|
|
|
/// <see href="https://aacsla.com/wp-content/uploads/2019/02/AACS_Spec_Common_Final_0953.pdf"/>
|
2023-01-12 09:40:02 -08:00
|
|
|
public sealed class SubsetDifferenceIndexRecord : Record
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// The number of devices per index offset.
|
|
|
|
|
/// </summary>
|
|
|
|
|
public uint Span;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// These offsets refer to the offset within the following Explicit
|
|
|
|
|
/// Subset-Difference record, with 0 being the start of the record.
|
|
|
|
|
/// </summary>
|
|
|
|
|
// <remarks>UInt24 not UInt32</remarks>
|
|
|
|
|
public uint[] Offsets;
|
|
|
|
|
}
|
|
|
|
|
}
|