Package org.lwjgl.vulkan
Class VkSubpassDescriptionDepthStencilResolve
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkSubpassDescriptionDepthStencilResolve
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
- Direct Known Subclasses:
VkSubpassDescriptionDepthStencilResolveKHR
public class VkSubpassDescriptionDepthStencilResolve extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure specifying depth/stencil resolve operations for a subpass.Description
If
pDepthStencilResolveAttachmentisNULL, or if its attachment index isATTACHMENT_UNUSED, it indicates that no depth/stencil resolve attachment will be used in the subpass.Valid Usage
- If
pDepthStencilResolveAttachmentis notNULLand does not have the valueATTACHMENT_UNUSED,pDepthStencilAttachmentmust not beNULLor have the valueATTACHMENT_UNUSED - If
pDepthStencilResolveAttachmentis notNULLand does not have the valueATTACHMENT_UNUSED,depthResolveModeandstencilResolveModemust not both beRESOLVE_MODE_NONE - If
pDepthStencilResolveAttachmentis notNULLand does not have the valueATTACHMENT_UNUSED,pDepthStencilAttachmentmust not have a sample count ofSAMPLE_COUNT_1_BIT - If
pDepthStencilResolveAttachmentis notNULLand does not have the valueATTACHMENT_UNUSED,pDepthStencilResolveAttachmentmust have a sample count ofSAMPLE_COUNT_1_BIT - If
pDepthStencilResolveAttachmentis notNULLand does not have the valueATTACHMENT_UNUSEDthen it must have an image format whose potential format features containFORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT - If
pDepthStencilResolveAttachmentis notNULLand does not have the valueATTACHMENT_UNUSEDandVkFormatofpDepthStencilResolveAttachmenthas a depth component, then theVkFormatofpDepthStencilAttachmentmust have a depth component with the same number of bits and numerical type - If
pDepthStencilResolveAttachmentis notNULLand does not have the valueATTACHMENT_UNUSED, andVkFormatofpDepthStencilResolveAttachmenthas a stencil component, then theVkFormatofpDepthStencilAttachmentmust have a stencil component with the same number of bits and numerical type - If
pDepthStencilResolveAttachmentis notNULLand does not have the valueATTACHMENT_UNUSEDand theVkFormatofpDepthStencilResolveAttachmenthas a depth component, then the value ofdepthResolveModemust be one of the bits set inVkPhysicalDeviceDepthStencilResolveProperties::supportedDepthResolveModesorRESOLVE_MODE_NONE - If
pDepthStencilResolveAttachmentis notNULLand does not have the valueATTACHMENT_UNUSEDand theVkFormatofpDepthStencilResolveAttachmenthas a stencil component, then the value ofstencilResolveModemust be one of the bits set inVkPhysicalDeviceDepthStencilResolveProperties::supportedStencilResolveModesorRESOLVE_MODE_NONE - If
pDepthStencilResolveAttachmentis notNULLand does not have the valueATTACHMENT_UNUSED, theVkFormatofpDepthStencilResolveAttachmenthas both depth and stencil components,VkPhysicalDeviceDepthStencilResolveProperties::independentResolveisFALSE, andVkPhysicalDeviceDepthStencilResolveProperties::independentResolveNoneisFALSE, then the values ofdepthResolveModeandstencilResolveModemust be identical - If
pDepthStencilResolveAttachmentis notNULLand does not have the valueATTACHMENT_UNUSED, theVkFormatofpDepthStencilResolveAttachmenthas both depth and stencil components,VkPhysicalDeviceDepthStencilResolveProperties::independentResolveisFALSEandVkPhysicalDeviceDepthStencilResolveProperties::independentResolveNoneisTRUE, then the values ofdepthResolveModeandstencilResolveModemust be identical or one of them must beRESOLVE_MODE_NONE
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE- If
pDepthStencilResolveAttachmentis notNULL,pDepthStencilResolveAttachmentmust be a valid pointer to a validVkAttachmentReference2structure
See Also
Layout
struct VkSubpassDescriptionDepthStencilResolve { VkStructureTypesType(); void const *pNext(); VkResolveModeFlagBitsdepthResolveMode(); VkResolveModeFlagBitsstencilResolveMode();VkAttachmentReference2const *pDepthStencilResolveAttachment(); }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkSubpassDescriptionDepthStencilResolve.BufferAn array ofVkSubpassDescriptionDepthStencilResolvestructs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intDEPTHRESOLVEMODE
PDEPTHSTENCILRESOLVEATTACHMENT
PNEXTThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSTENCILRESOLVEMODE
STYPEThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkSubpassDescriptionDepthStencilResolve(java.nio.ByteBuffer container)Creates aVkSubpassDescriptionDepthStencilResolveinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkSubpassDescriptionDepthStencilResolvecalloc()Returns a newVkSubpassDescriptionDepthStencilResolveinstance allocated withmemCalloc.static VkSubpassDescriptionDepthStencilResolve.Buffercalloc(int capacity)Returns a newVkSubpassDescriptionDepthStencilResolve.Bufferinstance allocated withmemCalloc.static VkSubpassDescriptionDepthStencilResolve.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkSubpassDescriptionDepthStencilResolve.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkSubpassDescriptionDepthStencilResolvecalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkSubpassDescriptionDepthStencilResolveinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkSubpassDescriptionDepthStencilResolvecreate()Returns a newVkSubpassDescriptionDepthStencilResolveinstance allocated withBufferUtils.static VkSubpassDescriptionDepthStencilResolve.Buffercreate(int capacity)Returns a newVkSubpassDescriptionDepthStencilResolve.Bufferinstance allocated withBufferUtils.static VkSubpassDescriptionDepthStencilResolvecreate(long address)Returns a newVkSubpassDescriptionDepthStencilResolveinstance for the specified memory address.static VkSubpassDescriptionDepthStencilResolve.Buffercreate(long address, int capacity)Create aVkSubpassDescriptionDepthStencilResolve.Bufferinstance at the specified memory.static VkSubpassDescriptionDepthStencilResolvecreateSafe(long address)static VkSubpassDescriptionDepthStencilResolve.BuffercreateSafe(long address, int capacity)intdepthResolveMode()aVkResolveModeFlagBitsvalue describing the depth resolve mode.VkSubpassDescriptionDepthStencilResolvedepthResolveMode(int value)Sets the specified value to thedepthResolveMode()field.static VkSubpassDescriptionDepthStencilResolvemalloc()Returns a newVkSubpassDescriptionDepthStencilResolveinstance allocated withmemAlloc.static VkSubpassDescriptionDepthStencilResolve.Buffermalloc(int capacity)Returns a newVkSubpassDescriptionDepthStencilResolve.Bufferinstance allocated withmemAlloc.static VkSubpassDescriptionDepthStencilResolve.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkSubpassDescriptionDepthStencilResolve.Bufferinstance allocated on the specifiedMemoryStack.static VkSubpassDescriptionDepthStencilResolvemalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkSubpassDescriptionDepthStencilResolveinstance allocated on the specifiedMemoryStack.static intndepthResolveMode(long struct)Unsafe version ofdepthResolveMode().static voidndepthResolveMode(long struct, int value)Unsafe version ofdepthResolveMode.static VkAttachmentReference2npDepthStencilResolveAttachment(long struct)Unsafe version ofpDepthStencilResolveAttachment().static voidnpDepthStencilResolveAttachment(long struct, VkAttachmentReference2 value)Unsafe version ofpDepthStencilResolveAttachment.static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static intnstencilResolveMode(long struct)Unsafe version ofstencilResolveMode().static voidnstencilResolveMode(long struct, int value)Unsafe version ofstencilResolveMode.static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.VkAttachmentReference2pDepthStencilResolveAttachment()NULLor a pointer to aVkAttachmentReference2structure defining the depth/stencil resolve attachment for this subpass and its layout.VkSubpassDescriptionDepthStencilResolvepDepthStencilResolveAttachment(VkAttachmentReference2 value)Sets the address of the specifiedVkAttachmentReference2to thepDepthStencilResolveAttachment()field.longpNext()NULLor a pointer to a structure extending this structure.VkSubpassDescriptionDepthStencilResolvepNext(long value)Sets the specified value to thepNext()field.VkSubpassDescriptionDepthStencilResolveset(int sType, long pNext, int depthResolveMode, int stencilResolveMode, VkAttachmentReference2 pDepthStencilResolveAttachment)Initializes this struct with the specified values.VkSubpassDescriptionDepthStencilResolveset(VkSubpassDescriptionDepthStencilResolve src)Copies the specified struct data to this struct.intsizeof()intstencilResolveMode()aVkResolveModeFlagBitsvalue describing the stencil resolve mode.VkSubpassDescriptionDepthStencilResolvestencilResolveMode(int value)Sets the specified value to thestencilResolveMode()field.intsType()the type of this structure.VkSubpassDescriptionDepthStencilResolvesType(int value)Sets the specified value to thesType()field.VkSubpassDescriptionDepthStencilResolvesType$Default()Sets theSTRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVEvalue to thesType()field.
-
-
-
Constructor Detail
-
VkSubpassDescriptionDepthStencilResolve
public VkSubpassDescriptionDepthStencilResolve(java.nio.ByteBuffer container)
Creates aVkSubpassDescriptionDepthStencilResolveinstance 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.
-
depthResolveMode
public int depthResolveMode()
aVkResolveModeFlagBitsvalue describing the depth resolve mode.
-
stencilResolveMode
public int stencilResolveMode()
aVkResolveModeFlagBitsvalue describing the stencil resolve mode.
-
pDepthStencilResolveAttachment
@Nullable public VkAttachmentReference2 pDepthStencilResolveAttachment()
NULLor a pointer to aVkAttachmentReference2structure defining the depth/stencil resolve attachment for this subpass and its layout.
-
sType
public VkSubpassDescriptionDepthStencilResolve sType(int value)
Sets the specified value to thesType()field.
-
sType$Default
public VkSubpassDescriptionDepthStencilResolve sType$Default()
Sets theSTRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVEvalue to thesType()field.
-
pNext
public VkSubpassDescriptionDepthStencilResolve pNext(long value)
Sets the specified value to thepNext()field.
-
depthResolveMode
public VkSubpassDescriptionDepthStencilResolve depthResolveMode(int value)
Sets the specified value to thedepthResolveMode()field.
-
stencilResolveMode
public VkSubpassDescriptionDepthStencilResolve stencilResolveMode(int value)
Sets the specified value to thestencilResolveMode()field.
-
pDepthStencilResolveAttachment
public VkSubpassDescriptionDepthStencilResolve pDepthStencilResolveAttachment(@Nullable VkAttachmentReference2 value)
Sets the address of the specifiedVkAttachmentReference2to thepDepthStencilResolveAttachment()field.
-
set
public VkSubpassDescriptionDepthStencilResolve set(int sType, long pNext, int depthResolveMode, int stencilResolveMode, @Nullable VkAttachmentReference2 pDepthStencilResolveAttachment)
Initializes this struct with the specified values.
-
set
public VkSubpassDescriptionDepthStencilResolve set(VkSubpassDescriptionDepthStencilResolve src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkSubpassDescriptionDepthStencilResolve malloc()
Returns a newVkSubpassDescriptionDepthStencilResolveinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkSubpassDescriptionDepthStencilResolve calloc()
Returns a newVkSubpassDescriptionDepthStencilResolveinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkSubpassDescriptionDepthStencilResolve create()
Returns a newVkSubpassDescriptionDepthStencilResolveinstance allocated withBufferUtils.
-
create
public static VkSubpassDescriptionDepthStencilResolve create(long address)
Returns a newVkSubpassDescriptionDepthStencilResolveinstance for the specified memory address.
-
createSafe
@Nullable public static VkSubpassDescriptionDepthStencilResolve createSafe(long address)
-
malloc
public static VkSubpassDescriptionDepthStencilResolve.Buffer malloc(int capacity)
Returns a newVkSubpassDescriptionDepthStencilResolve.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkSubpassDescriptionDepthStencilResolve.Buffer calloc(int capacity)
Returns a newVkSubpassDescriptionDepthStencilResolve.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkSubpassDescriptionDepthStencilResolve.Buffer create(int capacity)
Returns a newVkSubpassDescriptionDepthStencilResolve.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkSubpassDescriptionDepthStencilResolve.Buffer create(long address, int capacity)
Create aVkSubpassDescriptionDepthStencilResolve.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkSubpassDescriptionDepthStencilResolve.Buffer createSafe(long address, int capacity)
-
malloc
public static VkSubpassDescriptionDepthStencilResolve malloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkSubpassDescriptionDepthStencilResolveinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkSubpassDescriptionDepthStencilResolve calloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkSubpassDescriptionDepthStencilResolveinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkSubpassDescriptionDepthStencilResolve.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkSubpassDescriptionDepthStencilResolve.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
calloc
public static VkSubpassDescriptionDepthStencilResolve.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkSubpassDescriptionDepthStencilResolve.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().
-
ndepthResolveMode
public static int ndepthResolveMode(long struct)
Unsafe version ofdepthResolveMode().
-
nstencilResolveMode
public static int nstencilResolveMode(long struct)
Unsafe version ofstencilResolveMode().
-
npDepthStencilResolveAttachment
@Nullable public static VkAttachmentReference2 npDepthStencilResolveAttachment(long struct)
Unsafe version ofpDepthStencilResolveAttachment().
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
ndepthResolveMode
public static void ndepthResolveMode(long struct, int value)Unsafe version ofdepthResolveMode.
-
nstencilResolveMode
public static void nstencilResolveMode(long struct, int value)Unsafe version ofstencilResolveMode.
-
npDepthStencilResolveAttachment
public static void npDepthStencilResolveAttachment(long struct, @Nullable VkAttachmentReference2 value)Unsafe version ofpDepthStencilResolveAttachment.
-
-