public static VkSparseImageMemoryBind.Raw *MarshalIndirect(this VkSparseImageMemoryBind s, ref byte *unmanaged)
        {
            var result = (VkSparseImageMemoryBind.Raw *)unmanaged;

            unmanaged += VkSparseImageMemoryBind.Raw.SizeInBytes;
            *result = s.MarshalDirect(ref unmanaged);
            return(result);
        }
 public static VkSparseImageMemoryBind.Raw MarshalDirect(this VkSparseImageMemoryBind s, ref byte *unmanaged)
 {
     VkSparseImageMemoryBind.Raw result;
     result.subresource  = s.Subresource;
     result.offset       = s.Offset;
     result.extent       = s.Extent;
     result.memory       = s.Memory?.Handle ?? VkDeviceMemory.HandleType.Null;
     result.memoryOffset = s.MemoryOffset;
     result.flags        = s.Flags;
     return(result);
 }
 public static int SizeOfMarshalIndirect(this VkSparseImageMemoryBind s) =>
 s.SizeOfMarshalDirect() + VkSparseImageMemoryBind.Raw.SizeInBytes;
 public static int SizeOfMarshalDirect(this VkSparseImageMemoryBind s)
 {
     return(0);
 }