Top Description Inners Fields Constructors Methods
org.lwjgl.vulkan

public Class VkQueueFamilyProperties

extends Struct<VkQueueFamilyProperties>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable
Imports
javax.annotation.*, java.nio.*, org.lwjgl.*, org.lwjgl.system.*

Structure providing information about a queue family.
Description

The value returned in minImageTransferGranularity has a unit of compressed texel blocks for images having a block-compressed format, and a unit of texels otherwise.

Possible values of minImageTransferGranularity are:

Queues supporting graphics and/or compute operations must report (1,1,1) in minImageTransferGranularity, meaning that there are no additional restrictions on the granularity of image transfer operations for these queues. Other queues supporting image transfer operations are only required to support whole mip level transfers, thus minImageTransferGranularity for queues belonging to such queue families may be (0,0,0).

The Device Memory section describes memory properties queried from the physical device.

For physical device feature queries see the Features chapter.

See Also

VkExtent3D, VkQueueFamilyProperties2, GetPhysicalDeviceQueueFamilyProperties

Layout


struct VkQueueFamilyProperties {
    VkQueueFlags queueFlags;
    uint32_t queueCount;
    uint32_t timestampValidBits;
    VkExtent3D minImageTransferGranularity;
}

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
MINIMAGETRANSFERGRANULARITY

The struct member offsets.

public static final int
QUEUECOUNT

The struct member offsets.

public static final int
QUEUEFLAGS

The struct member offsets.

public static final int
SIZEOF

The struct size in bytes.

public static final int
TIMESTAMPVALIDBITS

The struct member offsets.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

AccessConstructor and Description
protected
VkQueueFamilyProperties(long address, ByteBuffer container)

public
VkQueueFamilyProperties(ByteBuffer container)

Creates a VkQueueFamilyProperties instance at the current position of the specified ByteBuffer container.

Method Summary

Modifier and TypeMethod and Description
public static VkQueueFamilyProperties
calloc()

Returns a new VkQueueFamilyProperties instance allocated with memCalloc.

public static VkQueueFamilyProperties.Buffer
calloc(int
the buffer capacity
capacity
)

Returns a new VkQueueFamilyProperties.Buffer instance allocated with memCalloc.

public static VkQueueFamilyProperties
calloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkQueueFamilyProperties instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static VkQueueFamilyProperties.Buffer
calloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkQueueFamilyProperties.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static VkQueueFamilyProperties
callocStack()

Deprecated
Deprecated for removal in 3.4.0.
public static VkQueueFamilyProperties
callocStack(MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public static VkQueueFamilyProperties.Buffer
callocStack(int capacity)

Deprecated
Deprecated for removal in 3.4.0.
public static VkQueueFamilyProperties.Buffer
callocStack(int capacity, MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
protected VkQueueFamilyProperties
create(long
the struct memory address
address
,
ByteBuffer
an optional container buffer, to be referenced strongly by the struct instance.
container
)

Implements abstract org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.
public static VkQueueFamilyProperties
create()

Returns a new VkQueueFamilyProperties instance allocated with BufferUtils.

public static VkQueueFamilyProperties
create(long address)

Returns a new VkQueueFamilyProperties instance for the specified memory address.

public static VkQueueFamilyProperties.Buffer
create(int
the buffer capacity
capacity
)

Returns a new VkQueueFamilyProperties.Buffer instance allocated with BufferUtils.

public static VkQueueFamilyProperties.Buffer
create(long
the memory address
address
,
int
the buffer capacity
capacity
)

Create a VkQueueFamilyProperties.Buffer instance at the specified memory.

public static VkQueueFamilyProperties
createSafe(long address)

Like create, but returns null if address is NULL.

public static VkQueueFamilyProperties.Buffer
createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

public static VkQueueFamilyProperties
malloc()

Returns a new VkQueueFamilyProperties instance allocated with memAlloc.

public static VkQueueFamilyProperties.Buffer
malloc(int
the buffer capacity
capacity
)

Returns a new VkQueueFamilyProperties.Buffer instance allocated with memAlloc.

public static VkQueueFamilyProperties
malloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkQueueFamilyProperties instance allocated on the specified MemoryStack.

public static VkQueueFamilyProperties.Buffer
malloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkQueueFamilyProperties.Buffer instance allocated on the specified MemoryStack.

public static VkQueueFamilyProperties
mallocStack()

Deprecated
Deprecated for removal in 3.4.0.
public static VkQueueFamilyProperties
mallocStack(MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public static VkQueueFamilyProperties.Buffer
mallocStack(int capacity)

Deprecated
Deprecated for removal in 3.4.0.
public static VkQueueFamilyProperties.Buffer
mallocStack(int capacity, MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public VkExtent3D
minImageTransferGranularity()

the minimum granularity supported for image transfer operations on the queues in this queue family.

public static VkExtent3D
public static int
nqueueCount(long struct)

Unsafe version of queueCount.

public static int
nqueueFlags(long struct)

Unsafe version of queueFlags.

public static int
ntimestampValidBits(long struct)

Unsafe version of timestampValidBits.

public int
queueCount()

the unsigned integer count of queues in this queue family.

public int
queueFlags()

a bitmask of VkQueueFlagBits indicating capabilities of the queues in this queue family.

public int
sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).
public int
timestampValidBits()

the unsigned integer count of meaningful bits in the timestamps written via CmdWriteTimestamp2 or CmdWriteTimestamp.

Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate

Field Detail

ALIGNOFback to summary
public static final int ALIGNOF

The struct alignment in bytes.

MINIMAGETRANSFERGRANULARITYback to summary
public static final int MINIMAGETRANSFERGRANULARITY

The struct member offsets.

QUEUECOUNTback to summary
public static final int QUEUECOUNT

The struct member offsets.

QUEUEFLAGSback to summary
public static final int QUEUEFLAGS

The struct member offsets.

SIZEOFback to summary
public static final int SIZEOF

The struct size in bytes.

TIMESTAMPVALIDBITSback to summary
public static final int TIMESTAMPVALIDBITS

The struct member offsets.

Constructor Detail

VkQueueFamilyPropertiesback to summary
protected VkQueueFamilyProperties(long address, ByteBuffer container)
VkQueueFamilyPropertiesback to summary
public VkQueueFamilyProperties(ByteBuffer container)

Creates a VkQueueFamilyProperties 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

callocback to summary
public static VkQueueFamilyProperties calloc()

Returns a new VkQueueFamilyProperties instance allocated with memCalloc. The instance must be explicitly freed.

callocback to summary
public static VkQueueFamilyProperties.Buffer calloc(int capacity)

Returns a new VkQueueFamilyProperties.Buffer instance allocated with memCalloc. The instance must be explicitly freed.

Parameters
capacity:int

the buffer capacity

callocback to summary
public static VkQueueFamilyProperties calloc(MemoryStack stack)

Returns a new VkQueueFamilyProperties instance allocated on the specified MemoryStack and initializes all its bits to zero.

Parameters
stack:MemoryStack

the stack from which to allocate

callocback to summary
public static VkQueueFamilyProperties.Buffer calloc(int capacity, MemoryStack stack)

Returns a new VkQueueFamilyProperties.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

Parameters
capacity:int

the buffer capacity

stack:MemoryStack

the stack from which to allocate

callocStackback to summary
public static VkQueueFamilyProperties callocStack()

Deprecated

Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.

Annotations
@Deprecated
callocStackback to summary
public static VkQueueFamilyProperties callocStack(MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.

Annotations
@Deprecated
callocStackback to summary
public static VkQueueFamilyProperties.Buffer callocStack(int capacity)

Deprecated

Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.

Annotations
@Deprecated
callocStackback to summary
public static VkQueueFamilyProperties.Buffer callocStack(int capacity, MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.

Annotations
@Deprecated
createback to summary
protected VkQueueFamilyProperties create(long address, ByteBuffer container)

Implements abstract org.lwjgl.system.Struct.create.

Doc from org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.

Effectively, every Struct instance is a factory for more instances of the same type. This is used by StructBuffer.

Parameters
address:long

the struct memory address

container:ByteBuffer

an optional container buffer, to be referenced strongly by the struct instance.

Annotations
@Override
createback to summary
public static VkQueueFamilyProperties create()

Returns a new VkQueueFamilyProperties instance allocated with BufferUtils.

createback to summary
public static VkQueueFamilyProperties create(long address)

Returns a new VkQueueFamilyProperties instance for the specified memory address.

createback to summary
public static VkQueueFamilyProperties.Buffer create(int capacity)

Returns a new VkQueueFamilyProperties.Buffer instance allocated with BufferUtils.

Parameters
capacity:int

the buffer capacity

createback to summary
public static VkQueueFamilyProperties.Buffer create(long address, int capacity)

Create a VkQueueFamilyProperties.Buffer instance at the specified memory.

Parameters
address:long

the memory address

capacity:int

the buffer capacity

createSafeback to summary
public static VkQueueFamilyProperties createSafe(long address)

Like create, but returns null if address is NULL.

Annotations
@Nullable
createSafeback to summary
public static VkQueueFamilyProperties.Buffer createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

Annotations
@Nullable
mallocback to summary
public static VkQueueFamilyProperties malloc()

Returns a new VkQueueFamilyProperties instance allocated with memAlloc. The instance must be explicitly freed.

mallocback to summary
public static VkQueueFamilyProperties.Buffer malloc(int capacity)

Returns a new VkQueueFamilyProperties.Buffer instance allocated with memAlloc. The instance must be explicitly freed.

Parameters
capacity:int

the buffer capacity

mallocback to summary
public static VkQueueFamilyProperties malloc(MemoryStack stack)

Returns a new VkQueueFamilyProperties instance allocated on the specified MemoryStack.

Parameters
stack:MemoryStack

the stack from which to allocate

mallocback to summary
public static VkQueueFamilyProperties.Buffer malloc(int capacity, MemoryStack stack)

Returns a new VkQueueFamilyProperties.Buffer instance allocated on the specified MemoryStack.

Parameters
capacity:int

the buffer capacity

stack:MemoryStack

the stack from which to allocate

mallocStackback to summary
public static VkQueueFamilyProperties mallocStack()

Deprecated

Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.

Annotations
@Deprecated
mallocStackback to summary
public static VkQueueFamilyProperties mallocStack(MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.

Annotations
@Deprecated
mallocStackback to summary
public static VkQueueFamilyProperties.Buffer mallocStack(int capacity)

Deprecated

Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.

Annotations
@Deprecated
mallocStackback to summary
public static VkQueueFamilyProperties.Buffer mallocStack(int capacity, MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.

Annotations
@Deprecated
minImageTransferGranularityback to summary
public VkExtent3D minImageTransferGranularity()

the minimum granularity supported for image transfer operations on the queues in this queue family.

nminImageTransferGranularityback to summary
public static VkExtent3D nminImageTransferGranularity(long struct)

Unsafe version of minImageTransferGranularity.

nqueueCountback to summary
public static int nqueueCount(long struct)

Unsafe version of queueCount.

nqueueFlagsback to summary
public static int nqueueFlags(long struct)

Unsafe version of queueFlags.

ntimestampValidBitsback to summary
public static int ntimestampValidBits(long struct)

Unsafe version of timestampValidBits.

queueCountback to summary
public int queueCount()

the unsigned integer count of queues in this queue family. Each queue family must support at least one queue.

Annotations
@NativeType:uint32_t
queueFlagsback to summary
public int queueFlags()

a bitmask of VkQueueFlagBits indicating capabilities of the queues in this queue family.

Annotations
@NativeType:VkQueueFlags
sizeofback to summary
public int sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Doc from org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).

Annotations
@Override
timestampValidBitsback to summary
public int timestampValidBits()

the unsigned integer count of meaningful bits in the timestamps written via CmdWriteTimestamp2 or CmdWriteTimestamp. The valid range for the count is 36 to 64 bits, or a value of 0, indicating no support for timestamps. Bits outside the valid range are guaranteed to be zeros.

Annotations
@NativeType:uint32_t
org.lwjgl.vulkan back to summary

public Class VkQueueFamilyProperties.Buffer

extends StructBuffer<VkQueueFamilyProperties, VkQueueFamilyProperties.Buffer>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable

An array of VkQueueFamilyProperties structs.

Field Summary

Modifier and TypeField and Description
private static final VkQueueFamilyProperties

Constructor Summary

AccessConstructor and Description
public
Buffer(ByteBuffer container)

Creates a new VkQueueFamilyProperties.Buffer instance backed by the specified container.

public
Buffer(long address, int cap)

pack-priv
Buffer(long address, ByteBuffer container, int mark, int pos, int lim, int cap)

Method Summary

Modifier and TypeMethod and Description
protected VkQueueFamilyProperties
public VkExtent3D
public int

Returns:

the value of the VkQueueFamilyProperties#queueCount field.
queueCount
()

public int

Returns:

the value of the VkQueueFamilyProperties#queueFlags field.
queueFlags
()

protected VkQueueFamilyProperties.Buffer
public int
Inherited from org.lwjgl.system.StructBuffer:
applyapplyforEachgetgetgetgetiteratorparallelStreamputputsizeofspliteratorstream

Field Detail

ELEMENT_FACTORYback to summary
private static final VkQueueFamilyProperties ELEMENT_FACTORY

Constructor Detail

Bufferback to summary
public Buffer(ByteBuffer container)

Creates a new VkQueueFamilyProperties.Buffer instance backed by the specified container.

Changes to the container's content will be visible to the struct buffer instance and vice versa. The two buffers' position, limit, and mark values will be independent. The new buffer's position will be zero, its capacity and its limit will be the number of bytes remaining in this buffer divided by VkQueueFamilyProperties#SIZEOF, and its mark will be undefined.

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

Bufferback to summary
public Buffer(long address, int cap)
Bufferback to summary
pack-priv Buffer(long address, ByteBuffer container, int mark, int pos, int lim, int cap)

Method Detail

getElementFactoryback to summary
protected VkQueueFamilyProperties getElementFactory()

Implements abstract org.lwjgl.system.StructBuffer.getElementFactory.

Annotations
@Override
minImageTransferGranularityback to summary
public VkExtent3D minImageTransferGranularity()
Returns:VkExtent3D

a VkExtent3D view of the VkQueueFamilyProperties#minImageTransferGranularity field.

queueCountback to summary
public int queueCount()
Returns:int

the value of the VkQueueFamilyProperties#queueCount field.

Annotations
@NativeType:uint32_t
queueFlagsback to summary
public int queueFlags()
Returns:int

the value of the VkQueueFamilyProperties#queueFlags field.

Annotations
@NativeType:VkQueueFlags
selfback to summary
protected VkQueueFamilyProperties.Buffer self()

Implements abstract org.lwjgl.system.CustomBuffer.self.

Annotations
@Override
timestampValidBitsback to summary
public int timestampValidBits()
Returns:int

the value of the VkQueueFamilyProperties#timestampValidBits field.

Annotations
@NativeType:uint32_t