using System; using System.Runtime.InteropServices; using static Veldrid.MetalBindings.ObjectiveCRuntime; namespace Veldrid.MetalBindings { [StructLayout(LayoutKind.Sequential)] public struct MTLCommandQueue { public readonly IntPtr NativePtr; public MTLCommandBuffer commandBuffer() => objc_msgSend(NativePtr, sel_commandBuffer); public void insertDebugCaptureBoundary() => objc_msgSend(NativePtr, sel_insertDebugCaptureBoundary); private static readonly Selector sel_commandBuffer = "commandBuffer"; private static readonly Selector sel_insertDebugCaptureBoundary = "insertDebugCaptureBoundary"; } }