Top Description Inners Fields Constructors Methods
org.lwjgl.vulkan

public Class VkPhysicalDeviceTexelBufferAlignmentProperties

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

Structure describing the texel buffer alignment requirements supported by an implementation.
Description

If the VkPhysicalDeviceTexelBufferAlignmentProperties structure is included in the pNext chain of the VkPhysicalDeviceProperties2 structure passed to GetPhysicalDeviceProperties2, 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 is TRUE, 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 on VkBufferViewCreateInfo::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 {
    VkStructureType sType;
    void * pNext;
    VkDeviceSize storageTexelBufferOffsetAlignmentBytes;
    VkBool32 storageTexelBufferOffsetSingleTexelAlignment;
    VkDeviceSize uniformTexelBufferOffsetAlignmentBytes;
    VkBool32 uniformTexelBufferOffsetSingleTexelAlignment;
}

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
SIZEOF

The struct size in bytes.

public static final int
STORAGETEXELBUFFEROFFSETALIGNMENTBYTES

The struct member offsets.

public static final int
public static final int
STYPE

The struct member offsets.

public static final int
UNIFORMTEXELBUFFEROFFSETALIGNMENTBYTES

The struct member offsets.

public static final int
Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

AccessConstructor and Description
protected
public
VkPhysicalDeviceTexelBufferAlignmentProperties(ByteBuffer container)

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

Method Summary

Modifier and TypeMethod and Description
public static VkPhysicalDeviceTexelBufferAlignmentProperties
calloc()

Returns a new VkPhysicalDeviceTexelBufferAlignmentProperties instance allocated with memCalloc.

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

Returns a new VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer instance allocated with memCalloc.

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

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

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

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

protected VkPhysicalDeviceTexelBufferAlignmentProperties
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 VkPhysicalDeviceTexelBufferAlignmentProperties
create()

Returns a new VkPhysicalDeviceTexelBufferAlignmentProperties instance allocated with BufferUtils.

public static VkPhysicalDeviceTexelBufferAlignmentProperties
create(long address)

Returns a new VkPhysicalDeviceTexelBufferAlignmentProperties instance for the specified memory address.

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

Returns a new VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer instance allocated with BufferUtils.

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

Create a VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer instance at the specified memory.

public static VkPhysicalDeviceTexelBufferAlignmentProperties
createSafe(long address)

Like create, but returns null if address is NULL.

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

Like create, but returns null if address is NULL.

public static VkPhysicalDeviceTexelBufferAlignmentProperties
malloc()

Returns a new VkPhysicalDeviceTexelBufferAlignmentProperties instance allocated with memAlloc.

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

Returns a new VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer instance allocated with memAlloc.

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

Returns a new VkPhysicalDeviceTexelBufferAlignmentProperties instance allocated on the specified MemoryStack.

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

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

public static long
npNext(long struct)

Unsafe version of pNext.

public static void
npNext(long struct, long value)

Unsafe version of pNext.

public static long
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 static long
public static int
public long
pNext()

NULL or a pointer to a structure extending this structure.

public VkPhysicalDeviceTexelBufferAlignmentProperties
pNext(long value)

Sets the specified value to the pNext field.

public VkPhysicalDeviceTexelBufferAlignmentProperties
set(int sType, long pNext)

Initializes this struct with the specified values.

public VkPhysicalDeviceTexelBufferAlignmentProperties

Returns:

this struct
set
(VkPhysicalDeviceTexelBufferAlignmentProperties
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 long
storageTexelBufferOffsetAlignmentBytes()

a byte alignment that is sufficient for a storage texel buffer of any format.

public boolean
storageTexelBufferOffsetSingleTexelAlignment()

indicates whether single texel alignment is sufficient for a storage texel buffer of any format.

public int
sType()

a VkStructureType value identifying this structure.

public VkPhysicalDeviceTexelBufferAlignmentProperties
sType(int value)

Sets the specified value to the sType field.

public VkPhysicalDeviceTexelBufferAlignmentProperties
public long
uniformTexelBufferOffsetAlignmentBytes()

a byte alignment that is sufficient for a uniform texel buffer of any format.

public boolean
uniformTexelBufferOffsetSingleTexelAlignment()

indicates whether single texel alignment is sufficient for a uniform texel buffer of any format.

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.

SIZEOFback to summary
public static final int SIZEOF

The struct size in bytes.

STORAGETEXELBUFFEROFFSETALIGNMENTBYTESback to summary
public static final int STORAGETEXELBUFFEROFFSETALIGNMENTBYTES

The struct member offsets.

STORAGETEXELBUFFEROFFSETSINGLETEXELALIGNMENTback to summary
public static final int STORAGETEXELBUFFEROFFSETSINGLETEXELALIGNMENT

The struct member offsets.

STYPEback to summary
public static final int STYPE

The struct member offsets.

UNIFORMTEXELBUFFEROFFSETALIGNMENTBYTESback to summary
public static final int UNIFORMTEXELBUFFEROFFSETALIGNMENTBYTES

The struct member offsets.

UNIFORMTEXELBUFFEROFFSETSINGLETEXELALIGNMENTback to summary
public static final int UNIFORMTEXELBUFFEROFFSETSINGLETEXELALIGNMENT

The struct member offsets.

Constructor Detail

VkPhysicalDeviceTexelBufferAlignmentPropertiesback to summary
protected VkPhysicalDeviceTexelBufferAlignmentProperties(long address, ByteBuffer container)
VkPhysicalDeviceTexelBufferAlignmentPropertiesback to summary
public VkPhysicalDeviceTexelBufferAlignmentProperties(ByteBuffer container)

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

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

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

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

Parameters
capacity:int

the buffer capacity

callocback to summary
public static VkPhysicalDeviceTexelBufferAlignmentProperties calloc(MemoryStack stack)

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

Returns a new VkPhysicalDeviceTexelBufferAlignmentProperties.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

createback to summary
protected VkPhysicalDeviceTexelBufferAlignmentProperties 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 VkPhysicalDeviceTexelBufferAlignmentProperties create()

Returns a new VkPhysicalDeviceTexelBufferAlignmentProperties instance allocated with BufferUtils.

createback to summary
public static VkPhysicalDeviceTexelBufferAlignmentProperties create(long address)

Returns a new VkPhysicalDeviceTexelBufferAlignmentProperties instance for the specified memory address.

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

Returns a new VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer instance allocated with BufferUtils.

Parameters
capacity:int

the buffer capacity

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

Create a VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer instance at the specified memory.

Parameters
address:long

the memory address

capacity:int

the buffer capacity

createSafeback to summary
public static VkPhysicalDeviceTexelBufferAlignmentProperties createSafe(long address)

Like create, but returns null if address is NULL.

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

Like create, but returns null if address is NULL.

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

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

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

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

Parameters
capacity:int

the buffer capacity

mallocback to summary
public static VkPhysicalDeviceTexelBufferAlignmentProperties malloc(MemoryStack stack)

Returns a new VkPhysicalDeviceTexelBufferAlignmentProperties instance allocated on the specified MemoryStack.

Parameters
stack:MemoryStack

the stack from which to allocate

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

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

Parameters
capacity:int

the buffer capacity

stack:MemoryStack

the stack from which to allocate

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.

nstorageTexelBufferOffsetAlignmentBytesback to summary
public static long nstorageTexelBufferOffsetAlignmentBytes(long struct)

Unsafe version of storageTexelBufferOffsetAlignmentBytes.

nstorageTexelBufferOffsetSingleTexelAlignmentback to summary
public static int nstorageTexelBufferOffsetSingleTexelAlignment(long struct)

Unsafe version of storageTexelBufferOffsetSingleTexelAlignment.

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.

nuniformTexelBufferOffsetAlignmentBytesback to summary
public static long nuniformTexelBufferOffsetAlignmentBytes(long struct)

Unsafe version of uniformTexelBufferOffsetAlignmentBytes.

nuniformTexelBufferOffsetSingleTexelAlignmentback to summary
public static int nuniformTexelBufferOffsetSingleTexelAlignment(long struct)

Unsafe version of uniformTexelBufferOffsetSingleTexelAlignment.

pNextback to summary
public long pNext()

NULL or a pointer to a structure extending this structure.

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

Sets the specified value to the pNext field.

setback to summary
public VkPhysicalDeviceTexelBufferAlignmentProperties set(int sType, long pNext)

Initializes this struct with the specified values.

setback to summary
public VkPhysicalDeviceTexelBufferAlignmentProperties set(VkPhysicalDeviceTexelBufferAlignmentProperties src)

Copies the specified struct data to this struct.

Parameters
src:VkPhysicalDeviceTexelBufferAlignmentProperties

the source struct

Returns:VkPhysicalDeviceTexelBufferAlignmentProperties

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
storageTexelBufferOffsetAlignmentBytesback to summary
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.

Annotations
@NativeType:VkDeviceSize
storageTexelBufferOffsetSingleTexelAlignmentback to summary
public boolean storageTexelBufferOffsetSingleTexelAlignment()

indicates whether single texel alignment is sufficient for a storage texel buffer of any format.

Annotations
@NativeType:VkBool32
sTypeback to summary
public int sType()

a VkStructureType value identifying this structure.

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

Sets the specified value to the sType field.

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

Sets the STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES value to the sType field.

uniformTexelBufferOffsetAlignmentBytesback to summary
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.

Annotations
@NativeType:VkDeviceSize
uniformTexelBufferOffsetSingleTexelAlignmentback to summary
public boolean uniformTexelBufferOffsetSingleTexelAlignment()

indicates whether single texel alignment is sufficient for a uniform texel buffer of any format.

Annotations
@NativeType:VkBool32
org.lwjgl.vulkan back to summary

public Class VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer

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

An array of VkPhysicalDeviceTexelBufferAlignmentProperties structs.

Field Summary

Modifier and TypeField and Description
private static final VkPhysicalDeviceTexelBufferAlignmentProperties

Constructor Summary

AccessConstructor and Description
public
Buffer(ByteBuffer container)

Creates a new VkPhysicalDeviceTexelBufferAlignmentProperties.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 VkPhysicalDeviceTexelBufferAlignmentProperties
public long
public VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer
pNext(long value)

Sets the specified value to the VkPhysicalDeviceTexelBufferAlignmentProperties#pNext field.

protected VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer
public long
public boolean
public int
public VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer
sType(int value)

Sets the specified value to the VkPhysicalDeviceTexelBufferAlignmentProperties#sType field.

public VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer
public long
public boolean
Inherited from org.lwjgl.system.StructBuffer:
applyapplyforEachgetgetgetgetiteratorparallelStreamputputsizeofspliteratorstream

Field Detail

ELEMENT_FACTORYback to summary
private static final VkPhysicalDeviceTexelBufferAlignmentProperties ELEMENT_FACTORY

Constructor Detail

Bufferback to summary
public Buffer(ByteBuffer container)

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

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

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

the value of the VkPhysicalDeviceTexelBufferAlignmentProperties#pNext field.

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

Sets the specified value to the VkPhysicalDeviceTexelBufferAlignmentProperties#pNext field.

selfback to summary
protected VkPhysicalDeviceTexelBufferAlignmentProperties.Buffer self()

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

Annotations
@Override
storageTexelBufferOffsetAlignmentBytesback to summary
public long storageTexelBufferOffsetAlignmentBytes()
Returns:long

the value of the VkPhysicalDeviceTexelBufferAlignmentProperties#storageTexelBufferOffsetAlignmentBytes field.

Annotations
@NativeType:VkDeviceSize
storageTexelBufferOffsetSingleTexelAlignmentback to summary
public boolean storageTexelBufferOffsetSingleTexelAlignment()
Returns:boolean

the value of the VkPhysicalDeviceTexelBufferAlignmentProperties#storageTexelBufferOffsetSingleTexelAlignment field.

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

the value of the VkPhysicalDeviceTexelBufferAlignmentProperties#sType field.

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

Sets the specified value to the VkPhysicalDeviceTexelBufferAlignmentProperties#sType field.

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

Sets the STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES value to the VkPhysicalDeviceTexelBufferAlignmentProperties#sType field.

uniformTexelBufferOffsetAlignmentBytesback to summary
public long uniformTexelBufferOffsetAlignmentBytes()
Returns:long

the value of the VkPhysicalDeviceTexelBufferAlignmentProperties#uniformTexelBufferOffsetAlignmentBytes field.

Annotations
@NativeType:VkDeviceSize
uniformTexelBufferOffsetSingleTexelAlignmentback to summary
public boolean uniformTexelBufferOffsetSingleTexelAlignment()
Returns:boolean

the value of the VkPhysicalDeviceTexelBufferAlignmentProperties#uniformTexelBufferOffsetSingleTexelAlignment field.

Annotations
@NativeType:VkBool32