namespace SabreTools.Data.Models.OLE
{
///
/// The ArrayHeader packet represents the type and dimensions of an array property type.
///
///
public class ArrayHeader
{
///
/// MUST be set to the value obtained by clearing the VT_ARRAY (0x2000) bit of
/// this array property's PropertyType value.
///
public PropertyType Type { get; set; }
///
/// An unsigned integer representing the number of dimensions in the array
/// property. MUST be at least 1 and at most 31.
///
public uint NumDimensions { get; set; }
///
/// MUST be a sequence of ArrayDimension packets
///
/// The number of scalar values in an array property can be calculated from the ArrayHeader packet
/// as the product of the Size fields of each of the ArrayDimension packets.
///
public ArrayDimension[] Dimensions { get; set; } = [];
}
}