foxygit / GZDoom Log in
commits tags

/src/common/platform/win32/zutil.natvis · 2.74 KB

raw
<?xml version="1.0" encoding="utf-8"?>

<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">

<Type Name="TArray&lt;*&gt;">
    <DisplayString>Size = {Count}</DisplayString>
    <Expand>
        <Item Name="Size">Count</Item>
        <Item Name="Capacity">Most</Item>
        <ArrayItems>
            <Size>Count</Size>
            <ValuePointer>(value_type*)Array</ValuePointer>
        </ArrayItems>
    </Expand>
</Type>

<Type Name="TArrayView&lt;*&gt;">
    <DisplayString>Size = {Count}</DisplayString>
    <Expand>
        <Item Name="Size">Count</Item>
        <ArrayItems>
            <Size>Count</Size>
            <ValuePointer>(value_type*)Array</ValuePointer>
        </ArrayItems>
    </Expand>
</Type>

<Type Name="TSparseArrayView&lt;*&gt;">
	<DisplayString>Size = {Count}</DisplayString>
	<Expand>
		<Item Name="Size">Count</Item>
		<ArrayItems>
			<Size>Count</Size>
			<ValuePointer>(value_type*)Array</ValuePointer>
		</ArrayItems>
	</Expand>
</Type>

<Type Name="TStaticPointedArray&lt;*&gt;">
    <DisplayString>Size = {Count}</DisplayString>
    <Expand>
        <Item Name="Size">Count</Item>
        <ArrayItems>
            <Size>Count</Size>
            <ValuePointer>(value_type*)Array</ValuePointer>
        </ArrayItems>
    </Expand>
</Type>

<Type Name="FName">
    <DisplayString>{FName::NameData.NameArray[Index].Text, s}</DisplayString>
</Type>

<Type Name="FString">
    <DisplayString>{Chars, s}</DisplayString>
    <Expand>
        <Item Name="Size">((FStringData*)Chars - 1)->Len</Item>
        <Item Name="Capacity">((FStringData*)Chars - 1)->AllocLen</Item>
        <Item Name="Reference Count">((FStringData*)Chars - 1)->RefCount</Item>
    </Expand>
</Type>

<Type Name="TAngle&lt;*&gt;">
    <DisplayString>{Degrees}</DisplayString>
</Type>

<Type Name="PClass">
    <DisplayString>{TypeName}</DisplayString>
</Type>

<Type Name="DObject">
    <DisplayString>{Class->TypeName}</DisplayString>
</Type>

<Type Name="TObjPtr&lt;*&gt;">
    <DisplayString Condition="o == nullptr">&lt;NULL&gt;</DisplayString>
    <DisplayString Condition="o != nullptr">{o->Class->TypeName}</DisplayString>
</Type>

<Type Name="FTextureID">
    <DisplayString Condition="texnum == -1">&lt;None&gt;</DisplayString>
    <DisplayString Condition="texnum != -1">{TexMan.Textures[texnum].Texture->Name}</DisplayString>
    <Expand>
        <Item Name="Index">texnum</Item>
        <Item Name="Texture">TexMan.Textures[texnum].Texture</Item>
    </Expand>
</Type>

<Type Name="FSoundID">
	<DisplayString Condition="soundEngine == nullptr">&lt;No Sound Engine&gt;</DisplayString>
    <DisplayString Condition="ID == 0">&lt;None&gt;</DisplayString>
    <DisplayString Condition="ID != 0">{soundEngine->S_sfx[ID].name}</DisplayString>
</Type>

</AutoVisualizer>