Class VkDeviceGroupPresentInfoKHR
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkDeviceGroupPresentInfoKHR
-
- All Implemented Interfaces:
java.lang.AutoCloseable
,NativeResource
,Pointer
public class VkDeviceGroupPresentInfoKHR extends Struct implements NativeResource
Mode and mask controlling which physical devices' images are presented.Description
If
mode
isDEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR
, then each element ofpDeviceMasks
selects which instance of the swapchain image is presented. Each element ofpDeviceMasks
must have exactly one bit set, and the corresponding physical device must have a presentation engine as reported byVkDeviceGroupPresentCapabilitiesKHR
.If
mode
isDEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR
, then each element ofpDeviceMasks
selects which instance of the swapchain image is presented. Each element ofpDeviceMasks
must have exactly one bit set, and some physical device in the logical device must include that bit in itsVkDeviceGroupPresentCapabilitiesKHR
::presentMask
.If
mode
isDEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR
, then each element ofpDeviceMasks
selects which instances of the swapchain image are component-wise summed and the sum of those images is presented. If the sum in any component is outside the representable range, the value of that component is undefined. Each element ofpDeviceMasks
must have a value for which all set bits are set in one of the elements ofVkDeviceGroupPresentCapabilitiesKHR
::presentMask
.If
mode
isDEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR
, then each element ofpDeviceMasks
selects which instance(s) of the swapchain images are presented. For each bit set in each element ofpDeviceMasks
, the corresponding physical device must have a presentation engine as reported byVkDeviceGroupPresentCapabilitiesKHR
.If
VkDeviceGroupPresentInfoKHR
is not provided orswapchainCount
is zero then the masks are considered to be 1. IfVkDeviceGroupPresentInfoKHR
is not provided,mode
is considered to beDEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR
.Valid Usage
swapchainCount
must equal 0 orVkPresentInfoKHR
::swapchainCount
- If
mode
isDEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR
, then each element ofpDeviceMasks
must have exactly one bit set, and the corresponding element ofVkDeviceGroupPresentCapabilitiesKHR
::presentMask
must be non-zero - If
mode
isDEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR
, then each element ofpDeviceMasks
must have exactly one bit set, and some physical device in the logical device must include that bit in itsVkDeviceGroupPresentCapabilitiesKHR
::presentMask
. - If
mode
isDEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR
, then each element ofpDeviceMasks
must have a value for which all set bits are set in one of the elements ofVkDeviceGroupPresentCapabilitiesKHR
::presentMask
- If
mode
isDEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR
, then for each bit set in each element ofpDeviceMasks
, the corresponding element ofVkDeviceGroupPresentCapabilitiesKHR
::presentMask
must be non-zero - The value of each element of
pDeviceMasks
must be equal to the device mask passed inVkAcquireNextImageInfoKHR
::deviceMask
when the image index was last acquired mode
must have exactly one bit set, and that bit must have been included inVkDeviceGroupSwapchainCreateInfoKHR
::modes
Valid Usage (Implicit)
sType
must beSTRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR
- If
swapchainCount
is not 0,pDeviceMasks
must be a valid pointer to an array ofswapchainCount
uint32_t
values mode
must be a validVkDeviceGroupPresentModeFlagBitsKHR
value
Member documentation
sType
– the type of this structure.pNext
–NULL
or a pointer to an extension-specific structure.swapchainCount
– zero or the number of elements inpDeviceMasks
.pDeviceMasks
– an array of device masks, one for each element ofVkPresentInfoKHR
::pSwapchains.mode
– the device group present mode that will be used for this present.
Layout
struct VkDeviceGroupPresentInfoKHR { VkStructureType sType; void const * pNext; uint32_t swapchainCount; uint32_t const * pDeviceMasks; VkDeviceGroupPresentModeFlagBitsKHR mode; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VkDeviceGroupPresentInfoKHR.Buffer
An array ofVkDeviceGroupPresentInfoKHR
structs.-
Nested classes/interfaces inherited from interface org.lwjgl.system.Pointer
Pointer.Default
-
-
Field Summary
Fields Modifier and Type Field Description static int
ALIGNOF
The struct alignment in bytes.static int
MODE
PDEVICEMASKS
PNEXTThe struct member offsets.static int
SIZEOF
The struct size in bytes.static int
STYPE
SWAPCHAINCOUNTThe struct member offsets.-
Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, POINTER_SHIFT, POINTER_SIZE
-
-
Constructor Summary
Constructors Constructor Description VkDeviceGroupPresentInfoKHR(java.nio.ByteBuffer container)
Creates aVkDeviceGroupPresentInfoKHR
instance at the current position of the specifiedByteBuffer
container.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkDeviceGroupPresentInfoKHR
calloc()
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated withmemCalloc
.static VkDeviceGroupPresentInfoKHR.Buffer
calloc(int capacity)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated withmemCalloc
.static VkDeviceGroupPresentInfoKHR
callocStack()
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkDeviceGroupPresentInfoKHR.Buffer
callocStack(int capacity)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkDeviceGroupPresentInfoKHR.Buffer
callocStack(int capacity, MemoryStack stack)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkDeviceGroupPresentInfoKHR
callocStack(MemoryStack stack)
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkDeviceGroupPresentInfoKHR
create()
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated withBufferUtils
.static VkDeviceGroupPresentInfoKHR.Buffer
create(int capacity)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated withBufferUtils
.static VkDeviceGroupPresentInfoKHR
create(long address)
Returns a newVkDeviceGroupPresentInfoKHR
instance for the specified memory address.static VkDeviceGroupPresentInfoKHR.Buffer
create(long address, int capacity)
Create aVkDeviceGroupPresentInfoKHR.Buffer
instance at the specified memory.static VkDeviceGroupPresentInfoKHR
createSafe(long address)
static VkDeviceGroupPresentInfoKHR.Buffer
createSafe(long address, int capacity)
static VkDeviceGroupPresentInfoKHR
malloc()
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated withmemAlloc
.static VkDeviceGroupPresentInfoKHR.Buffer
malloc(int capacity)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated withmemAlloc
.static VkDeviceGroupPresentInfoKHR
mallocStack()
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated on the thread-localMemoryStack
.static VkDeviceGroupPresentInfoKHR.Buffer
mallocStack(int capacity)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated on the thread-localMemoryStack
.static VkDeviceGroupPresentInfoKHR.Buffer
mallocStack(int capacity, MemoryStack stack)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated on the specifiedMemoryStack
.static VkDeviceGroupPresentInfoKHR
mallocStack(MemoryStack stack)
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated on the specifiedMemoryStack
.int
mode()
Returns the value of themode
field.VkDeviceGroupPresentInfoKHR
mode(int value)
Sets the specified value to themode
field.static int
nmode(long struct)
Unsafe version ofmode()
.static void
nmode(long struct, int value)
Unsafe version ofmode
.static java.nio.IntBuffer
npDeviceMasks(long struct)
Unsafe version ofpDeviceMasks
.static void
npDeviceMasks(long struct, java.nio.IntBuffer value)
Unsafe version ofpDeviceMasks
.static long
npNext(long struct)
Unsafe version ofpNext()
.static void
npNext(long struct, long value)
Unsafe version ofpNext
.static int
nsType(long struct)
Unsafe version ofsType()
.static void
nsType(long struct, int value)
Unsafe version ofsType
.static int
nswapchainCount(long struct)
Unsafe version ofswapchainCount()
.static void
nswapchainCount(long struct, int value)
Sets the specified value to theswapchainCount
field of the specifiedstruct
.java.nio.IntBuffer
pDeviceMasks()
Returns aIntBuffer
view of the data pointed to by thepDeviceMasks
field.VkDeviceGroupPresentInfoKHR
pDeviceMasks(java.nio.IntBuffer value)
Sets the address of the specifiedIntBuffer
to thepDeviceMasks
field.long
pNext()
Returns the value of thepNext
field.VkDeviceGroupPresentInfoKHR
pNext(long value)
Sets the specified value to thepNext
field.VkDeviceGroupPresentInfoKHR
set(int sType, long pNext, java.nio.IntBuffer pDeviceMasks, int mode)
Initializes this struct with the specified values.VkDeviceGroupPresentInfoKHR
set(VkDeviceGroupPresentInfoKHR src)
Copies the specified struct data to this struct.int
sizeof()
Returnssizeof(struct)
.int
sType()
Returns the value of thesType
field.VkDeviceGroupPresentInfoKHR
sType(int value)
Sets the specified value to thesType
field.int
swapchainCount()
Returns the value of theswapchainCount
field.static void
validate(long struct)
Validates pointer members that should not beNULL
.static void
validate(long array, int count)
Callsvalidate(long)
for each struct contained in the specified struct array.-
Methods inherited from interface org.lwjgl.system.NativeResource
close, free
-
Methods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toString
-
-
-
-
Constructor Detail
-
VkDeviceGroupPresentInfoKHR
public VkDeviceGroupPresentInfoKHR(java.nio.ByteBuffer container)
Creates aVkDeviceGroupPresentInfoKHR
instance at the current position of the specifiedByteBuffer
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()
Description copied from class:Struct
Returnssizeof(struct)
.
-
sType
public int sType()
Returns the value of thesType
field.
-
pNext
public long pNext()
Returns the value of thepNext
field.
-
swapchainCount
public int swapchainCount()
Returns the value of theswapchainCount
field.
-
pDeviceMasks
@Nullable public java.nio.IntBuffer pDeviceMasks()
Returns aIntBuffer
view of the data pointed to by thepDeviceMasks
field.
-
mode
public int mode()
Returns the value of themode
field.
-
sType
public VkDeviceGroupPresentInfoKHR sType(int value)
Sets the specified value to thesType
field.
-
pNext
public VkDeviceGroupPresentInfoKHR pNext(long value)
Sets the specified value to thepNext
field.
-
pDeviceMasks
public VkDeviceGroupPresentInfoKHR pDeviceMasks(@Nullable java.nio.IntBuffer value)
Sets the address of the specifiedIntBuffer
to thepDeviceMasks
field.
-
mode
public VkDeviceGroupPresentInfoKHR mode(int value)
Sets the specified value to themode
field.
-
set
public VkDeviceGroupPresentInfoKHR set(int sType, long pNext, @Nullable java.nio.IntBuffer pDeviceMasks, int mode)
Initializes this struct with the specified values.
-
set
public VkDeviceGroupPresentInfoKHR set(VkDeviceGroupPresentInfoKHR src)
Copies the specified struct data to this struct.- Parameters:
src
- the source struct- Returns:
- this struct
-
malloc
public static VkDeviceGroupPresentInfoKHR malloc()
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated withmemAlloc
. The instance must be explicitly freed.
-
calloc
public static VkDeviceGroupPresentInfoKHR calloc()
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated withmemCalloc
. The instance must be explicitly freed.
-
create
public static VkDeviceGroupPresentInfoKHR create()
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated withBufferUtils
.
-
create
public static VkDeviceGroupPresentInfoKHR create(long address)
Returns a newVkDeviceGroupPresentInfoKHR
instance for the specified memory address.
-
createSafe
@Nullable public static VkDeviceGroupPresentInfoKHR createSafe(long address)
-
malloc
public static VkDeviceGroupPresentInfoKHR.Buffer malloc(int capacity)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
public static VkDeviceGroupPresentInfoKHR.Buffer calloc(int capacity)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
public static VkDeviceGroupPresentInfoKHR.Buffer create(int capacity)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
public static VkDeviceGroupPresentInfoKHR.Buffer create(long address, int capacity)
Create aVkDeviceGroupPresentInfoKHR.Buffer
instance at the specified memory.- Parameters:
address
- the memory addresscapacity
- the buffer capacity
-
createSafe
@Nullable public static VkDeviceGroupPresentInfoKHR.Buffer createSafe(long address, int capacity)
-
mallocStack
public static VkDeviceGroupPresentInfoKHR mallocStack()
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated on the thread-localMemoryStack
.
-
callocStack
public static VkDeviceGroupPresentInfoKHR callocStack()
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.
-
mallocStack
public static VkDeviceGroupPresentInfoKHR mallocStack(MemoryStack stack)
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
callocStack
public static VkDeviceGroupPresentInfoKHR callocStack(MemoryStack stack)
Returns a newVkDeviceGroupPresentInfoKHR
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocate
-
mallocStack
public static VkDeviceGroupPresentInfoKHR.Buffer mallocStack(int capacity)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated on the thread-localMemoryStack
.- Parameters:
capacity
- the buffer capacity
-
callocStack
public static VkDeviceGroupPresentInfoKHR.Buffer callocStack(int capacity)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.- Parameters:
capacity
- the buffer capacity
-
mallocStack
public static VkDeviceGroupPresentInfoKHR.Buffer mallocStack(int capacity, MemoryStack stack)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
callocStack
public static VkDeviceGroupPresentInfoKHR.Buffer callocStack(int capacity, MemoryStack stack)
Returns a newVkDeviceGroupPresentInfoKHR.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
nsType
public static int nsType(long struct)
Unsafe version ofsType()
.
-
npNext
public static long npNext(long struct)
Unsafe version ofpNext()
.
-
nswapchainCount
public static int nswapchainCount(long struct)
Unsafe version ofswapchainCount()
.
-
npDeviceMasks
@Nullable public static java.nio.IntBuffer npDeviceMasks(long struct)
Unsafe version ofpDeviceMasks
.
-
nmode
public static int nmode(long struct)
Unsafe version ofmode()
.
-
nsType
public static void nsType(long struct, int value)
Unsafe version ofsType
.
-
npNext
public static void npNext(long struct, long value)
Unsafe version ofpNext
.
-
nswapchainCount
public static void nswapchainCount(long struct, int value)
Sets the specified value to theswapchainCount
field of the specifiedstruct
.
-
npDeviceMasks
public static void npDeviceMasks(long struct, @Nullable java.nio.IntBuffer value)
Unsafe version ofpDeviceMasks
.
-
nmode
public static void nmode(long struct, int value)
Unsafe version ofmode
.
-
validate
public static void validate(long struct)
Validates pointer members that should not beNULL
.- Parameters:
struct
- the struct to validate
-
validate
public static void validate(long array, int count)
Callsvalidate(long)
for each struct contained in the specified struct array.- Parameters:
array
- the struct array to validatecount
- the number of structs inarray
-
-