Package org.lwjgl.vulkan
Class VkWin32KeyedMutexAcquireReleaseInfoNV
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkWin32KeyedMutexAcquireReleaseInfoNV
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkWin32KeyedMutexAcquireReleaseInfoNV extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceuse Windows keyex mutex mechanism to synchronize work.Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV- If
acquireCountis not 0,pAcquireSyncsmust be a valid pointer to an array ofacquireCountvalidVkDeviceMemoryhandles - If
acquireCountis not 0,pAcquireKeysmust be a valid pointer to an array ofacquireCountuint64_tvalues - If
acquireCountis not 0,pAcquireTimeoutMillisecondsmust be a valid pointer to an array ofacquireCountuint32_tvalues - If
releaseCountis not 0,pReleaseSyncsmust be a valid pointer to an array ofreleaseCountvalidVkDeviceMemoryhandles - If
releaseCountis not 0,pReleaseKeysmust be a valid pointer to an array ofreleaseCountuint64_tvalues - Both of the elements of
pAcquireSyncs, and the elements ofpReleaseSyncsthat are valid handles must have been created, allocated, or retrieved from the sameVkDevice
Member documentation
acquireCount– the number of entries in thepAcquireSyncs,pAcquireKeys, andpAcquireTimeoutMillisecondsarrays.pAcquireSyncs– a pointer to an array ofVkDeviceMemoryobjects which were imported from Direct3D 11 resources.pAcquireKeys– a pointer to an array of mutex key values to wait for prior to beginning the submitted work. Entries refer to the keyed mutex associated with the corresponding entries inpAcquireSyncs.pAcquireTimeoutMilliseconds– an array of timeout values, in millisecond units, for each acquire specified inpAcquireKeys.releaseCount– the number of entries in thepReleaseSyncsandpReleaseKeysarrays.pReleaseSyncs– a pointer to an array ofVkDeviceMemoryobjects which were imported from Direct3D 11 resources.pReleaseKeys– a pointer to an array of mutex key values to set when the submitted work has completed. Entries refer to the keyed mutex associated with the corresponding entries inpReleaseSyncs.
Layout
struct VkWin32KeyedMutexAcquireReleaseInfoNV { VkStructureType sType; void const * pNext; uint32_t acquireCount; VkDeviceMemory const * pAcquireSyncs; uint64_t const * pAcquireKeys; uint32_t const * pAcquireTimeoutMilliseconds; uint32_t releaseCount; VkDeviceMemory const * pReleaseSyncs; uint64_t const * pReleaseKeys; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkWin32KeyedMutexAcquireReleaseInfoNV.BufferAn array ofVkWin32KeyedMutexAcquireReleaseInfoNVstructs.
-
Field Summary
Fields Modifier and Type Field Description static intACQUIRECOUNTThe struct member offsets.static intALIGNOFThe struct alignment in bytes.static intPACQUIREKEYS
PACQUIRESYNCS
PACQUIRETIMEOUTMILLISECONDS
PNEXT
PRELEASEKEYS
PRELEASESYNCS
RELEASECOUNTThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSTYPEThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkWin32KeyedMutexAcquireReleaseInfoNV(java.nio.ByteBuffer container)Creates aVkWin32KeyedMutexAcquireReleaseInfoNVinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intacquireCount()Returns the value of theacquireCountfield.VkWin32KeyedMutexAcquireReleaseInfoNVacquireCount(int value)Sets the specified value to theacquireCountfield.static VkWin32KeyedMutexAcquireReleaseInfoNVcalloc()Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated withmemCalloc.static VkWin32KeyedMutexAcquireReleaseInfoNV.Buffercalloc(int capacity)Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated withmemCalloc.static VkWin32KeyedMutexAcquireReleaseInfoNVcallocStack()Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkWin32KeyedMutexAcquireReleaseInfoNV.BuffercallocStack(int capacity)Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkWin32KeyedMutexAcquireReleaseInfoNV.BuffercallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkWin32KeyedMutexAcquireReleaseInfoNVcallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkWin32KeyedMutexAcquireReleaseInfoNVcreate()Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated withBufferUtils.static VkWin32KeyedMutexAcquireReleaseInfoNV.Buffercreate(int capacity)Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated withBufferUtils.static VkWin32KeyedMutexAcquireReleaseInfoNVcreate(long address)Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance for the specified memory address.static VkWin32KeyedMutexAcquireReleaseInfoNV.Buffercreate(long address, int capacity)Create aVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance at the specified memory.static VkWin32KeyedMutexAcquireReleaseInfoNVcreateSafe(long address)static VkWin32KeyedMutexAcquireReleaseInfoNV.BuffercreateSafe(long address, int capacity)static VkWin32KeyedMutexAcquireReleaseInfoNVmalloc()Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated withmemAlloc.static VkWin32KeyedMutexAcquireReleaseInfoNV.Buffermalloc(int capacity)Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated withmemAlloc.static VkWin32KeyedMutexAcquireReleaseInfoNVmallocStack()Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated on the thread-localMemoryStack.static VkWin32KeyedMutexAcquireReleaseInfoNV.BuffermallocStack(int capacity)Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated on the thread-localMemoryStack.static VkWin32KeyedMutexAcquireReleaseInfoNV.BuffermallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated on the specifiedMemoryStack.static VkWin32KeyedMutexAcquireReleaseInfoNVmallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated on the specifiedMemoryStack.static intnacquireCount(long struct)Unsafe version ofacquireCount().static voidnacquireCount(long struct, int value)Sets the specified value to theacquireCountfield of the specifiedstruct.static java.nio.LongBuffernpAcquireKeys(long struct)Unsafe version ofpAcquireKeys.static voidnpAcquireKeys(long struct, java.nio.LongBuffer value)Unsafe version ofpAcquireKeys.static java.nio.LongBuffernpAcquireSyncs(long struct)Unsafe version ofpAcquireSyncs.static voidnpAcquireSyncs(long struct, java.nio.LongBuffer value)Unsafe version ofpAcquireSyncs.static java.nio.IntBuffernpAcquireTimeoutMilliseconds(long struct)Unsafe version ofpAcquireTimeoutMilliseconds.static voidnpAcquireTimeoutMilliseconds(long struct, java.nio.IntBuffer value)Unsafe version ofpAcquireTimeoutMilliseconds.static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static java.nio.LongBuffernpReleaseKeys(long struct)Unsafe version ofpReleaseKeys.static voidnpReleaseKeys(long struct, java.nio.LongBuffer value)Unsafe version ofpReleaseKeys.static java.nio.LongBuffernpReleaseSyncs(long struct)Unsafe version ofpReleaseSyncs.static voidnpReleaseSyncs(long struct, java.nio.LongBuffer value)Unsafe version ofpReleaseSyncs.static intnreleaseCount(long struct)Unsafe version ofreleaseCount().static voidnreleaseCount(long struct, int value)Sets the specified value to thereleaseCountfield of the specifiedstruct.static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.java.nio.LongBufferpAcquireKeys()Returns aLongBufferview of the data pointed to by thepAcquireKeysfield.VkWin32KeyedMutexAcquireReleaseInfoNVpAcquireKeys(java.nio.LongBuffer value)Sets the address of the specifiedLongBufferto thepAcquireKeysfield.java.nio.LongBufferpAcquireSyncs()Returns aLongBufferview of the data pointed to by thepAcquireSyncsfield.VkWin32KeyedMutexAcquireReleaseInfoNVpAcquireSyncs(java.nio.LongBuffer value)Sets the address of the specifiedLongBufferto thepAcquireSyncsfield.java.nio.IntBufferpAcquireTimeoutMilliseconds()Returns aIntBufferview of the data pointed to by thepAcquireTimeoutMillisecondsfield.VkWin32KeyedMutexAcquireReleaseInfoNVpAcquireTimeoutMilliseconds(java.nio.IntBuffer value)Sets the address of the specifiedIntBufferto thepAcquireTimeoutMillisecondsfield.longpNext()Returns the value of thepNextfield.VkWin32KeyedMutexAcquireReleaseInfoNVpNext(long value)Sets the specified value to thepNextfield.java.nio.LongBufferpReleaseKeys()Returns aLongBufferview of the data pointed to by thepReleaseKeysfield.VkWin32KeyedMutexAcquireReleaseInfoNVpReleaseKeys(java.nio.LongBuffer value)Sets the address of the specifiedLongBufferto thepReleaseKeysfield.java.nio.LongBufferpReleaseSyncs()Returns aLongBufferview of the data pointed to by thepReleaseSyncsfield.VkWin32KeyedMutexAcquireReleaseInfoNVpReleaseSyncs(java.nio.LongBuffer value)Sets the address of the specifiedLongBufferto thepReleaseSyncsfield.intreleaseCount()Returns the value of thereleaseCountfield.VkWin32KeyedMutexAcquireReleaseInfoNVreleaseCount(int value)Sets the specified value to thereleaseCountfield.VkWin32KeyedMutexAcquireReleaseInfoNVset(int sType, long pNext, int acquireCount, java.nio.LongBuffer pAcquireSyncs, java.nio.LongBuffer pAcquireKeys, java.nio.IntBuffer pAcquireTimeoutMilliseconds, int releaseCount, java.nio.LongBuffer pReleaseSyncs, java.nio.LongBuffer pReleaseKeys)Initializes this struct with the specified values.VkWin32KeyedMutexAcquireReleaseInfoNVset(VkWin32KeyedMutexAcquireReleaseInfoNV src)Copies the specified struct data to this struct.intsizeof()intsType()Returns the value of thesTypefield.VkWin32KeyedMutexAcquireReleaseInfoNVsType(int value)Sets the specified value to thesTypefield.static voidvalidate(long struct)Validates pointer members that should not beNULL.static voidvalidate(long array, int count)Callsvalidate(long)for each struct contained in the specified struct array.
-
-
-
Constructor Detail
-
VkWin32KeyedMutexAcquireReleaseInfoNV
public VkWin32KeyedMutexAcquireReleaseInfoNV(java.nio.ByteBuffer container)
Creates aVkWin32KeyedMutexAcquireReleaseInfoNVinstance at the current position of the specifiedByteBuffercontainer. 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:
sizeofin classorg.lwjgl.system.Struct
-
sType
public int sType()
Returns the value of thesTypefield.
-
pNext
public long pNext()
Returns the value of thepNextfield.
-
acquireCount
public int acquireCount()
Returns the value of theacquireCountfield.
-
pAcquireSyncs
@Nullable public java.nio.LongBuffer pAcquireSyncs()
Returns aLongBufferview of the data pointed to by thepAcquireSyncsfield.
-
pAcquireKeys
@Nullable public java.nio.LongBuffer pAcquireKeys()
Returns aLongBufferview of the data pointed to by thepAcquireKeysfield.
-
pAcquireTimeoutMilliseconds
@Nullable public java.nio.IntBuffer pAcquireTimeoutMilliseconds()
Returns aIntBufferview of the data pointed to by thepAcquireTimeoutMillisecondsfield.
-
releaseCount
public int releaseCount()
Returns the value of thereleaseCountfield.
-
pReleaseSyncs
@Nullable public java.nio.LongBuffer pReleaseSyncs()
Returns aLongBufferview of the data pointed to by thepReleaseSyncsfield.
-
pReleaseKeys
@Nullable public java.nio.LongBuffer pReleaseKeys()
Returns aLongBufferview of the data pointed to by thepReleaseKeysfield.
-
sType
public VkWin32KeyedMutexAcquireReleaseInfoNV sType(int value)
Sets the specified value to thesTypefield.
-
pNext
public VkWin32KeyedMutexAcquireReleaseInfoNV pNext(long value)
Sets the specified value to thepNextfield.
-
acquireCount
public VkWin32KeyedMutexAcquireReleaseInfoNV acquireCount(int value)
Sets the specified value to theacquireCountfield.
-
pAcquireSyncs
public VkWin32KeyedMutexAcquireReleaseInfoNV pAcquireSyncs(@Nullable java.nio.LongBuffer value)
Sets the address of the specifiedLongBufferto thepAcquireSyncsfield.
-
pAcquireKeys
public VkWin32KeyedMutexAcquireReleaseInfoNV pAcquireKeys(@Nullable java.nio.LongBuffer value)
Sets the address of the specifiedLongBufferto thepAcquireKeysfield.
-
pAcquireTimeoutMilliseconds
public VkWin32KeyedMutexAcquireReleaseInfoNV pAcquireTimeoutMilliseconds(@Nullable java.nio.IntBuffer value)
Sets the address of the specifiedIntBufferto thepAcquireTimeoutMillisecondsfield.
-
releaseCount
public VkWin32KeyedMutexAcquireReleaseInfoNV releaseCount(int value)
Sets the specified value to thereleaseCountfield.
-
pReleaseSyncs
public VkWin32KeyedMutexAcquireReleaseInfoNV pReleaseSyncs(@Nullable java.nio.LongBuffer value)
Sets the address of the specifiedLongBufferto thepReleaseSyncsfield.
-
pReleaseKeys
public VkWin32KeyedMutexAcquireReleaseInfoNV pReleaseKeys(@Nullable java.nio.LongBuffer value)
Sets the address of the specifiedLongBufferto thepReleaseKeysfield.
-
set
public VkWin32KeyedMutexAcquireReleaseInfoNV set(int sType, long pNext, int acquireCount, @Nullable java.nio.LongBuffer pAcquireSyncs, @Nullable java.nio.LongBuffer pAcquireKeys, @Nullable java.nio.IntBuffer pAcquireTimeoutMilliseconds, int releaseCount, @Nullable java.nio.LongBuffer pReleaseSyncs, @Nullable java.nio.LongBuffer pReleaseKeys)
Initializes this struct with the specified values.
-
set
public VkWin32KeyedMutexAcquireReleaseInfoNV set(VkWin32KeyedMutexAcquireReleaseInfoNV src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkWin32KeyedMutexAcquireReleaseInfoNV malloc()
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkWin32KeyedMutexAcquireReleaseInfoNV calloc()
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkWin32KeyedMutexAcquireReleaseInfoNV create()
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated withBufferUtils.
-
create
public static VkWin32KeyedMutexAcquireReleaseInfoNV create(long address)
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance for the specified memory address.
-
createSafe
@Nullable public static VkWin32KeyedMutexAcquireReleaseInfoNV createSafe(long address)
-
malloc
public static VkWin32KeyedMutexAcquireReleaseInfoNV.Buffer malloc(int capacity)
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkWin32KeyedMutexAcquireReleaseInfoNV.Buffer calloc(int capacity)
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkWin32KeyedMutexAcquireReleaseInfoNV.Buffer create(int capacity)
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkWin32KeyedMutexAcquireReleaseInfoNV.Buffer create(long address, int capacity)
Create aVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkWin32KeyedMutexAcquireReleaseInfoNV.Buffer createSafe(long address, int capacity)
-
mallocStack
public static VkWin32KeyedMutexAcquireReleaseInfoNV mallocStack()
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated on the thread-localMemoryStack.
-
callocStack
public static VkWin32KeyedMutexAcquireReleaseInfoNV callocStack()
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.
-
mallocStack
public static VkWin32KeyedMutexAcquireReleaseInfoNV mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
callocStack
public static VkWin32KeyedMutexAcquireReleaseInfoNV callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNVinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
mallocStack
public static VkWin32KeyedMutexAcquireReleaseInfoNV.Buffer mallocStack(int capacity)
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated on the thread-localMemoryStack.- Parameters:
capacity- the buffer capacity
-
callocStack
public static VkWin32KeyedMutexAcquireReleaseInfoNV.Buffer callocStack(int capacity)
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacity
-
mallocStack
public static VkWin32KeyedMutexAcquireReleaseInfoNV.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
callocStack
public static VkWin32KeyedMutexAcquireReleaseInfoNV.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkWin32KeyedMutexAcquireReleaseInfoNV.Bufferinstance allocated on the specifiedMemoryStackand 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().
-
nacquireCount
public static int nacquireCount(long struct)
Unsafe version ofacquireCount().
-
npAcquireSyncs
@Nullable public static java.nio.LongBuffer npAcquireSyncs(long struct)
Unsafe version ofpAcquireSyncs.
-
npAcquireKeys
@Nullable public static java.nio.LongBuffer npAcquireKeys(long struct)
Unsafe version ofpAcquireKeys.
-
npAcquireTimeoutMilliseconds
@Nullable public static java.nio.IntBuffer npAcquireTimeoutMilliseconds(long struct)
Unsafe version ofpAcquireTimeoutMilliseconds.
-
nreleaseCount
public static int nreleaseCount(long struct)
Unsafe version ofreleaseCount().
-
npReleaseSyncs
@Nullable public static java.nio.LongBuffer npReleaseSyncs(long struct)
Unsafe version ofpReleaseSyncs.
-
npReleaseKeys
@Nullable public static java.nio.LongBuffer npReleaseKeys(long struct)
Unsafe version ofpReleaseKeys.
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
nacquireCount
public static void nacquireCount(long struct, int value)Sets the specified value to theacquireCountfield of the specifiedstruct.
-
npAcquireSyncs
public static void npAcquireSyncs(long struct, @Nullable java.nio.LongBuffer value)Unsafe version ofpAcquireSyncs.
-
npAcquireKeys
public static void npAcquireKeys(long struct, @Nullable java.nio.LongBuffer value)Unsafe version ofpAcquireKeys.
-
npAcquireTimeoutMilliseconds
public static void npAcquireTimeoutMilliseconds(long struct, @Nullable java.nio.IntBuffer value)Unsafe version ofpAcquireTimeoutMilliseconds.
-
nreleaseCount
public static void nreleaseCount(long struct, int value)Sets the specified value to thereleaseCountfield of the specifiedstruct.
-
npReleaseSyncs
public static void npReleaseSyncs(long struct, @Nullable java.nio.LongBuffer value)Unsafe version ofpReleaseSyncs.
-
npReleaseKeys
public static void npReleaseKeys(long struct, @Nullable java.nio.LongBuffer value)Unsafe version ofpReleaseKeys.
-
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
-
-