using System.Runtime.InteropServices; namespace Veldrid.SPIRV { [StructLayout(LayoutKind.Sequential, Pack = 1)] internal struct ReflectionInfo { public InteropArray VertexElements; // InteropArray public InteropArray ResourceLayouts; // InteropArray } [StructLayout(LayoutKind.Sequential, Pack = 1)] internal struct NativeVertexElementDescription { public InteropArray Name; // InteropArray public VertexElementSemantic Semantic; public VertexElementFormat Format; public uint Offset; } [StructLayout(LayoutKind.Sequential, Pack = 1)] internal struct NativeResourceLayoutDescription { public InteropArray ResourceElements; // InteropArray } [StructLayout(LayoutKind.Sequential, Pack = 1)] internal struct NativeResourceElementDescription { public InteropArray Name; // InteropArray public ResourceKind Kind; public ShaderStages Stages; public ResourceLayoutElementOptions Options; } }