Class VkDeviceQueueCreateInfo

  • All Implemented Interfaces:
    java.lang.AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

    public class VkDeviceQueueCreateInfo
    extends org.lwjgl.system.Struct
    implements org.lwjgl.system.NativeResource
    Structure specifying parameters of a newly created device queue.
    Valid Usage
    • queueFamilyIndex must be less than pQueueFamilyPropertyCount returned by vkGetPhysicalDeviceQueueFamilyProperties
    • queueCount must be less than or equal to the queueCount member of the VkQueueFamilyProperties structure, as returned by vkGetPhysicalDeviceQueueFamilyProperties in the pQueueFamilyProperties[queueFamilyIndex]
    • Each element of pQueuePriorities must be between 0.0 and 1.0 inclusive
    • If the protected memory feature is not enabled, the DEVICE_QUEUE_CREATE_PROTECTED_BIT bit of flags must not be set
    • If flags includes DEVICE_QUEUE_CREATE_PROTECTED_BIT, queueFamilyIndex must be the index of a queue family that includes the QUEUE_PROTECTED_BIT capability
    Valid Usage (Implicit)
    • sType must be STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO
    • pNext must be NULL or a pointer to a valid instance of VkDeviceQueueGlobalPriorityCreateInfoKHR
    • The sType value of each struct in the pNext chain must be unique
    • flags must be a valid combination of VkDeviceQueueCreateFlagBits values
    • pQueuePriorities must be a valid pointer to an array of queueCount float values
    • queueCount must be greater than 0
    See Also

    VkDeviceCreateInfo

    Layout

    
     struct VkDeviceQueueCreateInfo {
         VkStructureType sType();
         void const * pNext();
         VkDeviceQueueCreateFlags flags();
         uint32_t queueFamilyIndex();
         uint32_t queueCount();
         float const * pQueuePriorities();
     }
    • Field Detail

      • SIZEOF

        The struct size in bytes.
      • ALIGNOF

        The struct alignment in bytes.
      • STYPE, PNEXT, FLAGS, QUEUEFAMILYINDEX, QUEUECOUNT, PQUEUEPRIORITIES

        The struct member offsets.
    • Constructor Detail

      • VkDeviceQueueCreateInfo

        public VkDeviceQueueCreateInfo​(java.nio.ByteBuffer container)
        Creates a VkDeviceQueueCreateInfo instance at the current position of the specified ByteBuffer container. Changes to the buffer's content will be visible to the struct instance and vice versa.

        The created instance holds a strong reference to the container object.

    • Method Detail

      • sizeof

        public int sizeof()
        Specified by:
        sizeof in class org.lwjgl.system.Struct
      • sType

        public int sType()
        the type of this structure.
      • pNext

        public long pNext()
        NULL or a pointer to a structure extending this structure.
      • flags

        public int flags()
        a bitmask indicating behavior of the queue.
      • queueFamilyIndex

        public int queueFamilyIndex()
        an unsigned integer indicating the index of the queue family in which to create the queue on this device. This index corresponds to the index of an element of the pQueueFamilyProperties array that was returned by vkGetPhysicalDeviceQueueFamilyProperties.
      • queueCount

        public int queueCount()
        an unsigned integer specifying the number of queues to create in the queue family indicated by queueFamilyIndex.
      • pQueuePriorities

        public java.nio.FloatBuffer pQueuePriorities()
        a pointer to an array of queueCount normalized floating point values, specifying priorities of work that will be submitted to each created queue. See Queue Priority for more information.
      • set

        public VkDeviceQueueCreateInfo set​(int sType,
                                           long pNext,
                                           int flags,
                                           int queueFamilyIndex,
                                           java.nio.FloatBuffer pQueuePriorities)
        Initializes this struct with the specified values.
      • malloc

        public static VkDeviceQueueCreateInfo malloc()
        Returns a new VkDeviceQueueCreateInfo instance allocated with memAlloc. The instance must be explicitly freed.
      • calloc

        public static VkDeviceQueueCreateInfo calloc()
        Returns a new VkDeviceQueueCreateInfo instance allocated with memCalloc. The instance must be explicitly freed.
      • create

        public static VkDeviceQueueCreateInfo create()
        Returns a new VkDeviceQueueCreateInfo instance allocated with BufferUtils.
      • create

        public static VkDeviceQueueCreateInfo create​(long address)
        Returns a new VkDeviceQueueCreateInfo instance for the specified memory address.
      • malloc

        public static VkDeviceQueueCreateInfo malloc​(org.lwjgl.system.MemoryStack stack)
        Returns a new VkDeviceQueueCreateInfo instance allocated on the specified MemoryStack.
        Parameters:
        stack - the stack from which to allocate
      • calloc

        public static VkDeviceQueueCreateInfo calloc​(org.lwjgl.system.MemoryStack stack)
        Returns a new VkDeviceQueueCreateInfo instance allocated on the specified MemoryStack and initializes all its bits to zero.
        Parameters:
        stack - the stack from which to allocate
      • calloc

        public static VkDeviceQueueCreateInfo.Buffer calloc​(int capacity,
                                                            org.lwjgl.system.MemoryStack stack)
        Returns a new VkDeviceQueueCreateInfo.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.
        Parameters:
        stack - the stack from which to allocate
        capacity - the buffer capacity
      • nsType

        public static int nsType​(long struct)
        Unsafe version of sType().
      • npNext

        public static long npNext​(long struct)
        Unsafe version of pNext().
      • nflags

        public static int nflags​(long struct)
        Unsafe version of flags().
      • nqueueFamilyIndex

        public static int nqueueFamilyIndex​(long struct)
        Unsafe version of queueFamilyIndex().
      • nqueueCount

        public static int nqueueCount​(long struct)
        Unsafe version of queueCount().
      • npQueuePriorities

        public static java.nio.FloatBuffer npQueuePriorities​(long struct)
        Unsafe version of pQueuePriorities.
      • nsType

        public static void nsType​(long struct,
                                  int value)
        Unsafe version of sType.
      • npNext

        public static void npNext​(long struct,
                                  long value)
        Unsafe version of pNext.
      • nflags

        public static void nflags​(long struct,
                                  int value)
        Unsafe version of flags.
      • nqueueFamilyIndex

        public static void nqueueFamilyIndex​(long struct,
                                             int value)
        Unsafe version of queueFamilyIndex.
      • nqueueCount

        public static void nqueueCount​(long struct,
                                       int value)
        Sets the specified value to the queueCount field of the specified struct.
      • npQueuePriorities

        public static void npQueuePriorities​(long struct,
                                             java.nio.FloatBuffer value)
        Unsafe version of pQueuePriorities.
      • validate

        public static void validate​(long struct)
        Validates pointer members that should not be NULL.
        Parameters:
        struct - the struct to validate