Package org.lwjgl.vulkan
Class VkPushConstantRange
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkPushConstantRange
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkPushConstantRange extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure specifying a push constant range.Valid Usage
offsetmust be less thanVkPhysicalDeviceLimits::maxPushConstantsSizeoffsetmust be a multiple of 4sizemust be greater than 0sizemust be a multiple of 4sizemust be less than or equal toVkPhysicalDeviceLimits::maxPushConstantsSizeminusoffset
Valid Usage (Implicit)
stageFlagsmust be a valid combination ofVkShaderStageFlagBitsvaluesstageFlagsmust not be 0
See Also
Member documentation
stageFlags– a set of stage flags describing the shader stages that will access a range of push constants. If a particular stage is not included in the range, then accessing members of that range of push constants from the corresponding shader stage will return undefined values.offset–offsetandsizeare the start offset and size, respectively, consumed by the range. Bothoffsetandsizeare in units of bytes and must be a multiple of 4. The layout of the push constant variables is specified in the shader.size– seeoffset
Layout
struct VkPushConstantRange { VkShaderStageFlags stageFlags; uint32_t offset; uint32_t size; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkPushConstantRange.BufferAn array ofVkPushConstantRangestructs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intOFFSET
SIZEThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSTAGEFLAGSThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkPushConstantRange(java.nio.ByteBuffer container)Creates aVkPushConstantRangeinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkPushConstantRangecalloc()Returns a newVkPushConstantRangeinstance allocated withmemCalloc.static VkPushConstantRange.Buffercalloc(int capacity)Returns a newVkPushConstantRange.Bufferinstance allocated withmemCalloc.static VkPushConstantRangecallocStack()Returns a newVkPushConstantRangeinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkPushConstantRange.BuffercallocStack(int capacity)Returns a newVkPushConstantRange.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkPushConstantRange.BuffercallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkPushConstantRange.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkPushConstantRangecallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkPushConstantRangeinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkPushConstantRangecreate()Returns a newVkPushConstantRangeinstance allocated withBufferUtils.static VkPushConstantRange.Buffercreate(int capacity)Returns a newVkPushConstantRange.Bufferinstance allocated withBufferUtils.static VkPushConstantRangecreate(long address)Returns a newVkPushConstantRangeinstance for the specified memory address.static VkPushConstantRange.Buffercreate(long address, int capacity)Create aVkPushConstantRange.Bufferinstance at the specified memory.static VkPushConstantRangecreateSafe(long address)static VkPushConstantRange.BuffercreateSafe(long address, int capacity)static VkPushConstantRangemalloc()Returns a newVkPushConstantRangeinstance allocated withmemAlloc.static VkPushConstantRange.Buffermalloc(int capacity)Returns a newVkPushConstantRange.Bufferinstance allocated withmemAlloc.static VkPushConstantRangemallocStack()Returns a newVkPushConstantRangeinstance allocated on the thread-localMemoryStack.static VkPushConstantRange.BuffermallocStack(int capacity)Returns a newVkPushConstantRange.Bufferinstance allocated on the thread-localMemoryStack.static VkPushConstantRange.BuffermallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkPushConstantRange.Bufferinstance allocated on the specifiedMemoryStack.static VkPushConstantRangemallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkPushConstantRangeinstance allocated on the specifiedMemoryStack.static intnoffset(long struct)Unsafe version ofoffset().static voidnoffset(long struct, int value)Unsafe version ofoffset.static intnsize(long struct)Unsafe version ofsize().static voidnsize(long struct, int value)Unsafe version ofsize.static intnstageFlags(long struct)Unsafe version ofstageFlags().static voidnstageFlags(long struct, int value)Unsafe version ofstageFlags.intoffset()Returns the value of theoffsetfield.VkPushConstantRangeoffset(int value)Sets the specified value to theoffsetfield.VkPushConstantRangeset(int stageFlags, int offset, int size)Initializes this struct with the specified values.VkPushConstantRangeset(VkPushConstantRange src)Copies the specified struct data to this struct.intsize()Returns the value of thesizefield.VkPushConstantRangesize(int value)Sets the specified value to thesizefield.intsizeof()intstageFlags()Returns the value of thestageFlagsfield.VkPushConstantRangestageFlags(int value)Sets the specified value to thestageFlagsfield.
-
-
-
Constructor Detail
-
VkPushConstantRange
public VkPushConstantRange(java.nio.ByteBuffer container)
Creates aVkPushConstantRangeinstance 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
-
stageFlags
public int stageFlags()
Returns the value of thestageFlagsfield.
-
offset
public int offset()
Returns the value of theoffsetfield.
-
size
public int size()
Returns the value of thesizefield.
-
stageFlags
public VkPushConstantRange stageFlags(int value)
Sets the specified value to thestageFlagsfield.
-
offset
public VkPushConstantRange offset(int value)
Sets the specified value to theoffsetfield.
-
size
public VkPushConstantRange size(int value)
Sets the specified value to thesizefield.
-
set
public VkPushConstantRange set(int stageFlags, int offset, int size)
Initializes this struct with the specified values.
-
set
public VkPushConstantRange set(VkPushConstantRange src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkPushConstantRange malloc()
Returns a newVkPushConstantRangeinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkPushConstantRange calloc()
Returns a newVkPushConstantRangeinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkPushConstantRange create()
Returns a newVkPushConstantRangeinstance allocated withBufferUtils.
-
create
public static VkPushConstantRange create(long address)
Returns a newVkPushConstantRangeinstance for the specified memory address.
-
createSafe
@Nullable public static VkPushConstantRange createSafe(long address)
-
malloc
public static VkPushConstantRange.Buffer malloc(int capacity)
Returns a newVkPushConstantRange.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkPushConstantRange.Buffer calloc(int capacity)
Returns a newVkPushConstantRange.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkPushConstantRange.Buffer create(int capacity)
Returns a newVkPushConstantRange.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkPushConstantRange.Buffer create(long address, int capacity)
Create aVkPushConstantRange.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkPushConstantRange.Buffer createSafe(long address, int capacity)
-
mallocStack
public static VkPushConstantRange mallocStack()
Returns a newVkPushConstantRangeinstance allocated on the thread-localMemoryStack.
-
callocStack
public static VkPushConstantRange callocStack()
Returns a newVkPushConstantRangeinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.
-
mallocStack
public static VkPushConstantRange mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPushConstantRangeinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
callocStack
public static VkPushConstantRange callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPushConstantRangeinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
mallocStack
public static VkPushConstantRange.Buffer mallocStack(int capacity)
Returns a newVkPushConstantRange.Bufferinstance allocated on the thread-localMemoryStack.- Parameters:
capacity- the buffer capacity
-
callocStack
public static VkPushConstantRange.Buffer callocStack(int capacity)
Returns a newVkPushConstantRange.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacity
-
mallocStack
public static VkPushConstantRange.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPushConstantRange.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
callocStack
public static VkPushConstantRange.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPushConstantRange.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
nstageFlags
public static int nstageFlags(long struct)
Unsafe version ofstageFlags().
-
noffset
public static int noffset(long struct)
Unsafe version ofoffset().
-
nsize
public static int nsize(long struct)
Unsafe version ofsize().
-
nstageFlags
public static void nstageFlags(long struct, int value)Unsafe version ofstageFlags.
-
noffset
public static void noffset(long struct, int value)Unsafe version ofoffset.
-
nsize
public static void nsize(long struct, int value)Unsafe version ofsize.
-
-