public class VkComputePipelineCreateInfo
extends org.lwjgl.system.Struct
implements org.lwjgl.system.NativeResource
The parameters basePipelineHandle and basePipelineIndex are described in more detail in Pipeline Derivatives.
flags contains the PIPELINE_CREATE_DERIVATIVE_BIT flag, and basePipelineIndex is -1, basePipelineHandle must be a valid handle to a compute VkPipelineflags contains the PIPELINE_CREATE_DERIVATIVE_BIT flag, and basePipelineHandle is NULL_HANDLE, basePipelineIndex must be a valid index into the calling command’s pCreateInfos parameterflags contains the PIPELINE_CREATE_DERIVATIVE_BIT flag, and basePipelineIndex is not -1, basePipelineHandle must be NULL_HANDLEflags contains the PIPELINE_CREATE_DERIVATIVE_BIT flag, and basePipelineHandle is not NULL_HANDLE, basePipelineIndex must be -1stage member of stage must be SHADER_STAGE_COMPUTE_BITstage and the rest of the state identified by this structure must adhere to the pipeline linking rules described in the Shader Interfaces chapterlayout must be consistent with the layout of the compute shader specified in stagelayout accessible to the compute shader stage must be less than or equal to VkPhysicalDeviceLimits::maxPerStageResourcessType must be STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFOpNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPipelineCompilerControlCreateInfoAMD or VkPipelineCreationFeedbackCreateInfoEXTsType member in the pNext chain must be uniqueflags must be a valid combination of VkPipelineCreateFlagBits valuesstage must be a valid VkPipelineShaderStageCreateInfo structurelayout must be a valid VkPipelineLayout handlebasePipelineHandle, and layout that are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the same VkDeviceVkPipelineShaderStageCreateInfo, CreateComputePipelines
sType – the type of this structure.pNext – NULL or a pointer to an extension-specific structure.flags – a bitmask of VkPipelineCreateFlagBits specifying how the pipeline will be generated.stage – a VkPipelineShaderStageCreateInfo structure describing the compute shader.layout – the description of binding locations used by both the pipeline and descriptor sets used with the pipeline.basePipelineHandle – a pipeline to derive frombasePipelineIndex – an index into the pCreateInfos parameter to use as a pipeline to derive from
struct VkComputePipelineCreateInfo {
VkStructureType sType;
void const * pNext;
VkPipelineCreateFlags flags;
VkPipelineShaderStageCreateInfo stage;
VkPipelineLayout layout;
VkPipeline basePipelineHandle;
int32_t basePipelineIndex;
}| Modifier and Type | Class and Description |
|---|---|
static class |
VkComputePipelineCreateInfo.Buffer
An array of
VkComputePipelineCreateInfo structs. |
| Modifier and Type | Field and Description |
|---|---|
static int |
ALIGNOF
The struct alignment in bytes.
|
static int |
BASEPIPELINEHANDLE
The struct member offsets.
|
static int |
BASEPIPELINEINDEX
The struct member offsets.
|
static int |
FLAGS
The struct member offsets.
|
static int |
LAYOUT
The struct member offsets.
|
static int |
PNEXT
The struct member offsets.
|
static int |
SIZEOF
The struct size in bytes.
|
static int |
STAGE
The struct member offsets.
|
static int |
STYPE
The struct member offsets.
|
| Constructor and Description |
|---|
VkComputePipelineCreateInfo(java.nio.ByteBuffer container)
Creates a
VkComputePipelineCreateInfo instance at the current position of the specified ByteBuffer container. |
| Modifier and Type | Method and Description |
|---|---|
long |
basePipelineHandle()
Returns the value of the
basePipelineHandle field. |
VkComputePipelineCreateInfo |
basePipelineHandle(long value)
Sets the specified value to the
basePipelineHandle field. |
int |
basePipelineIndex()
Returns the value of the
basePipelineIndex field. |
VkComputePipelineCreateInfo |
basePipelineIndex(int value)
Sets the specified value to the
basePipelineIndex field. |
static VkComputePipelineCreateInfo |
calloc()
Returns a new
VkComputePipelineCreateInfo instance allocated with memCalloc. |
static VkComputePipelineCreateInfo.Buffer |
calloc(int capacity)
Returns a new
VkComputePipelineCreateInfo.Buffer instance allocated with memCalloc. |
static VkComputePipelineCreateInfo |
callocStack()
Returns a new
VkComputePipelineCreateInfo instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static VkComputePipelineCreateInfo.Buffer |
callocStack(int capacity)
Returns a new
VkComputePipelineCreateInfo.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static VkComputePipelineCreateInfo.Buffer |
callocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
VkComputePipelineCreateInfo.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero. |
static VkComputePipelineCreateInfo |
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
VkComputePipelineCreateInfo instance allocated on the specified MemoryStack and initializes all its bits to zero. |
static VkComputePipelineCreateInfo |
create()
Returns a new
VkComputePipelineCreateInfo instance allocated with BufferUtils. |
static VkComputePipelineCreateInfo.Buffer |
create(int capacity)
Returns a new
VkComputePipelineCreateInfo.Buffer instance allocated with BufferUtils. |
static VkComputePipelineCreateInfo |
create(long address)
Returns a new
VkComputePipelineCreateInfo instance for the specified memory address. |
static VkComputePipelineCreateInfo.Buffer |
create(long address,
int capacity)
Create a
VkComputePipelineCreateInfo.Buffer instance at the specified memory. |
static VkComputePipelineCreateInfo |
createSafe(long address)
|
static VkComputePipelineCreateInfo.Buffer |
createSafe(long address,
int capacity)
|
int |
flags()
Returns the value of the
flags field. |
VkComputePipelineCreateInfo |
flags(int value)
Sets the specified value to the
flags field. |
long |
layout()
Returns the value of the
layout field. |
VkComputePipelineCreateInfo |
layout(long value)
Sets the specified value to the
layout field. |
static VkComputePipelineCreateInfo |
malloc()
Returns a new
VkComputePipelineCreateInfo instance allocated with memAlloc. |
static VkComputePipelineCreateInfo.Buffer |
malloc(int capacity)
Returns a new
VkComputePipelineCreateInfo.Buffer instance allocated with memAlloc. |
static VkComputePipelineCreateInfo |
mallocStack()
Returns a new
VkComputePipelineCreateInfo instance allocated on the thread-local MemoryStack. |
static VkComputePipelineCreateInfo.Buffer |
mallocStack(int capacity)
Returns a new
VkComputePipelineCreateInfo.Buffer instance allocated on the thread-local MemoryStack. |
static VkComputePipelineCreateInfo.Buffer |
mallocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
VkComputePipelineCreateInfo.Buffer instance allocated on the specified MemoryStack. |
static VkComputePipelineCreateInfo |
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
VkComputePipelineCreateInfo instance allocated on the specified MemoryStack. |
static long |
nbasePipelineHandle(long struct)
Unsafe version of
basePipelineHandle(). |
static void |
nbasePipelineHandle(long struct,
long value)
Unsafe version of
basePipelineHandle. |
static int |
nbasePipelineIndex(long struct)
Unsafe version of
basePipelineIndex(). |
static void |
nbasePipelineIndex(long struct,
int value)
Unsafe version of
basePipelineIndex. |
static int |
nflags(long struct)
Unsafe version of
flags(). |
static void |
nflags(long struct,
int value)
Unsafe version of
flags. |
static long |
nlayout(long struct)
Unsafe version of
layout(). |
static void |
nlayout(long struct,
long value)
Unsafe version of
layout. |
static long |
npNext(long struct)
Unsafe version of
pNext(). |
static void |
npNext(long struct,
long value)
Unsafe version of
pNext. |
static VkPipelineShaderStageCreateInfo |
nstage(long struct)
Unsafe version of
stage(). |
static void |
nstage(long struct,
VkPipelineShaderStageCreateInfo value)
Unsafe version of
stage. |
static int |
nsType(long struct)
Unsafe version of
sType(). |
static void |
nsType(long struct,
int value)
Unsafe version of
sType. |
long |
pNext()
Returns the value of the
pNext field. |
VkComputePipelineCreateInfo |
pNext(long value)
Sets the specified value to the
pNext field. |
VkComputePipelineCreateInfo |
set(int sType,
long pNext,
int flags,
VkPipelineShaderStageCreateInfo stage,
long layout,
long basePipelineHandle,
int basePipelineIndex)
Initializes this struct with the specified values.
|
VkComputePipelineCreateInfo |
set(VkComputePipelineCreateInfo src)
Copies the specified struct data to this struct.
|
int |
sizeof() |
VkPipelineShaderStageCreateInfo |
stage()
Returns a
VkPipelineShaderStageCreateInfo view of the stage field. |
VkComputePipelineCreateInfo |
stage(java.util.function.Consumer<VkPipelineShaderStageCreateInfo> consumer)
Passes the
stage field to the specified Consumer. |
VkComputePipelineCreateInfo |
stage(VkPipelineShaderStageCreateInfo value)
Copies the specified
VkPipelineShaderStageCreateInfo to the stage field. |
int |
sType()
Returns the value of the
sType field. |
VkComputePipelineCreateInfo |
sType(int value)
Sets the specified value to the
sType field. |
static void |
validate(long struct)
Validates pointer members that should not be
NULL. |
static void |
validate(long array,
int count)
Calls
validate(long) for each struct contained in the specified struct array. |
public static final int SIZEOF
public static final int ALIGNOF
public static final int STYPE
public static final int PNEXT
public static final int FLAGS
public static final int STAGE
public static final int LAYOUT
public static final int BASEPIPELINEHANDLE
public static final int BASEPIPELINEINDEX
public VkComputePipelineCreateInfo(java.nio.ByteBuffer container)
VkComputePipelineCreateInfo 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.
public int sizeof()
sizeof in class org.lwjgl.system.Structpublic int sType()
sType field.public long pNext()
pNext field.public int flags()
flags field.public VkPipelineShaderStageCreateInfo stage()
VkPipelineShaderStageCreateInfo view of the stage field.public long layout()
layout field.public long basePipelineHandle()
basePipelineHandle field.public int basePipelineIndex()
basePipelineIndex field.public VkComputePipelineCreateInfo sType(int value)
sType field.public VkComputePipelineCreateInfo pNext(long value)
pNext field.public VkComputePipelineCreateInfo flags(int value)
flags field.public VkComputePipelineCreateInfo stage(VkPipelineShaderStageCreateInfo value)
VkPipelineShaderStageCreateInfo to the stage field.public VkComputePipelineCreateInfo stage(java.util.function.Consumer<VkPipelineShaderStageCreateInfo> consumer)
stage field to the specified Consumer.public VkComputePipelineCreateInfo layout(long value)
layout field.public VkComputePipelineCreateInfo basePipelineHandle(long value)
basePipelineHandle field.public VkComputePipelineCreateInfo basePipelineIndex(int value)
basePipelineIndex field.public VkComputePipelineCreateInfo set(int sType, long pNext, int flags, VkPipelineShaderStageCreateInfo stage, long layout, long basePipelineHandle, int basePipelineIndex)
public VkComputePipelineCreateInfo set(VkComputePipelineCreateInfo src)
src - the source structpublic static VkComputePipelineCreateInfo malloc()
VkComputePipelineCreateInfo instance allocated with memAlloc. The instance must be explicitly freed.public static VkComputePipelineCreateInfo calloc()
VkComputePipelineCreateInfo instance allocated with memCalloc. The instance must be explicitly freed.public static VkComputePipelineCreateInfo create()
VkComputePipelineCreateInfo instance allocated with BufferUtils.public static VkComputePipelineCreateInfo create(long address)
VkComputePipelineCreateInfo instance for the specified memory address.@Nullable public static VkComputePipelineCreateInfo createSafe(long address)
public static VkComputePipelineCreateInfo.Buffer malloc(int capacity)
VkComputePipelineCreateInfo.Buffer instance allocated with memAlloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static VkComputePipelineCreateInfo.Buffer calloc(int capacity)
VkComputePipelineCreateInfo.Buffer instance allocated with memCalloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static VkComputePipelineCreateInfo.Buffer create(int capacity)
VkComputePipelineCreateInfo.Buffer instance allocated with BufferUtils.capacity - the buffer capacitypublic static VkComputePipelineCreateInfo.Buffer create(long address, int capacity)
VkComputePipelineCreateInfo.Buffer instance at the specified memory.address - the memory addresscapacity - the buffer capacity@Nullable public static VkComputePipelineCreateInfo.Buffer createSafe(long address, int capacity)
public static VkComputePipelineCreateInfo mallocStack()
VkComputePipelineCreateInfo instance allocated on the thread-local MemoryStack.public static VkComputePipelineCreateInfo callocStack()
VkComputePipelineCreateInfo instance allocated on the thread-local MemoryStack and initializes all its bits to zero.public static VkComputePipelineCreateInfo mallocStack(org.lwjgl.system.MemoryStack stack)
VkComputePipelineCreateInfo instance allocated on the specified MemoryStack.stack - the stack from which to allocatepublic static VkComputePipelineCreateInfo callocStack(org.lwjgl.system.MemoryStack stack)
VkComputePipelineCreateInfo instance allocated on the specified MemoryStack and initializes all its bits to zero.stack - the stack from which to allocatepublic static VkComputePipelineCreateInfo.Buffer mallocStack(int capacity)
VkComputePipelineCreateInfo.Buffer instance allocated on the thread-local MemoryStack.capacity - the buffer capacitypublic static VkComputePipelineCreateInfo.Buffer callocStack(int capacity)
VkComputePipelineCreateInfo.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero.capacity - the buffer capacitypublic static VkComputePipelineCreateInfo.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
VkComputePipelineCreateInfo.Buffer instance allocated on the specified MemoryStack.stack - the stack from which to allocatecapacity - the buffer capacitypublic static VkComputePipelineCreateInfo.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
VkComputePipelineCreateInfo.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.stack - the stack from which to allocatecapacity - the buffer capacitypublic static int nsType(long struct)
sType().public static long npNext(long struct)
pNext().public static int nflags(long struct)
flags().public static VkPipelineShaderStageCreateInfo nstage(long struct)
stage().public static long nlayout(long struct)
layout().public static long nbasePipelineHandle(long struct)
basePipelineHandle().public static int nbasePipelineIndex(long struct)
basePipelineIndex().public static void nsType(long struct,
int value)
sType.public static void npNext(long struct,
long value)
pNext.public static void nflags(long struct,
int value)
flags.public static void nstage(long struct,
VkPipelineShaderStageCreateInfo value)
stage.public static void nlayout(long struct,
long value)
layout.public static void nbasePipelineHandle(long struct,
long value)
basePipelineHandle.public static void nbasePipelineIndex(long struct,
int value)
basePipelineIndex.public static void validate(long struct)
NULL.struct - the struct to validatepublic static void validate(long array,
int count)
validate(long) for each struct contained in the specified struct array.array - the struct array to validatecount - the number of structs in arrayCopyright LWJGL. All Rights Reserved. License terms.