Class VkPhysicalDeviceTexelBufferAlignmentProperties
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkPhysicalDeviceTexelBufferAlignmentProperties
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
- Direct Known Subclasses:
VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT
public class VkPhysicalDeviceTexelBufferAlignmentProperties extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure describing the texel buffer alignment requirements supported by an implementation.Description
If the
VkPhysicalDeviceTexelBufferAlignmentPropertiesstructure is included in thepNextchain of theVkPhysicalDeviceProperties2structure passed toGetPhysicalDeviceProperties2, it is filled in with each corresponding implementation-dependent property.If the single texel alignment property is
FALSE, then the buffer view’s offset must be aligned to the corresponding byte alignment value. If the single texel alignment property isTRUE, then the buffer view’s offset must be aligned to the lesser of the corresponding byte alignment value or the size of a single texel, based onVkBufferViewCreateInfo::format. If the size of a single texel is a multiple of three bytes, then the size of a single component of the format is used instead.These limits must not advertise a larger alignment than the required maximum minimum value of
VkPhysicalDeviceLimits::minTexelBufferOffsetAlignment, for any format that supports use as a texel buffer.Valid Usage (Implicit)
Layout
struct VkPhysicalDeviceTexelBufferAlignmentProperties { VkStructureTypesType(); void *pNext(); VkDeviceSizestorageTexelBufferOffsetAlignmentBytes(); VkBool32storageTexelBufferOffsetSingleTexelAlignment(); VkDeviceSizeuniformTexelBufferOffsetAlignmentBytes(); VkBool32uniformTexelBufferOffsetSingleTexelAlignment(); }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkPhysicalDeviceTexelBufferAlignmentProperties.BufferAn array ofVkPhysicalDeviceTexelBufferAlignmentPropertiesstructs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intPNEXTThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSTORAGETEXELBUFFEROFFSETALIGNMENTBYTES
STORAGETEXELBUFFEROFFSETSINGLETEXELALIGNMENT
STYPE
UNIFORMTEXELBUFFEROFFSETALIGNMENTBYTES
UNIFORMTEXELBUFFEROFFSETSINGLETEXELALIGNMENTThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkPhysicalDeviceTexelBufferAlignmentProperties(java.nio.ByteBuffer container)Creates aVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkPhysicalDeviceTexelBufferAlignmentPropertiescalloc()Returns a newVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance allocated withmemCalloc.static VkPhysicalDeviceTexelBufferAlignmentProperties.Buffercalloc(int capacity)Returns a newVkPhysicalDeviceTexelBufferAlignmentProperties.Bufferinstance allocated withmemCalloc.static VkPhysicalDeviceTexelBufferAlignmentProperties.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkPhysicalDeviceTexelBufferAlignmentProperties.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkPhysicalDeviceTexelBufferAlignmentPropertiescalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkPhysicalDeviceTexelBufferAlignmentPropertiescreate()Returns a newVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance allocated withBufferUtils.static VkPhysicalDeviceTexelBufferAlignmentProperties.Buffercreate(int capacity)Returns a newVkPhysicalDeviceTexelBufferAlignmentProperties.Bufferinstance allocated withBufferUtils.static VkPhysicalDeviceTexelBufferAlignmentPropertiescreate(long address)Returns a newVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance for the specified memory address.static VkPhysicalDeviceTexelBufferAlignmentProperties.Buffercreate(long address, int capacity)Create aVkPhysicalDeviceTexelBufferAlignmentProperties.Bufferinstance at the specified memory.static VkPhysicalDeviceTexelBufferAlignmentPropertiescreateSafe(long address)static VkPhysicalDeviceTexelBufferAlignmentProperties.BuffercreateSafe(long address, int capacity)static VkPhysicalDeviceTexelBufferAlignmentPropertiesmalloc()Returns a newVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance allocated withmemAlloc.static VkPhysicalDeviceTexelBufferAlignmentProperties.Buffermalloc(int capacity)Returns a newVkPhysicalDeviceTexelBufferAlignmentProperties.Bufferinstance allocated withmemAlloc.static VkPhysicalDeviceTexelBufferAlignmentProperties.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkPhysicalDeviceTexelBufferAlignmentProperties.Bufferinstance allocated on the specifiedMemoryStack.static VkPhysicalDeviceTexelBufferAlignmentPropertiesmalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance allocated on the specifiedMemoryStack.static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static longnstorageTexelBufferOffsetAlignmentBytes(long struct)Unsafe version ofstorageTexelBufferOffsetAlignmentBytes().static intnstorageTexelBufferOffsetSingleTexelAlignment(long struct)Unsafe version ofstorageTexelBufferOffsetSingleTexelAlignment().static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.static longnuniformTexelBufferOffsetAlignmentBytes(long struct)Unsafe version ofuniformTexelBufferOffsetAlignmentBytes().static intnuniformTexelBufferOffsetSingleTexelAlignment(long struct)Unsafe version ofuniformTexelBufferOffsetSingleTexelAlignment().longpNext()NULLor a pointer to a structure extending this structure.VkPhysicalDeviceTexelBufferAlignmentPropertiespNext(long value)Sets the specified value to thepNext()field.VkPhysicalDeviceTexelBufferAlignmentPropertiesset(int sType, long pNext)Initializes this struct with the specified values.VkPhysicalDeviceTexelBufferAlignmentPropertiesset(VkPhysicalDeviceTexelBufferAlignmentProperties src)Copies the specified struct data to this struct.intsizeof()longstorageTexelBufferOffsetAlignmentBytes()a byte alignment that is sufficient for a storage texel buffer of any format.booleanstorageTexelBufferOffsetSingleTexelAlignment()indicates whether single texel alignment is sufficient for a storage texel buffer of any format.intsType()the type of this structure.VkPhysicalDeviceTexelBufferAlignmentPropertiessType(int value)Sets the specified value to thesType()field.VkPhysicalDeviceTexelBufferAlignmentPropertiessType$Default()Sets theSTRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIESvalue to thesType()field.longuniformTexelBufferOffsetAlignmentBytes()a byte alignment that is sufficient for a uniform texel buffer of any format.booleanuniformTexelBufferOffsetSingleTexelAlignment()indicates whether single texel alignment is sufficient for a uniform texel buffer of any format.
-
-
-
Constructor Detail
-
VkPhysicalDeviceTexelBufferAlignmentProperties
public VkPhysicalDeviceTexelBufferAlignmentProperties(java.nio.ByteBuffer container)
Creates aVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance 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.
-
storageTexelBufferOffsetAlignmentBytes
public long storageTexelBufferOffsetAlignmentBytes()
a byte alignment that is sufficient for a storage texel buffer of any format. The value must be a power of two.
-
storageTexelBufferOffsetSingleTexelAlignment
public boolean storageTexelBufferOffsetSingleTexelAlignment()
indicates whether single texel alignment is sufficient for a storage texel buffer of any format. The value must be a power of two.
-
uniformTexelBufferOffsetAlignmentBytes
public long uniformTexelBufferOffsetAlignmentBytes()
a byte alignment that is sufficient for a uniform texel buffer of any format. The value must be a power of two.
-
uniformTexelBufferOffsetSingleTexelAlignment
public boolean uniformTexelBufferOffsetSingleTexelAlignment()
indicates whether single texel alignment is sufficient for a uniform texel buffer of any format. The value must be a power of two.
-
sType
public VkPhysicalDeviceTexelBufferAlignmentProperties sType(int value)
Sets the specified value to thesType()field.
-
sType$Default
public VkPhysicalDeviceTexelBufferAlignmentProperties sType$Default()
Sets theSTRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIESvalue to thesType()field.
-
pNext
public VkPhysicalDeviceTexelBufferAlignmentProperties pNext(long value)
Sets the specified value to thepNext()field.
-
set
public VkPhysicalDeviceTexelBufferAlignmentProperties set(int sType, long pNext)
Initializes this struct with the specified values.
-
set
public VkPhysicalDeviceTexelBufferAlignmentProperties set(VkPhysicalDeviceTexelBufferAlignmentProperties src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkPhysicalDeviceTexelBufferAlignmentProperties malloc()
Returns a newVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkPhysicalDeviceTexelBufferAlignmentProperties calloc()
Returns a newVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkPhysicalDeviceTexelBufferAlignmentProperties create()
Returns a newVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance allocated withBufferUtils.
-
create
public static VkPhysicalDeviceTexelBufferAlignmentProperties create(long address)
Returns a newVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance for the specified memory address.
-
createSafe
@Nullable public static VkPhysicalDeviceTexelBufferAlignmentProperties createSafe(long address)
-
malloc
public static VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer malloc(int capacity)
Returns a newVkPhysicalDeviceTexelBufferAlignmentProperties.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer calloc(int capacity)
Returns a newVkPhysicalDeviceTexelBufferAlignmentProperties.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer create(int capacity)
Returns a newVkPhysicalDeviceTexelBufferAlignmentProperties.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer create(long address, int capacity)
Create aVkPhysicalDeviceTexelBufferAlignmentProperties.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer createSafe(long address, int capacity)
-
malloc
public static VkPhysicalDeviceTexelBufferAlignmentProperties malloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkPhysicalDeviceTexelBufferAlignmentProperties calloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceTexelBufferAlignmentPropertiesinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceTexelBufferAlignmentProperties.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
calloc
public static VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPhysicalDeviceTexelBufferAlignmentProperties.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().
-
nstorageTexelBufferOffsetAlignmentBytes
public static long nstorageTexelBufferOffsetAlignmentBytes(long struct)
Unsafe version ofstorageTexelBufferOffsetAlignmentBytes().
-
nstorageTexelBufferOffsetSingleTexelAlignment
public static int nstorageTexelBufferOffsetSingleTexelAlignment(long struct)
Unsafe version ofstorageTexelBufferOffsetSingleTexelAlignment().
-
nuniformTexelBufferOffsetAlignmentBytes
public static long nuniformTexelBufferOffsetAlignmentBytes(long struct)
Unsafe version ofuniformTexelBufferOffsetAlignmentBytes().
-
nuniformTexelBufferOffsetSingleTexelAlignment
public static int nuniformTexelBufferOffsetSingleTexelAlignment(long struct)
Unsafe version ofuniformTexelBufferOffsetSingleTexelAlignment().
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
-