mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-05 17:40:39 +00:00
102 lines
5.5 KiB
XML
102 lines
5.5 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
|
|
<Type Name="rdcstr">
|
|
<DisplayString Condition="d.fixed.flags & rdcstr::FIXED_STATE">{d.fixed.str,s}</DisplayString>
|
|
<DisplayString Condition="d.fixed.flags & rdcstr::ALLOC_STATE">{d.alloc.str,s}</DisplayString>
|
|
<DisplayString>{d.arr.str,s}</DisplayString>
|
|
<StringView Condition="d.fixed.flags & rdcstr::FIXED_STATE">d.fixed.str,s</StringView>
|
|
<StringView Condition="d.fixed.flags & rdcstr::ALLOC_STATE">d.alloc.str,s</StringView>
|
|
<StringView>d.arr.str,s</StringView>
|
|
<Expand>
|
|
<Synthetic Name="[mode]" Condition="d.fixed.flags & rdcstr::FIXED_STATE">
|
|
<DisplayString>Compile-Time Literal</DisplayString>
|
|
</Synthetic>
|
|
<Item Name="[size]" ExcludeView="simple" Condition="d.fixed.flags & rdcstr::FIXED_STATE">d.fixed.size</Item>
|
|
<Item Name="[capacity]" ExcludeView="simple" Condition="d.fixed.flags & rdcstr::FIXED_STATE">"N/A"</Item>
|
|
<ArrayItems Condition="d.fixed.flags & rdcstr::FIXED_STATE">
|
|
<Size>d.fixed.size</Size>
|
|
<ValuePointer>d.fixed.str</ValuePointer>
|
|
</ArrayItems>
|
|
|
|
<Synthetic Name="[mode]" Condition="d.fixed.flags & rdcstr::ALLOC_STATE">
|
|
<DisplayString>Heap-allocated String</DisplayString>
|
|
</Synthetic>
|
|
<Item Name="[size]" ExcludeView="simple" Condition="d.fixed.flags & rdcstr::ALLOC_STATE">d.alloc.size</Item>
|
|
<Item Name="[capacity]" ExcludeView="simple" Condition="d.fixed.flags & rdcstr::ALLOC_STATE">d.alloc._capacity & rdcstr::alloc_ptr_rep::CAPACITY_MASK</Item>
|
|
<ArrayItems Condition="d.fixed.flags & rdcstr::ALLOC_STATE">
|
|
<Size>d.alloc.size</Size>
|
|
<ValuePointer>d.alloc.str</ValuePointer>
|
|
</ArrayItems>
|
|
|
|
<Synthetic Name="[mode]" Condition="(d.fixed.flags & (rdcstr::ALLOC_STATE|rdcstr::FIXED_STATE)) == 0">
|
|
<DisplayString>Internal Array Small String</DisplayString>
|
|
</Synthetic>
|
|
<Item Name="[size]" ExcludeView="simple" Condition="(d.fixed.flags & (rdcstr::ALLOC_STATE|rdcstr::FIXED_STATE)) == 0">d.arr._size</Item>
|
|
<Item Name="[capacity]" ExcludeView="simple" Condition="(d.fixed.flags & (rdcstr::ALLOC_STATE|rdcstr::FIXED_STATE)) == 0">d.arr.capacity</Item>
|
|
<ArrayItems Condition="(d.fixed.flags & (rdcstr::ALLOC_STATE|rdcstr::FIXED_STATE)) == 0">
|
|
<Size>d.arr._size</Size>
|
|
<ValuePointer>d.arr.str</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="rdcarray<*>">
|
|
<DisplayString>{{ size={usedCount} }}</DisplayString>
|
|
<Expand>
|
|
<Item Name="[size]" ExcludeView="simple">usedCount</Item>
|
|
<Item Name="[capacity]" ExcludeView="simple">allocatedCount</Item>
|
|
<ArrayItems>
|
|
<Size>usedCount</Size>
|
|
<ValuePointer>elems</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="rdcpair<*>">
|
|
<DisplayString>{{ {first}, {second} }}</DisplayString>
|
|
<Expand>
|
|
<Item Name="first" ExcludeView="simple">first</Item>
|
|
<Item Name="second" ExcludeView="simple">second</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="SDType">
|
|
<DisplayString>{name}</DisplayString>
|
|
<Expand>
|
|
<Item Name="name">name</Item>
|
|
<Item Name="basetype">basetype</Item>
|
|
<Item Name="byteSize">byteSize</Item>
|
|
<Item Name="flags">flags</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="SDObject">
|
|
<DisplayString Condition="type.flags & SDTypeFlags::HasCustomString">{name} = {data.str}</DisplayString>
|
|
<DisplayString Condition="type.basetype == SDBasic::String">{name} = {data.str}</DisplayString>
|
|
<DisplayString Condition="type.basetype == SDBasic::UnsignedInteger">{name} = {data.basic.u}</DisplayString>
|
|
<DisplayString Condition="type.basetype == SDBasic::SignedInteger">{name} = {data.basic.i}</DisplayString>
|
|
<DisplayString Condition="type.basetype == SDBasic::Float">{name} = {data.basic.d}</DisplayString>
|
|
<DisplayString Condition="type.basetype == SDBasic::Boolean">{name} = {data.basic.b}</DisplayString>
|
|
<DisplayString Condition="type.basetype == SDBasic::Character">{name} = {data.basic.c}</DisplayString>
|
|
<DisplayString Condition="type.basetype == SDBasic::Resource">{name} = {data.basic.id}</DisplayString>
|
|
<DisplayString Condition="type.basetype == SDBasic::Array">{name} = {type.name}[]</DisplayString>
|
|
<DisplayString>SDObject: {type.name} {name}</DisplayString>
|
|
<Expand>
|
|
<Item Condition="type.basetype == SDBasic::Array" Name="[size]" ExcludeView="simple">data.children.usedCount</Item>
|
|
<ArrayItems Condition="type.basetype == SDBasic::Array || type.basetype == SDBasic::Struct">
|
|
<Size>data.children.usedCount</Size>
|
|
<ValuePointer>data.children.elems</ValuePointer>
|
|
</ArrayItems>
|
|
<Item Condition="type.basetype != SDBasic::Array && type.basetype != SDBasic::Struct" Name="type">type</Item>
|
|
<Item Condition="type.basetype != SDBasic::Array && type.basetype != SDBasic::Struct" Name="name">name</Item>
|
|
<Item Condition="type.basetype != SDBasic::Array && type.basetype != SDBasic::Struct" Name="data">data</Item>
|
|
</Expand>
|
|
</Type>
|
|
<Type Name="SDChunk">
|
|
<DisplayString>SDChunk: {name} ({metadata.chunkID})</DisplayString>
|
|
<Expand>
|
|
<Item Name="metadata" ExcludeView="simple">metadata</Item>
|
|
<Item Name="[size]" ExcludeView="simple">data.children.usedCount</Item>
|
|
<ArrayItems>
|
|
<Size>data.children.usedCount</Size>
|
|
<ValuePointer>data.children.elems</ValuePointer>
|
|
</ArrayItems>
|
|
</Expand>
|
|
</Type>
|
|
</AutoVisualizer> |