|
// <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>GCHeap</c> type.</summary>
partial class GCHeapSVR
{
private static readonly string[] _typeNames = new[] { "GCHeap" };
public TargetPointer Address { get; }
partial void OnInit(Target target, TargetPointer address);
public GCHeapSVR(Target target, TargetPointer address)
{
Address = address;
LayoutSet layouts = LayoutSet.Resolve(target, _typeNames);
{
if (layouts.TrySelect(address, out var t, out var b, out var n, "MarkArray"))
MarkArray = target.ReadPointerField(b, t, n);
else
MarkArray = default(TargetPointer?);
}
{
if (layouts.TrySelect(address, out var t, out var b, out var n, "NextSweepObj"))
NextSweepObj = target.ReadPointerField(b, t, n);
else
NextSweepObj = default(TargetPointer?);
}
{
if (layouts.TrySelect(address, out var t, out var b, out var n, "BackgroundMinSavedAddr"))
BackgroundMinSavedAddr = target.ReadPointerField(b, t, n);
else
BackgroundMinSavedAddr = default(TargetPointer?);
}
{
if (layouts.TrySelect(address, out var t, out var b, out var n, "BackgroundMaxSavedAddr"))
BackgroundMaxSavedAddr = target.ReadPointerField(b, t, n);
else
BackgroundMaxSavedAddr = default(TargetPointer?);
}
{
layouts.Select(address, out var t, out var b, out var n, "AllocAllocated");
AllocAllocated = target.ReadPointerField(b, t, n);
}
{
layouts.Select(address, out var t, out var b, out var n, "EphemeralHeapSegment");
EphemeralHeapSegment = target.ReadPointerField(b, t, n);
}
{
layouts.Select(address, out var t, out var b, out var n, "CardTable");
CardTable = target.ReadPointerField(b, t, n);
}
{
layouts.Select(address, out var t, out var b, out var n, "FinalizeQueue");
FinalizeQueue = target.ReadPointerField(b, t, n);
}
{
layouts.Select(address, out var t, out var b, out var n, "GenerationTable");
GenerationTable = b + (ulong)t.Fields[n].Offset;
}
{
if (layouts.TrySelect(address, out var t, out var b, out var n, "SavedSweepEphemeralSeg"))
SavedSweepEphemeralSeg = target.ReadPointerField(b, t, n);
else
SavedSweepEphemeralSeg = default(TargetPointer?);
}
{
if (layouts.TrySelect(address, out var t, out var b, out var n, "SavedSweepEphemeralStart"))
SavedSweepEphemeralStart = target.ReadPointerField(b, t, n);
else
SavedSweepEphemeralStart = default(TargetPointer?);
}
{
layouts.Select(address, out var t, out var b, out var n, "OomData");
OomData = target.ReadDataField<Data.OomHistory>(b, t, n);
}
{
layouts.Select(address, out var t, out var b, out var n, "InternalRootArray");
InternalRootArray = target.ReadPointerField(b, t, n);
}
{
layouts.Select(address, out var t, out var b, out var n, "InternalRootArrayIndex");
InternalRootArrayIndex = target.ReadNUIntField(b, t, n);
}
{
layouts.Select(address, out var t, out var b, out var n, "HeapAnalyzeSuccess");
HeapAnalyzeSuccess = target.ReadField<int>(b, t, n) != 0;
}
{
layouts.Select(address, out var t, out var b, out var n, "InterestingData");
InterestingData = b + (ulong)t.Fields[n].Offset;
}
{
layouts.Select(address, out var t, out var b, out var n, "CompactReasons");
CompactReasons = b + (ulong)t.Fields[n].Offset;
}
{
layouts.Select(address, out var t, out var b, out var n, "ExpandMechanisms");
ExpandMechanisms = b + (ulong)t.Fields[n].Offset;
}
{
layouts.Select(address, out var t, out var b, out var n, "InterestingMechanismBits");
InterestingMechanismBits = b + (ulong)t.Fields[n].Offset;
}
{
if (layouts.TrySelect(address, out var t, out var b, out var n, "FreeableSohSegment"))
FreeableSohSegment = target.ReadPointerField(b, t, n);
else
FreeableSohSegment = default(TargetPointer?);
}
{
if (layouts.TrySelect(address, out var t, out var b, out var n, "FreeableUohSegment"))
FreeableUohSegment = target.ReadPointerField(b, t, n);
else
FreeableUohSegment = default(TargetPointer?);
}
{
if (layouts.TrySelect(address, out var t, out var b, out var n, "FreeRegions"))
FreeRegions = target.ReadPointerField(b, t, n);
else
FreeRegions = default(TargetPointer?);
}
OnInit(target, address);
}
static GCHeapSVR IData<GCHeapSVR>.Create(Target target, TargetPointer address)
=> new GCHeapSVR(target, address);
}
|