Package org.lwjgl.vulkan
Class VkGraphicsShaderGroupCreateInfoNV
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkGraphicsShaderGroupCreateInfoNV
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkGraphicsShaderGroupCreateInfoNV extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure specifying override parameters for each shader group.Valid Usage
- For
stageCount, the same restrictions as inVkGraphicsPipelineCreateInfo::stageCountapply - For
pStages, the same restrictions as inVkGraphicsPipelineCreateInfo::pStagesapply - For
pVertexInputState, the same restrictions as inVkGraphicsPipelineCreateInfo::pVertexInputStateapply - For
pTessellationState, the same restrictions as inVkGraphicsPipelineCreateInfo::pTessellationStateapply
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NVpNextmust beNULLpStagesmust be a valid pointer to an array ofstageCountvalidVkPipelineShaderStageCreateInfostructuresstageCountmust be greater than 0
See Also
VkGraphicsPipelineShaderGroupsCreateInfoNV,VkPipelineShaderStageCreateInfo,VkPipelineTessellationStateCreateInfo,VkPipelineVertexInputStateCreateInfoLayout
struct VkGraphicsShaderGroupCreateInfoNV { VkStructureTypesType(); void const *pNext(); uint32_tstageCount();VkPipelineShaderStageCreateInfoconst *pStages();VkPipelineVertexInputStateCreateInfoconst *pVertexInputState();VkPipelineTessellationStateCreateInfoconst *pTessellationState(); }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkGraphicsShaderGroupCreateInfoNV.BufferAn array ofVkGraphicsShaderGroupCreateInfoNVstructs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intPNEXT
PSTAGES
PTESSELLATIONSTATE
PVERTEXINPUTSTATEThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSTAGECOUNT
STYPEThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkGraphicsShaderGroupCreateInfoNV(java.nio.ByteBuffer container)Creates aVkGraphicsShaderGroupCreateInfoNVinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkGraphicsShaderGroupCreateInfoNVcalloc()Returns a newVkGraphicsShaderGroupCreateInfoNVinstance allocated withmemCalloc.static VkGraphicsShaderGroupCreateInfoNV.Buffercalloc(int capacity)Returns a newVkGraphicsShaderGroupCreateInfoNV.Bufferinstance allocated withmemCalloc.static VkGraphicsShaderGroupCreateInfoNV.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkGraphicsShaderGroupCreateInfoNV.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkGraphicsShaderGroupCreateInfoNVcalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkGraphicsShaderGroupCreateInfoNVinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkGraphicsShaderGroupCreateInfoNVcreate()Returns a newVkGraphicsShaderGroupCreateInfoNVinstance allocated withBufferUtils.static VkGraphicsShaderGroupCreateInfoNV.Buffercreate(int capacity)Returns a newVkGraphicsShaderGroupCreateInfoNV.Bufferinstance allocated withBufferUtils.static VkGraphicsShaderGroupCreateInfoNVcreate(long address)Returns a newVkGraphicsShaderGroupCreateInfoNVinstance for the specified memory address.static VkGraphicsShaderGroupCreateInfoNV.Buffercreate(long address, int capacity)Create aVkGraphicsShaderGroupCreateInfoNV.Bufferinstance at the specified memory.static VkGraphicsShaderGroupCreateInfoNVcreateSafe(long address)static VkGraphicsShaderGroupCreateInfoNV.BuffercreateSafe(long address, int capacity)static VkGraphicsShaderGroupCreateInfoNVmalloc()Returns a newVkGraphicsShaderGroupCreateInfoNVinstance allocated withmemAlloc.static VkGraphicsShaderGroupCreateInfoNV.Buffermalloc(int capacity)Returns a newVkGraphicsShaderGroupCreateInfoNV.Bufferinstance allocated withmemAlloc.static VkGraphicsShaderGroupCreateInfoNV.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkGraphicsShaderGroupCreateInfoNV.Bufferinstance allocated on the specifiedMemoryStack.static VkGraphicsShaderGroupCreateInfoNVmalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkGraphicsShaderGroupCreateInfoNVinstance allocated on the specifiedMemoryStack.static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static VkPipelineShaderStageCreateInfo.BuffernpStages(long struct)Unsafe version ofpStages().static voidnpStages(long struct, VkPipelineShaderStageCreateInfo.Buffer value)Unsafe version ofpStages.static VkPipelineTessellationStateCreateInfonpTessellationState(long struct)Unsafe version ofpTessellationState().static voidnpTessellationState(long struct, VkPipelineTessellationStateCreateInfo value)Unsafe version ofpTessellationState.static VkPipelineVertexInputStateCreateInfonpVertexInputState(long struct)Unsafe version ofpVertexInputState().static voidnpVertexInputState(long struct, VkPipelineVertexInputStateCreateInfo value)Unsafe version ofpVertexInputState.static intnstageCount(long struct)Unsafe version ofstageCount().static voidnstageCount(long struct, int value)Sets the specified value to thestageCountfield of the specifiedstruct.static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.longpNext()NULLor a pointer to a structure extending this structure.VkGraphicsShaderGroupCreateInfoNVpNext(long value)Sets the specified value to thepNext()field.VkPipelineShaderStageCreateInfo.BufferpStages()a pointer to an arrayVkPipelineShaderStageCreateInfostructures specifying the set of the shader stages to be included in this shader group.VkGraphicsShaderGroupCreateInfoNVpStages(VkPipelineShaderStageCreateInfo.Buffer value)Sets the address of the specifiedVkPipelineShaderStageCreateInfo.Bufferto thepStages()field.VkPipelineTessellationStateCreateInfopTessellationState()a pointer to aVkPipelineTessellationStateCreateInfostructure, and is ignored if the shader group does not include a tessellation control shader stage and tessellation evaluation shader stage.VkGraphicsShaderGroupCreateInfoNVpTessellationState(VkPipelineTessellationStateCreateInfo value)Sets the address of the specifiedVkPipelineTessellationStateCreateInfoto thepTessellationState()field.VkPipelineVertexInputStateCreateInfopVertexInputState()a pointer to aVkPipelineVertexInputStateCreateInfostructure.VkGraphicsShaderGroupCreateInfoNVpVertexInputState(VkPipelineVertexInputStateCreateInfo value)Sets the address of the specifiedVkPipelineVertexInputStateCreateInfoto thepVertexInputState()field.VkGraphicsShaderGroupCreateInfoNVset(int sType, long pNext, VkPipelineShaderStageCreateInfo.Buffer pStages, VkPipelineVertexInputStateCreateInfo pVertexInputState, VkPipelineTessellationStateCreateInfo pTessellationState)Initializes this struct with the specified values.VkGraphicsShaderGroupCreateInfoNVset(VkGraphicsShaderGroupCreateInfoNV src)Copies the specified struct data to this struct.intsizeof()intstageCount()the number of entries in thepStagesarray.intsType()the type of this structure.VkGraphicsShaderGroupCreateInfoNVsType(int value)Sets the specified value to thesType()field.VkGraphicsShaderGroupCreateInfoNVsType$Default()Sets theSTRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NVvalue to thesType()field.static voidvalidate(long struct)Validates pointer members that should not beNULL.
-
-
-
Constructor Detail
-
VkGraphicsShaderGroupCreateInfoNV
public VkGraphicsShaderGroupCreateInfoNV(java.nio.ByteBuffer container)
Creates aVkGraphicsShaderGroupCreateInfoNVinstance 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()
the type of this structure.
-
pNext
public long pNext()
NULLor a pointer to a structure extending this structure.
-
stageCount
public int stageCount()
the number of entries in thepStagesarray.
-
pStages
public VkPipelineShaderStageCreateInfo.Buffer pStages()
a pointer to an arrayVkPipelineShaderStageCreateInfostructures specifying the set of the shader stages to be included in this shader group.
-
pVertexInputState
@Nullable public VkPipelineVertexInputStateCreateInfo pVertexInputState()
a pointer to aVkPipelineVertexInputStateCreateInfostructure.
-
pTessellationState
@Nullable public VkPipelineTessellationStateCreateInfo pTessellationState()
a pointer to aVkPipelineTessellationStateCreateInfostructure, and is ignored if the shader group does not include a tessellation control shader stage and tessellation evaluation shader stage.
-
sType
public VkGraphicsShaderGroupCreateInfoNV sType(int value)
Sets the specified value to thesType()field.
-
sType$Default
public VkGraphicsShaderGroupCreateInfoNV sType$Default()
Sets theSTRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NVvalue to thesType()field.
-
pNext
public VkGraphicsShaderGroupCreateInfoNV pNext(long value)
Sets the specified value to thepNext()field.
-
pStages
public VkGraphicsShaderGroupCreateInfoNV pStages(VkPipelineShaderStageCreateInfo.Buffer value)
Sets the address of the specifiedVkPipelineShaderStageCreateInfo.Bufferto thepStages()field.
-
pVertexInputState
public VkGraphicsShaderGroupCreateInfoNV pVertexInputState(@Nullable VkPipelineVertexInputStateCreateInfo value)
Sets the address of the specifiedVkPipelineVertexInputStateCreateInfoto thepVertexInputState()field.
-
pTessellationState
public VkGraphicsShaderGroupCreateInfoNV pTessellationState(@Nullable VkPipelineTessellationStateCreateInfo value)
Sets the address of the specifiedVkPipelineTessellationStateCreateInfoto thepTessellationState()field.
-
set
public VkGraphicsShaderGroupCreateInfoNV set(int sType, long pNext, VkPipelineShaderStageCreateInfo.Buffer pStages, @Nullable VkPipelineVertexInputStateCreateInfo pVertexInputState, @Nullable VkPipelineTessellationStateCreateInfo pTessellationState)
Initializes this struct with the specified values.
-
set
public VkGraphicsShaderGroupCreateInfoNV set(VkGraphicsShaderGroupCreateInfoNV src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkGraphicsShaderGroupCreateInfoNV malloc()
Returns a newVkGraphicsShaderGroupCreateInfoNVinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkGraphicsShaderGroupCreateInfoNV calloc()
Returns a newVkGraphicsShaderGroupCreateInfoNVinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkGraphicsShaderGroupCreateInfoNV create()
Returns a newVkGraphicsShaderGroupCreateInfoNVinstance allocated withBufferUtils.
-
create
public static VkGraphicsShaderGroupCreateInfoNV create(long address)
Returns a newVkGraphicsShaderGroupCreateInfoNVinstance for the specified memory address.
-
createSafe
@Nullable public static VkGraphicsShaderGroupCreateInfoNV createSafe(long address)
-
malloc
public static VkGraphicsShaderGroupCreateInfoNV.Buffer malloc(int capacity)
Returns a newVkGraphicsShaderGroupCreateInfoNV.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkGraphicsShaderGroupCreateInfoNV.Buffer calloc(int capacity)
Returns a newVkGraphicsShaderGroupCreateInfoNV.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkGraphicsShaderGroupCreateInfoNV.Buffer create(int capacity)
Returns a newVkGraphicsShaderGroupCreateInfoNV.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkGraphicsShaderGroupCreateInfoNV.Buffer create(long address, int capacity)
Create aVkGraphicsShaderGroupCreateInfoNV.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkGraphicsShaderGroupCreateInfoNV.Buffer createSafe(long address, int capacity)
-
malloc
public static VkGraphicsShaderGroupCreateInfoNV malloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkGraphicsShaderGroupCreateInfoNVinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkGraphicsShaderGroupCreateInfoNV calloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkGraphicsShaderGroupCreateInfoNVinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkGraphicsShaderGroupCreateInfoNV.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkGraphicsShaderGroupCreateInfoNV.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
calloc
public static VkGraphicsShaderGroupCreateInfoNV.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkGraphicsShaderGroupCreateInfoNV.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().
-
nstageCount
public static int nstageCount(long struct)
Unsafe version ofstageCount().
-
npStages
public static VkPipelineShaderStageCreateInfo.Buffer npStages(long struct)
Unsafe version ofpStages().
-
npVertexInputState
@Nullable public static VkPipelineVertexInputStateCreateInfo npVertexInputState(long struct)
Unsafe version ofpVertexInputState().
-
npTessellationState
@Nullable public static VkPipelineTessellationStateCreateInfo npTessellationState(long struct)
Unsafe version ofpTessellationState().
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
nstageCount
public static void nstageCount(long struct, int value)Sets the specified value to thestageCountfield of the specifiedstruct.
-
npStages
public static void npStages(long struct, VkPipelineShaderStageCreateInfo.Buffer value)Unsafe version ofpStages.
-
npVertexInputState
public static void npVertexInputState(long struct, @Nullable VkPipelineVertexInputStateCreateInfo value)Unsafe version ofpVertexInputState.
-
npTessellationState
public static void npTessellationState(long struct, @Nullable VkPipelineTessellationStateCreateInfo value)Unsafe version ofpTessellationState.
-
validate
public static void validate(long struct)
Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-
-