/// <summary> /// /// </summary> internal static unsafe SparseImageMemoryBind MarshalFrom(SharpVk.Interop.SparseImageMemoryBind *pointer) { SparseImageMemoryBind result = default(SparseImageMemoryBind); result.Subresource = pointer->Subresource; result.Offset = pointer->Offset; result.Extent = pointer->Extent; result.Memory = new SharpVk.DeviceMemory(default(SharpVk.Device), pointer->Memory); result.MemoryOffset = pointer->MemoryOffset; result.Flags = pointer->Flags; return(result); }
/// <summary> /// /// </summary> internal unsafe void MarshalTo(SharpVk.Interop.SparseImageMemoryBind *pointer) { pointer->Subresource = this.Subresource; pointer->Offset = this.Offset; pointer->Extent = this.Extent; pointer->Memory = this.Memory?.handle ?? default(SharpVk.Interop.DeviceMemory); pointer->MemoryOffset = this.MemoryOffset; if (this.Flags != null) { pointer->Flags = this.Flags.Value; } else { pointer->Flags = default(SharpVk.SparseMemoryBindFlags); } }