// <auto-generated/>
#nullable enable
using Microsoft.Diagnostics.DataContractReader;
using Microsoft.Diagnostics.DataContractReader.Contracts;
using Microsoft.Diagnostics.DataContractReader.Generated;
namespace Microsoft.Diagnostics.DataContractReader.Data;
/// <summary>Wraps the <c>OomHistory</c> type.</summary>
partial class OomHistory : global::Microsoft.Diagnostics.DataContractReader.Data.IReadableData
{
private static readonly string[] _typeNames = new[] { "OomHistory" };
[UsesDataDescriptorTypeSize]
public static uint GetSize(Target target)
=> checked((uint)LayoutSet.Resolve(target, _typeNames).InstanceSize);
[DataDescriptorDependency("Reason", "int32")]
public static int GetReasonOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "Reason");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("AllocSize", "nuint")]
public static int GetAllocSizeOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "AllocSize");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("Reserved", "pointer")]
public static int GetReservedOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "Reserved");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("Allocated", "pointer")]
public static int GetAllocatedOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "Allocated");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("GcIndex", "nuint")]
public static int GetGcIndexOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "GcIndex");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("Fgm", "int32")]
public static int GetFgmOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "Fgm");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("Size", "nuint")]
public static int GetSizeOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "Size");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("AvailablePagefileMb", "nuint")]
public static int GetAvailablePagefileMbOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "AvailablePagefileMb");
return type.Fields[name].Offset;
}
[DataDescriptorDependency("LohP", "uint32")]
public static int GetLohPOffset(Target target)
{
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
layouts.Select(default, out var type, out _, out var name, "LohP");
return type.Fields[name].Offset;
}
public TargetPointer Address { get; }
private readonly Target _target;
private readonly LayoutSet _layouts;
partial void OnInit(Target target, TargetPointer address);
public OomHistory(Target target, TargetPointer address)
{
Address = address;
_target = target;
_layouts = LayoutSet.Resolve(target, _typeNames);
OnInit(target, address);
}
static OomHistory IData<OomHistory>.Create(Target target, TargetPointer address)
=> new OomHistory(target, address);
private int _Reason__value = default!;
private bool _Reason__read;
[DataDescriptorDependency("Reason", "int32")]
public partial int Reason
{
get
{
if (!_Reason__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "Reason");
_Reason__value = _target.ReadField<int>(b, t, n);
_Reason__read = true;
}
return _Reason__value;
}
}
private TargetNUInt _AllocSize__value = default!;
private bool _AllocSize__read;
[DataDescriptorDependency("AllocSize", "nuint")]
public partial TargetNUInt AllocSize
{
get
{
if (!_AllocSize__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "AllocSize");
_AllocSize__value = _target.ReadNUIntField(b, t, n);
_AllocSize__read = true;
}
return _AllocSize__value;
}
}
private TargetPointer _Reserved__value = default!;
private bool _Reserved__read;
[DataDescriptorDependency("Reserved", "pointer")]
public partial TargetPointer Reserved
{
get
{
if (!_Reserved__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "Reserved");
_Reserved__value = _target.ReadPointerField(b, t, n);
_Reserved__read = true;
}
return _Reserved__value;
}
}
private TargetPointer _Allocated__value = default!;
private bool _Allocated__read;
[DataDescriptorDependency("Allocated", "pointer")]
public partial TargetPointer Allocated
{
get
{
if (!_Allocated__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "Allocated");
_Allocated__value = _target.ReadPointerField(b, t, n);
_Allocated__read = true;
}
return _Allocated__value;
}
}
private TargetNUInt _GcIndex__value = default!;
private bool _GcIndex__read;
[DataDescriptorDependency("GcIndex", "nuint")]
public partial TargetNUInt GcIndex
{
get
{
if (!_GcIndex__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "GcIndex");
_GcIndex__value = _target.ReadNUIntField(b, t, n);
_GcIndex__read = true;
}
return _GcIndex__value;
}
}
private int _Fgm__value = default!;
private bool _Fgm__read;
[DataDescriptorDependency("Fgm", "int32")]
public partial int Fgm
{
get
{
if (!_Fgm__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "Fgm");
_Fgm__value = _target.ReadField<int>(b, t, n);
_Fgm__read = true;
}
return _Fgm__value;
}
}
private TargetNUInt _Size__value = default!;
private bool _Size__read;
[DataDescriptorDependency("Size", "nuint")]
public partial TargetNUInt Size
{
get
{
if (!_Size__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "Size");
_Size__value = _target.ReadNUIntField(b, t, n);
_Size__read = true;
}
return _Size__value;
}
}
private TargetNUInt _AvailablePagefileMb__value = default!;
private bool _AvailablePagefileMb__read;
[DataDescriptorDependency("AvailablePagefileMb", "nuint")]
public partial TargetNUInt AvailablePagefileMb
{
get
{
if (!_AvailablePagefileMb__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "AvailablePagefileMb");
_AvailablePagefileMb__value = _target.ReadNUIntField(b, t, n);
_AvailablePagefileMb__read = true;
}
return _AvailablePagefileMb__value;
}
}
private uint _LohP__value = default!;
private bool _LohP__read;
[DataDescriptorDependency("LohP", "uint32")]
public partial uint LohP
{
get
{
if (!_LohP__read)
{
_layouts.Select(Address, out var t, out var b, out var n, "LohP");
_LohP__value = _target.ReadField<uint>(b, t, n);
_LohP__read = true;
}
return _LohP__value;
}
}
[DataDescriptorDependency("Reason", "int32")]
[DataDescriptorDependency("AllocSize", "nuint")]
[DataDescriptorDependency("Reserved", "pointer")]
[DataDescriptorDependency("Allocated", "pointer")]
[DataDescriptorDependency("GcIndex", "nuint")]
[DataDescriptorDependency("Fgm", "int32")]
[DataDescriptorDependency("Size", "nuint")]
[DataDescriptorDependency("AvailablePagefileMb", "nuint")]
[DataDescriptorDependency("LohP", "uint32")]
void global::Microsoft.Diagnostics.DataContractReader.Data.IReadableData.EnsureAllFieldsRead()
{
_ = Reason;
_ = AllocSize;
_ = Reserved;
_ = Allocated;
_ = GcIndex;
_ = Fgm;
_ = Size;
_ = AvailablePagefileMb;
_ = LohP;
}
}