Top Description Inners Fields Constructors Methods
org.lwjgl.vulkan

public Class VkMemoryDedicatedRequirements

extends Struct<VkMemoryDedicatedRequirements>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable
Known Direct Subclasses
org.lwjgl.vulkan.VkMemoryDedicatedRequirementsKHR
Imports
javax.annotation.*, java.nio.*, org.lwjgl.*, org.lwjgl.system.*

Structure describing dedicated allocation requirements of buffer and image resources.
Description

To determine the dedicated allocation requirements of a buffer or image resource, add a VkMemoryDedicatedRequirements structure to the pNext chain of the VkMemoryRequirements2 structure passed as the pMemoryRequirements parameter of GetBufferMemoryRequirements2 or GetImageMemoryRequirements2, respectively.

Constraints on the values returned for buffer resources are:

Constraints on the values returned for image resources are:

Valid Usage (Implicit)

Layout


struct VkMemoryDedicatedRequirements {
    VkStructureType sType;
    void * pNext;
    VkBool32 prefersDedicatedAllocation;
    VkBool32 requiresDedicatedAllocation;
}

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
PNEXT

The struct member offsets.

public static final int
PREFERSDEDICATEDALLOCATION

The struct member offsets.

public static final int
REQUIRESDEDICATEDALLOCATION

The struct member offsets.

public static final int
SIZEOF

The struct size in bytes.

public static final int
STYPE

The struct member offsets.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

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

public
VkMemoryDedicatedRequirements(ByteBuffer container)

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

Method Summary

Modifier and TypeMethod and Description
public static VkMemoryDedicatedRequirements
calloc()

Returns a new VkMemoryDedicatedRequirements instance allocated with memCalloc.

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

Returns a new VkMemoryDedicatedRequirements.Buffer instance allocated with memCalloc.

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

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

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

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

public static VkMemoryDedicatedRequirements
callocStack()

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

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

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

Deprecated
Deprecated for removal in 3.4.0.
protected VkMemoryDedicatedRequirements
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 VkMemoryDedicatedRequirements
create()

Returns a new VkMemoryDedicatedRequirements instance allocated with BufferUtils.

public static VkMemoryDedicatedRequirements
create(long address)

Returns a new VkMemoryDedicatedRequirements instance for the specified memory address.

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

Returns a new VkMemoryDedicatedRequirements.Buffer instance allocated with BufferUtils.

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

Create a VkMemoryDedicatedRequirements.Buffer instance at the specified memory.

public static VkMemoryDedicatedRequirements
createSafe(long address)

Like create, but returns null if address is NULL.

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

Like create, but returns null if address is NULL.

public static VkMemoryDedicatedRequirements
malloc()

Returns a new VkMemoryDedicatedRequirements instance allocated with memAlloc.

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

Returns a new VkMemoryDedicatedRequirements.Buffer instance allocated with memAlloc.

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

Returns a new VkMemoryDedicatedRequirements instance allocated on the specified MemoryStack.

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

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

public static VkMemoryDedicatedRequirements
mallocStack()

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

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

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

Deprecated
Deprecated for removal in 3.4.0.
public static long
npNext(long struct)

Unsafe version of pNext.

public static void
npNext(long struct, long value)

Unsafe version of pNext.

public static int
public static int
public static int
nsType(long struct)

Unsafe version of sType.

public static void
nsType(long struct, int value)

Unsafe version of sType.

public long
pNext()

NULL or a pointer to a structure extending this structure.

public VkMemoryDedicatedRequirements
pNext(long value)

Sets the specified value to the pNext field.

public boolean
prefersDedicatedAllocation()

specifies that the implementation would prefer a dedicated allocation for this resource.

public boolean
requiresDedicatedAllocation()

specifies that a dedicated allocation is required for this resource.

public VkMemoryDedicatedRequirements
set(int sType, long pNext)

Initializes this struct with the specified values.

public VkMemoryDedicatedRequirements

Returns:

this struct
set
(VkMemoryDedicatedRequirements
the source struct
src
)

Copies the specified struct data to this struct.

public int
sizeof()

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

Returns sizeof(struct).
public int
sType()

a VkStructureType value identifying this structure.

public VkMemoryDedicatedRequirements
sType(int value)

Sets the specified value to the sType field.

public VkMemoryDedicatedRequirements
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.

PNEXTback to summary
public static final int PNEXT

The struct member offsets.

PREFERSDEDICATEDALLOCATIONback to summary
public static final int PREFERSDEDICATEDALLOCATION

The struct member offsets.

REQUIRESDEDICATEDALLOCATIONback to summary
public static final int REQUIRESDEDICATEDALLOCATION

The struct member offsets.

SIZEOFback to summary
public static final int SIZEOF

The struct size in bytes.

STYPEback to summary
public static final int STYPE

The struct member offsets.

Constructor Detail

VkMemoryDedicatedRequirementsback to summary
protected VkMemoryDedicatedRequirements(long address, ByteBuffer container)
VkMemoryDedicatedRequirementsback to summary
public VkMemoryDedicatedRequirements(ByteBuffer container)

Creates a VkMemoryDedicatedRequirements 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 VkMemoryDedicatedRequirements calloc()

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

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

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

Parameters
capacity:int

the buffer capacity

callocback to summary
public static VkMemoryDedicatedRequirements calloc(MemoryStack stack)

Returns a new VkMemoryDedicatedRequirements 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 VkMemoryDedicatedRequirements.Buffer calloc(int capacity, MemoryStack stack)

Returns a new VkMemoryDedicatedRequirements.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 VkMemoryDedicatedRequirements callocStack()

Deprecated

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

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

Deprecated

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

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

Deprecated

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

Annotations
@Deprecated
callocStackback to summary
public static VkMemoryDedicatedRequirements.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 VkMemoryDedicatedRequirements 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 VkMemoryDedicatedRequirements create()

Returns a new VkMemoryDedicatedRequirements instance allocated with BufferUtils.

createback to summary
public static VkMemoryDedicatedRequirements create(long address)

Returns a new VkMemoryDedicatedRequirements instance for the specified memory address.

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

Returns a new VkMemoryDedicatedRequirements.Buffer instance allocated with BufferUtils.

Parameters
capacity:int

the buffer capacity

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

Create a VkMemoryDedicatedRequirements.Buffer instance at the specified memory.

Parameters
address:long

the memory address

capacity:int

the buffer capacity

createSafeback to summary
public static VkMemoryDedicatedRequirements createSafe(long address)

Like create, but returns null if address is NULL.

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

Like create, but returns null if address is NULL.

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

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

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

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

Parameters
capacity:int

the buffer capacity

mallocback to summary
public static VkMemoryDedicatedRequirements malloc(MemoryStack stack)

Returns a new VkMemoryDedicatedRequirements instance allocated on the specified MemoryStack.

Parameters
stack:MemoryStack

the stack from which to allocate

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

Returns a new VkMemoryDedicatedRequirements.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 VkMemoryDedicatedRequirements mallocStack()

Deprecated

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

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

Deprecated

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

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

Deprecated

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

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

Deprecated

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

Annotations
@Deprecated
npNextback to summary
public static long npNext(long struct)

Unsafe version of pNext.

npNextback to summary
public static void npNext(long struct, long value)

Unsafe version of pNext.

nprefersDedicatedAllocationback to summary
public static int nprefersDedicatedAllocation(long struct)

Unsafe version of prefersDedicatedAllocation.

nrequiresDedicatedAllocationback to summary
public static int nrequiresDedicatedAllocation(long struct)

Unsafe version of requiresDedicatedAllocation.

nsTypeback to summary
public static int nsType(long struct)

Unsafe version of sType.

nsTypeback to summary
public static void nsType(long struct, int value)

Unsafe version of sType.

pNextback to summary
public long pNext()

NULL or a pointer to a structure extending this structure.

Annotations
@NativeType:void *
pNextback to summary
public VkMemoryDedicatedRequirements pNext(long value)

Sets the specified value to the pNext field.

prefersDedicatedAllocationback to summary
public boolean prefersDedicatedAllocation()

specifies that the implementation would prefer a dedicated allocation for this resource. The application is still free to suballocate the resource but it may get better performance if a dedicated allocation is used.

Annotations
@NativeType:VkBool32
requiresDedicatedAllocationback to summary
public boolean requiresDedicatedAllocation()

specifies that a dedicated allocation is required for this resource.

Annotations
@NativeType:VkBool32
setback to summary
public VkMemoryDedicatedRequirements set(int sType, long pNext)

Initializes this struct with the specified values.

setback to summary
public VkMemoryDedicatedRequirements set(VkMemoryDedicatedRequirements src)

Copies the specified struct data to this struct.

Parameters
src:VkMemoryDedicatedRequirements

the source struct

Returns:VkMemoryDedicatedRequirements

this struct

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
sTypeback to summary
public int sType()

a VkStructureType value identifying this structure.

Annotations
@NativeType:VkStructureType
sTypeback to summary
public VkMemoryDedicatedRequirements sType(int value)

Sets the specified value to the sType field.

sType$Defaultback to summary
public VkMemoryDedicatedRequirements sType$Default()

Sets the STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS value to the sType field.

org.lwjgl.vulkan back to summary

public Class VkMemoryDedicatedRequirements.Buffer

extends StructBuffer<VkMemoryDedicatedRequirements, VkMemoryDedicatedRequirements.Buffer>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable
Known Direct Subclasses
org.lwjgl.vulkan.VkMemoryDedicatedRequirementsKHR.Buffer

An array of VkMemoryDedicatedRequirements structs.

Field Summary

Modifier and TypeField and Description
private static final VkMemoryDedicatedRequirements

Constructor Summary

AccessConstructor and Description
public
Buffer(ByteBuffer container)

Creates a new VkMemoryDedicatedRequirements.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 VkMemoryDedicatedRequirements
public long

Returns:

the value of the VkMemoryDedicatedRequirements#pNext field.
pNext
()

public VkMemoryDedicatedRequirements.Buffer
pNext(long value)

Sets the specified value to the VkMemoryDedicatedRequirements#pNext field.

public boolean
public boolean
protected VkMemoryDedicatedRequirements.Buffer
public int

Returns:

the value of the VkMemoryDedicatedRequirements#sType field.
sType
()

public VkMemoryDedicatedRequirements.Buffer
sType(int value)

Sets the specified value to the VkMemoryDedicatedRequirements#sType field.

public VkMemoryDedicatedRequirements.Buffer
Inherited from org.lwjgl.system.StructBuffer:
applyapplyforEachgetgetgetgetiteratorparallelStreamputputsizeofspliteratorstream

Field Detail

ELEMENT_FACTORYback to summary
private static final VkMemoryDedicatedRequirements ELEMENT_FACTORY

Constructor Detail

Bufferback to summary
public Buffer(ByteBuffer container)

Creates a new VkMemoryDedicatedRequirements.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 VkMemoryDedicatedRequirements#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 VkMemoryDedicatedRequirements getElementFactory()

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

Annotations
@Override
pNextback to summary
public long pNext()
Returns:long

the value of the VkMemoryDedicatedRequirements#pNext field.

Annotations
@NativeType:void *
pNextback to summary
public VkMemoryDedicatedRequirements.Buffer pNext(long value)

Sets the specified value to the VkMemoryDedicatedRequirements#pNext field.

prefersDedicatedAllocationback to summary
public boolean prefersDedicatedAllocation()
Returns:boolean

the value of the VkMemoryDedicatedRequirements#prefersDedicatedAllocation field.

Annotations
@NativeType:VkBool32
requiresDedicatedAllocationback to summary
public boolean requiresDedicatedAllocation()
Returns:boolean

the value of the VkMemoryDedicatedRequirements#requiresDedicatedAllocation field.

Annotations
@NativeType:VkBool32
selfback to summary
protected VkMemoryDedicatedRequirements.Buffer self()

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

Annotations
@Override
sTypeback to summary
public int sType()
Returns:int

the value of the VkMemoryDedicatedRequirements#sType field.

Annotations
@NativeType:VkStructureType
sTypeback to summary
public VkMemoryDedicatedRequirements.Buffer sType(int value)

Sets the specified value to the VkMemoryDedicatedRequirements#sType field.

sType$Defaultback to summary
public VkMemoryDedicatedRequirements.Buffer sType$Default()

Sets the STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS value to the VkMemoryDedicatedRequirements#sType field.