public static int SizeOfMarshalDirect(this VkDisplaySurfaceCreateInfoKHR s) { if (s == null) { throw new InvalidOperationException("Trying to directly marshal a null."); } return (s.Next.SizeOfMarshalIndirect()); }
public static VkDisplaySurfaceCreateInfoKHR.Raw *MarshalIndirect(this VkDisplaySurfaceCreateInfoKHR s, ref byte *unmanaged) { if (s == null) { return((VkDisplaySurfaceCreateInfoKHR.Raw *) 0); } var result = (VkDisplaySurfaceCreateInfoKHR.Raw *)unmanaged; unmanaged += VkDisplaySurfaceCreateInfoKHR.Raw.SizeInBytes; *result = s.MarshalDirect(ref unmanaged); return(result); }
public VkObjectResult <IVkSurfaceKHR> CreateDisplayPlaneSurfaceKHR(VkDisplaySurfaceCreateInfoKHR createInfo, IVkAllocationCallbacks allocator) { var unmanagedSize = createInfo.SizeOfMarshalIndirect() + allocator.SizeOfMarshalIndirect(); var unmanagedArray = new byte[unmanagedSize]; fixed(byte *unmanagedStart = unmanagedArray) { var unmanaged = unmanagedStart; var pCreateInfo = createInfo.MarshalIndirect(ref unmanaged); var pAllocator = allocator.MarshalIndirect(ref unmanaged); VkSurfaceKHR.HandleType surfaceHandle; var result = Direct.CreateDisplayPlaneSurfaceKHR(Handle, pCreateInfo, pAllocator, &surfaceHandle); var instance = result == VkResult.Success ? new VkSurfaceKHR(this, surfaceHandle, allocator) : null; return(new VkObjectResult <IVkSurfaceKHR>(result, instance)); } }
public static VkDisplaySurfaceCreateInfoKHR.Raw MarshalDirect(this VkDisplaySurfaceCreateInfoKHR s, ref byte *unmanaged) { if (s == null) { throw new InvalidOperationException("Trying to directly marshal a null."); } var pNext = s.Next.MarshalIndirect(ref unmanaged); VkDisplaySurfaceCreateInfoKHR.Raw result; result.sType = VkStructureType.DisplaySurfaceCreateInfoKHR; result.pNext = pNext; result.flags = s.Flags; result.displayMode = s.DisplayMode?.Handle ?? VkDisplayModeKHR.HandleType.Null; result.planeIndex = s.PlaneIndex; result.planeStackIndex = s.PlaneStackIndex; result.transform = s.Transform; result.globalAlpha = s.GlobalAlpha; result.alphaMode = s.AlphaMode; result.imageExtent = s.ImageExtent; return(result); }
public VkObjectResult<IVkSurfaceKHR> CreateDisplayPlaneSurfaceKHR(VkDisplaySurfaceCreateInfoKHR createInfo, IVkAllocationCallbacks allocator) { var unmanagedSize = createInfo.SizeOfMarshalIndirect() + allocator.SizeOfMarshalIndirect(); var unmanagedArray = new byte[unmanagedSize]; fixed (byte* unmanagedStart = unmanagedArray) { var unmanaged = unmanagedStart; var pCreateInfo = createInfo.MarshalIndirect(ref unmanaged); var pAllocator = allocator.MarshalIndirect(ref unmanaged); VkSurfaceKHR.HandleType surfaceHandle; var result = Direct.CreateDisplayPlaneSurfaceKHR(Handle, pCreateInfo, pAllocator, &surfaceHandle); var instance = result == VkResult.Success ? new VkSurfaceKHR(this, surfaceHandle, allocator) : null; return new VkObjectResult<IVkSurfaceKHR>(result, instance); } }
public static int SizeOfMarshalIndirect(this VkDisplaySurfaceCreateInfoKHR s) => s == null ? 0 : s.SizeOfMarshalDirect() + VkDisplaySurfaceCreateInfoKHR.Raw.SizeInBytes;