public static int SizeOfMarshalDirect(this VkCommandBufferBeginInfo s) { if (s == null) { throw new InvalidOperationException("Trying to directly marshal a null."); } return (s.Next.SizeOfMarshalIndirect() + s.InheritanceInfo.SizeOfMarshalIndirect()); }
public static VkCommandBufferBeginInfo.Raw *MarshalIndirect(this VkCommandBufferBeginInfo s, ref byte *unmanaged) { if (s == null) { return((VkCommandBufferBeginInfo.Raw *) 0); } var result = (VkCommandBufferBeginInfo.Raw *)unmanaged; unmanaged += VkCommandBufferBeginInfo.Raw.SizeInBytes; *result = s.MarshalDirect(ref unmanaged); return(result); }
public VkResult Begin(VkCommandBufferBeginInfo beginInfo) { var unmanagedSize = beginInfo.SizeOfMarshalIndirect(); var unmanagedArray = new byte[unmanagedSize]; fixed(byte *unmanagedStart = unmanagedArray) { var unmanaged = unmanagedStart; var _commandBuffer = Handle; var _pBeginInfo = beginInfo.MarshalIndirect(ref unmanaged); return(Direct.BeginCommandBuffer(_commandBuffer, _pBeginInfo)); } }
public static VkCommandBufferBeginInfo.Raw MarshalDirect(this VkCommandBufferBeginInfo s, ref byte *unmanaged) { if (s == null) { throw new InvalidOperationException("Trying to directly marshal a null."); } var pNext = s.Next.MarshalIndirect(ref unmanaged); var pInheritanceInfo = s.InheritanceInfo.MarshalIndirect(ref unmanaged); VkCommandBufferBeginInfo.Raw result; result.sType = VkStructureType.CommandBufferBeginInfo; result.pNext = pNext; result.flags = s.Flags; result.pInheritanceInfo = pInheritanceInfo; return(result); }
public VkResult Begin(VkCommandBufferBeginInfo beginInfo) { var unmanagedSize = beginInfo.SizeOfMarshalIndirect(); var unmanagedArray = new byte[unmanagedSize]; fixed (byte* unmanagedStart = unmanagedArray) { var unmanaged = unmanagedStart; var _commandBuffer = Handle; var _pBeginInfo = beginInfo.MarshalIndirect(ref unmanaged); return Direct.BeginCommandBuffer(_commandBuffer, _pBeginInfo); } }
public static int SizeOfMarshalIndirect(this VkCommandBufferBeginInfo s) => s == null ? 0 : s.SizeOfMarshalDirect() + VkCommandBufferBeginInfo.Raw.SizeInBytes;