/// <summary> /// /// </summary> internal static unsafe SparseMemoryBind MarshalFrom(SharpVk.Interop.SparseMemoryBind *pointer) { SparseMemoryBind result = default(SparseMemoryBind); result.ResourceOffset = pointer->ResourceOffset; result.Size = pointer->Size; 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.SparseMemoryBind *pointer) { pointer->ResourceOffset = this.ResourceOffset; pointer->Size = this.Size; 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); } }