namespace SabreTools.Data.Models.CFB
{
///
/// VARIANT is a container for a union that can hold many types of data.
///
///
public sealed class Variant
{
///
/// MUST be set to the size, in quad words (64 bits), of the structure.
///
public uint Size { get; set; }
///
/// MUST be set to 0 and MUST be ignored by the recipient.
///
public uint RpcReserved { get; set; }
///
/// MUST be set to one of the values specified with a "V".
///
public VariantType VariantType { get; set; }
///
/// MAY be set to 0 and MUST be ignored by the recipient.
///
public ushort Reserved1 { get; set; }
///
/// MAY be set to 0 and MUST be ignored by the recipient.
///
public ushort Reserved2 { get; set; }
///
/// MAY be set to 0 and MUST be ignored by the recipient.
///
public ushort Reserved3 { get; set; }
///
/// MUST contain an instance of the type, according to the value
/// in the field.
///
public object Union { get; set; } = new();
}
}