Example #1
0
 /// <summary>
 /// Reports properties of the queues of the specified physical device.
 /// </summary>
 public QueueFamilyProperties2[] GetQueueFamilyProperties2()
 {
     unsafe
     {
         try
         {
             var commandDelegate             = this.commandCache.GetCommandDelegate <Interop.vkGetPhysicalDeviceQueueFamilyProperties2KHR>("vkGetPhysicalDeviceQueueFamilyProperties2KHR", "instance");
             QueueFamilyProperties2[] result = default(QueueFamilyProperties2[]);
             uint queueFamilyPropertyCount;
             Interop.QueueFamilyProperties2 *marshalledQueueFamilyProperties = null;
             commandDelegate(this.handle, &queueFamilyPropertyCount, null);
             marshalledQueueFamilyProperties = (Interop.QueueFamilyProperties2 *)Interop.HeapUtil.Allocate <Interop.QueueFamilyProperties2>((uint)queueFamilyPropertyCount);
             commandDelegate(this.handle, &queueFamilyPropertyCount, marshalledQueueFamilyProperties);
             result = new QueueFamilyProperties2[(uint)queueFamilyPropertyCount];
             for (int index = 0; index < (uint)queueFamilyPropertyCount; index++)
             {
                 result[index] = QueueFamilyProperties2.MarshalFrom(&marshalledQueueFamilyProperties[index]);
             }
             return(result);
         }
         finally
         {
             Interop.HeapUtil.FreeLog();
         }
     }
 }
        /// <summary>
        ///
        /// </summary>
        internal static unsafe QueueFamilyProperties2 MarshalFrom(SharpVk.Interop.QueueFamilyProperties2 *pointer)
        {
            QueueFamilyProperties2 result = default(QueueFamilyProperties2);

            result.QueueFamilyProperties = pointer->QueueFamilyProperties;
            return(result);
        }
        internal static unsafe QueueFamilyProperties2 MarshalFrom(Interop.QueueFamilyProperties2 *value)
        {
            QueueFamilyProperties2 result = new QueueFamilyProperties2();

            result.QueueFamilyProperties = value->QueueFamilyProperties;
            return(result);
        }