Example #1
0
 /// <summary>
 /// Query the memory requirements for a sparse image.
 /// </summary>
 public SparseImageMemoryRequirements[] GetSparseMemoryRequirements()
 {
     unsafe
     {
         try
         {
             SparseImageMemoryRequirements[] result = default(SparseImageMemoryRequirements[]);
             uint sparseMemoryRequirementCount;
             SparseImageMemoryRequirements *marshalledSparseMemoryRequirements = null;
             Interop.Commands.vkGetImageSparseMemoryRequirements(this.parent.handle, this.handle, &sparseMemoryRequirementCount, null);
             marshalledSparseMemoryRequirements = (SparseImageMemoryRequirements *)Interop.HeapUtil.Allocate <SparseImageMemoryRequirements>((uint)sparseMemoryRequirementCount);
             Interop.Commands.vkGetImageSparseMemoryRequirements(this.parent.handle, this.handle, &sparseMemoryRequirementCount, marshalledSparseMemoryRequirements);
             result = new SparseImageMemoryRequirements[(uint)sparseMemoryRequirementCount];
             for (int index = 0; index < (uint)sparseMemoryRequirementCount; index++)
             {
                 result[index] = marshalledSparseMemoryRequirements[index];
             }
             return(result);
         }
         finally
         {
             Interop.HeapUtil.FreeLog();
         }
     }
 }
 public static extern unsafe void vkGetImageSparseMemoryRequirements(IntPtr device, ulong image, uint *pSparseMemoryRequirementCount, SparseImageMemoryRequirements *pSparseMemoryRequirements);
Example #3
0
 internal static unsafe extern void vkGetImageSparseMemoryRequirements(Device device, Image image, out UInt32 *SparseMemoryRequirementCount, SparseImageMemoryRequirements *SparseMemoryRequirements);
Example #4
0
 internal static unsafe extern void vkGetImageSparseMemoryRequirements(IntPtr device, UInt64 image, UInt32 *pSparseMemoryRequirementCount, SparseImageMemoryRequirements *pSparseMemoryRequirements);