Class VulkanLWJGLCommandBuffer
java.lang.Object
com.io7m.jcoronado.lwjgl.internal.VulkanLWJGLCommandBuffer
- All Implemented Interfaces:
VulkanCommandBufferType
,VulkanHandleDispatchableType
,VulkanHandleType
,AutoCloseable
LWJGL
VulkanCommandBufferType
.-
Method Summary
Modifier and TypeMethodDescriptionvoid
Begin a command buffer.void
beginQuery
(VulkanQueryPoolType pool, int query, Set<VulkanQueryControlFlag> flags) Begin a query.void
beginRenderPass
(VulkanRenderPassBeginInfo info, VulkanSubpassContents contents) Specify how commands in the first subpass of a render pass are provided.void
bindDescriptorSets
(VulkanPipelineBindPoint pipeline_bind_point, VulkanPipelineLayoutType layout, int first_set, List<VulkanDescriptorSetType> descriptor_sets, List<Integer> dynamic_offsets) Bind descriptor sets to a command buffer.void
bindIndexBuffer
(VulkanBufferType indexBuffer, long offset, VulkanIndexType index_type) Bind index buffer to a command buffer.void
bindPipeline
(VulkanPipelineBindPoint bind_point, VulkanPipelineType pipeline) Bind a rendering pipeline.void
bindVertexBuffers
(int first_binding, int binding_count, List<VulkanBufferType> buffers, List<Long> offsets) Bind vertex buffers to a command buffer.void
blitImage
(VulkanImageType source_image, VulkanImageLayout source_image_layout, VulkanImageType target_image, VulkanImageLayout target_image_layout, List<VulkanImageBlit> regions, VulkanFilter filter) Copy regions of an image, potentially performing format conversion.protected final void
void
clearAttachments
(List<VulkanClearAttachment> attachments, List<VulkanClearRectangle> rectangles) Clear regions within bound framebuffer attachments.void
clearColorImage
(VulkanImageType image, VulkanImageLayout image_layout, VulkanClearValueType.VulkanClearValueColorType color, List<VulkanImageSubresourceRange> ranges) Clear regions of a color image.void
clearDepthStencilImage
(VulkanImageType image, VulkanImageLayout image_layout, VulkanClearValueDepthStencil depth_stencil, List<VulkanImageSubresourceRange> ranges) Clear regions of a depth stencil image.final void
close()
Destroy the object.protected void
void
copyBuffer
(VulkanBufferType source, VulkanBufferType target, List<VulkanBufferCopy> regions) Copy data between buffer regions.void
copyBufferToImage
(VulkanBufferType source_buffer, VulkanImageType target_image, VulkanImageLayout target_image_layout, List<VulkanBufferImageCopy> regions) Copy data from a buffer to an image.void
copyImage
(VulkanImageType source_image, VulkanImageLayout source_image_layout, VulkanImageType target_image, VulkanImageLayout target_image_layout, List<VulkanImageCopy> regions) Copy regions of an image, potentially performing format conversion.void
copyImageToBuffer
(VulkanImageType source_image, VulkanImageLayout source_layout, VulkanBufferType target_buffer, List<VulkanBufferImageCopy> regions) Copy data from an image to a buffer.void
dispatch
(int group_count_x, int group_count_y, int group_count_z) Dispatch compute work items.void
draw
(int vertex_count, int instance_count, int first_vertex, int first_instance) Draw primitives.void
drawIndexed
(int vertex_count, int instance_count, int first_vertex, int vertex_offset, int first_instance) Draw primitives using an index buffer.void
drawIndexedIndirect
(VulkanBufferType indirectBuffer, long offset, int draw_count, int stride) Draw primitives indirectly.void
drawIndirect
(VulkanBufferType indirectBuffer, long offset, int draw_count, int stride) Draw primitives indirectly.void
End a command buffer.void
endQuery
(VulkanQueryPoolType pool, int query) End a query.void
End a render pass.final boolean
void
executeCommands
(List<VulkanCommandBufferType> commandBuffers) Execute a secondary command buffer from a primary command buffer.void
fillBuffer
(VulkanBufferType outputBuffer, long offset, long size, int data) Fill a region of a buffer with a fixed value.final long
handle()
final int
hashCode()
final boolean
isClosed()
protected org.slf4j.Logger
logger()
void
nextSubpass
(VulkanSubpassContents contents) Transition to the next subpass of a render pass.void
pipelineBarrier
(Set<VulkanPipelineStageFlag> source_stage_mask, Set<VulkanPipelineStageFlag> target_stage_mask, Set<VulkanDependencyFlag> dependency_flags, List<VulkanMemoryBarrier> memory_barriers, List<VulkanBufferMemoryBarrier> buffer_memory_barriers, List<VulkanImageMemoryBarrier> image_memory_barriers) Insert a memory dependency.void
reset
(Set<VulkanCommandBufferResetFlag> flags) Reset a command buffer to the initial state.void
resetEvent
(VulkanEventType event, Set<VulkanPipelineStageFlag> mask) Reset an event object to non-signaled state.void
resetQueryPool
(VulkanQueryPoolType pool, int first_query, int query_count) Reset a query pool.void
setBlendConstants
(VulkanBlendConstants constants) Set the values of blend constants.void
setDepthBias
(float depth_bias_constant_factor, float depth_bias_clamp, float depth_bias_slope_factor) Set the depth bias dynamic state.void
setDepthBounds
(float min_depth_bounds, float max_depth_bounds) Set the depth bounds test values for a command buffer.void
setEvent
(VulkanEventType event, Set<VulkanPipelineStageFlag> mask) Set an event object to signaled state.void
setLineWidth
(float width) Set the dynamic line width state.void
setScissor
(int first_scissor, List<VulkanRectangle2D> rectangles) Set the dynamic scissor rectangles on a command buffer.void
setStencilCompareMask
(Set<VulkanStencilFaceFlag> face_mask, int mask) Set the stencil compare mask.void
setStencilReference
(Set<VulkanStencilFaceFlag> face_mask, int reference) Set the stencil reference.void
setStencilWriteMask
(Set<VulkanStencilFaceFlag> face_mask, int mask) Set the stencil write mask.void
setViewport
(int first_viewport, List<VulkanViewport> viewports) Set the viewport on a command buffer.final String
toString()
void
waitEvents
(List<VulkanEventType> events, Set<VulkanPipelineStageFlag> source_stage_mask, Set<VulkanPipelineStageFlag> target_stage_mask, List<VulkanMemoryBarrier> memory_barriers, List<VulkanBufferMemoryBarrier> buffer_memory_barriers, List<VulkanImageMemoryBarrier> image_memory_barriers) Wait for one or more events and insert a set of memory barriers.void
writeTimestamp
(VulkanPipelineStageFlag stage, VulkanQueryPoolType pool, int query_index) Write a device timestamp into a query object.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.io7m.jcoronado.api.VulkanCommandBufferType
beginCommandBuffer, beginCommandBuffer, blitImage, clearAttachments, clearAttachments, clearAttachments, copyImage
Methods inherited from interface com.io7m.jcoronado.api.VulkanHandleType
close, isClosed
-
Method Details
-
logger
protected org.slf4j.Logger logger() -
closeActual
protected void closeActual() -
beginCommandBuffer
Description copied from interface:VulkanCommandBufferType
Begin a command buffer.- Specified by:
beginCommandBuffer
in interfaceVulkanCommandBufferType
- Parameters:
info
- The begin info- Throws:
VulkanException
- On errors
-
beginQuery
public void beginQuery(VulkanQueryPoolType pool, int query, Set<VulkanQueryControlFlag> flags) throws VulkanException Description copied from interface:VulkanCommandBufferType
Begin a query.- Specified by:
beginQuery
in interfaceVulkanCommandBufferType
- Parameters:
pool
- The query poolquery
- The query indexflags
- Control flags for the query- Throws:
VulkanException
- On errors
-
endQuery
Description copied from interface:VulkanCommandBufferType
End a query.- Specified by:
endQuery
in interfaceVulkanCommandBufferType
- Parameters:
pool
- The query poolquery
- The query index- Throws:
VulkanException
- On errors
-
beginRenderPass
public void beginRenderPass(VulkanRenderPassBeginInfo info, VulkanSubpassContents contents) throws VulkanException Description copied from interface:VulkanCommandBufferType
Specify how commands in the first subpass of a render pass are provided.- Specified by:
beginRenderPass
in interfaceVulkanCommandBufferType
- Parameters:
info
- The begin infocontents
- Specifies how the commands in the first subpass will be provided.- Throws:
VulkanException
- On errors
-
bindPipeline
public void bindPipeline(VulkanPipelineBindPoint bind_point, VulkanPipelineType pipeline) throws VulkanException Description copied from interface:VulkanCommandBufferType
Bind a rendering pipeline.- Specified by:
bindPipeline
in interfaceVulkanCommandBufferType
- Parameters:
bind_point
- The bind pointpipeline
- The pipeline- Throws:
VulkanException
- On errors
-
bindVertexBuffers
public void bindVertexBuffers(int first_binding, int binding_count, List<VulkanBufferType> buffers, List<Long> offsets) throws VulkanException Description copied from interface:VulkanCommandBufferType
Bind vertex buffers to a command buffer.- Specified by:
bindVertexBuffers
in interfaceVulkanCommandBufferType
- Parameters:
first_binding
- The index of the first vertex input binding whose state is updated by the commandbinding_count
- The number of vertex input bindings whose state is updated by the commandbuffers
- An array of buffer handlesoffsets
- An array of buffer offsets- Throws:
VulkanException
- On errors
-
bindIndexBuffer
public void bindIndexBuffer(VulkanBufferType indexBuffer, long offset, VulkanIndexType index_type) throws VulkanException Description copied from interface:VulkanCommandBufferType
Bind index buffer to a command buffer.- Specified by:
bindIndexBuffer
in interfaceVulkanCommandBufferType
- Parameters:
indexBuffer
- The index bufferoffset
- The starting offset in bytes within buffer used in index buffer address calculationsindex_type
- The type of indices- Throws:
VulkanException
- On errors
-
bindDescriptorSets
public void bindDescriptorSets(VulkanPipelineBindPoint pipeline_bind_point, VulkanPipelineLayoutType layout, int first_set, List<VulkanDescriptorSetType> descriptor_sets, List<Integer> dynamic_offsets) throws VulkanException Description copied from interface:VulkanCommandBufferType
Bind descriptor sets to a command buffer.- Specified by:
bindDescriptorSets
in interfaceVulkanCommandBufferType
- Parameters:
pipeline_bind_point
- The pipeline bind pointlayout
- The pipeline layoutfirst_set
- The set number of the first descriptor set to be bounddescriptor_sets
- The descriptor setsdynamic_offsets
- An array of dynamic offsets- Throws:
VulkanException
- On errors
-
blitImage
public void blitImage(VulkanImageType source_image, VulkanImageLayout source_image_layout, VulkanImageType target_image, VulkanImageLayout target_image_layout, List<VulkanImageBlit> regions, VulkanFilter filter) throws VulkanException Description copied from interface:VulkanCommandBufferType
Copy regions of an image, potentially performing format conversion.- Specified by:
blitImage
in interfaceVulkanCommandBufferType
- Parameters:
source_image
- The source imagesource_image_layout
- The layout of the source imagetarget_image
- The target imagetarget_image_layout
- The target image layoutregions
- The regions that will be used to blitfilter
- The filter to apply if the blits require scaling- Throws:
VulkanException
- On errors
-
copyImage
public void copyImage(VulkanImageType source_image, VulkanImageLayout source_image_layout, VulkanImageType target_image, VulkanImageLayout target_image_layout, List<VulkanImageCopy> regions) throws VulkanException Description copied from interface:VulkanCommandBufferType
Copy regions of an image, potentially performing format conversion.- Specified by:
copyImage
in interfaceVulkanCommandBufferType
- Parameters:
source_image
- The source imagesource_image_layout
- The layout of the source imagetarget_image
- The target imagetarget_image_layout
- The target image layoutregions
- The regions that will be used to copy- Throws:
VulkanException
- On errors
-
clearAttachments
public void clearAttachments(List<VulkanClearAttachment> attachments, List<VulkanClearRectangle> rectangles) throws VulkanException Description copied from interface:VulkanCommandBufferType
Clear regions within bound framebuffer attachments.- Specified by:
clearAttachments
in interfaceVulkanCommandBufferType
- Parameters:
attachments
- The attachments to clear and the clear values to userectangles
- An array of structures defining regions within each selected attachment to clear- Throws:
VulkanException
- On errors
-
clearColorImage
public void clearColorImage(VulkanImageType image, VulkanImageLayout image_layout, VulkanClearValueType.VulkanClearValueColorType color, List<VulkanImageSubresourceRange> ranges) throws VulkanException Description copied from interface:VulkanCommandBufferType
Clear regions of a color image.- Specified by:
clearColorImage
in interfaceVulkanCommandBufferType
- Parameters:
image
- The imageimage_layout
- The image layoutcolor
- The color valueranges
- The image subresource ranges- Throws:
VulkanException
- On errors
-
clearDepthStencilImage
public void clearDepthStencilImage(VulkanImageType image, VulkanImageLayout image_layout, VulkanClearValueDepthStencil depth_stencil, List<VulkanImageSubresourceRange> ranges) throws VulkanException Description copied from interface:VulkanCommandBufferType
Clear regions of a depth stencil image.- Specified by:
clearDepthStencilImage
in interfaceVulkanCommandBufferType
- Parameters:
image
- The imageimage_layout
- The image layoutdepth_stencil
- The depth stencil valueranges
- The image subresource ranges- Throws:
VulkanException
- On errors
-
dispatch
public void dispatch(int group_count_x, int group_count_y, int group_count_z) Description copied from interface:VulkanCommandBufferType
Dispatch compute work items.- Specified by:
dispatch
in interfaceVulkanCommandBufferType
- Parameters:
group_count_x
- The number of local workgroups to dispatch in the X dimension.group_count_y
- The number of local workgroups to dispatch in the Y dimension.group_count_z
- The number of local workgroups to dispatch in the Z dimension.
-
copyBuffer
public void copyBuffer(VulkanBufferType source, VulkanBufferType target, List<VulkanBufferCopy> regions) throws VulkanException Description copied from interface:VulkanCommandBufferType
Copy data between buffer regions.- Specified by:
copyBuffer
in interfaceVulkanCommandBufferType
- Parameters:
source
- The source buffertarget
- The target bufferregions
- The list of regions to be copied- Throws:
VulkanException
- On errors
-
copyImageToBuffer
public void copyImageToBuffer(VulkanImageType source_image, VulkanImageLayout source_layout, VulkanBufferType target_buffer, List<VulkanBufferImageCopy> regions) throws VulkanException Description copied from interface:VulkanCommandBufferType
Copy data from an image to a buffer.- Specified by:
copyImageToBuffer
in interfaceVulkanCommandBufferType
- Parameters:
source_image
- The source imagesource_layout
- The source layouttarget_buffer
- The target bufferregions
- The list of regions to be copied- Throws:
VulkanException
- On errors
-
copyBufferToImage
public void copyBufferToImage(VulkanBufferType source_buffer, VulkanImageType target_image, VulkanImageLayout target_image_layout, List<VulkanBufferImageCopy> regions) throws VulkanException Description copied from interface:VulkanCommandBufferType
Copy data from a buffer to an image.- Specified by:
copyBufferToImage
in interfaceVulkanCommandBufferType
- Parameters:
source_buffer
- The source buffertarget_image
- The target imagetarget_image_layout
- The target image layoutregions
- The list of regions to be copied- Throws:
VulkanException
- On errors
-
draw
public void draw(int vertex_count, int instance_count, int first_vertex, int first_instance) throws VulkanDestroyedException Description copied from interface:VulkanCommandBufferType
Draw primitives.- Specified by:
draw
in interfaceVulkanCommandBufferType
- Parameters:
vertex_count
- The number of vertices to draw.instance_count
- The number of instances to draw.first_vertex
- The index of the first vertex to draw.first_instance
- The instance ID of the first instance to draw.- Throws:
VulkanDestroyedException
-
drawIndexed
public void drawIndexed(int vertex_count, int instance_count, int first_vertex, int vertex_offset, int first_instance) throws VulkanDestroyedException Description copied from interface:VulkanCommandBufferType
Draw primitives using an index buffer.- Specified by:
drawIndexed
in interfaceVulkanCommandBufferType
- Parameters:
vertex_count
- The number of vertices to draw.instance_count
- The number of instances to draw.first_vertex
- The index of the first vertex to draw.vertex_offset
- The value added to the vertex index before indexing into the vertex buffer.first_instance
- The instance ID of the first instance to draw.- Throws:
VulkanDestroyedException
-
drawIndirect
public void drawIndirect(VulkanBufferType indirectBuffer, long offset, int draw_count, int stride) throws VulkanException Description copied from interface:VulkanCommandBufferType
Draw primitives indirectly.- Specified by:
drawIndirect
in interfaceVulkanCommandBufferType
- Parameters:
indirectBuffer
- The buffer containing draw parameters.offset
- The byte offset into buffer where parameters begin.draw_count
- The number of draws to execute, and can be zero.stride
- The byte stride between successive sets of draw parameters.- Throws:
VulkanException
- On errors
-
drawIndexedIndirect
public void drawIndexedIndirect(VulkanBufferType indirectBuffer, long offset, int draw_count, int stride) throws VulkanException Description copied from interface:VulkanCommandBufferType
Draw primitives indirectly.- Specified by:
drawIndexedIndirect
in interfaceVulkanCommandBufferType
- Parameters:
indirectBuffer
- The buffer containing draw parameters.offset
- The byte offset into buffer where parameters begin.draw_count
- The number of draws to execute, and can be zero.stride
- The byte stride between successive sets of draw parameters.- Throws:
VulkanException
- On errors
-
executeCommands
Description copied from interface:VulkanCommandBufferType
Execute a secondary command buffer from a primary command buffer.- Specified by:
executeCommands
in interfaceVulkanCommandBufferType
- Parameters:
commandBuffers
- The buffers to be executed- Throws:
VulkanException
- On errors
-
fillBuffer
public void fillBuffer(VulkanBufferType outputBuffer, long offset, long size, int data) throws VulkanException Description copied from interface:VulkanCommandBufferType
Fill a region of a buffer with a fixed value.- Specified by:
fillBuffer
in interfaceVulkanCommandBufferType
- Parameters:
outputBuffer
- The buffer to be filled.offset
- The byte offset into the buffer at which to start filling, and must be a multiple of 4.size
- The number of bytes to fill, and must be either a multiple of 4, or VK_WHOLE_SIZE to fill the range from offset to the end of the buffer. If VK_WHOLE_SIZE is used and the remaining size of the buffer is not a multiple of 4, then the nearest smaller multiple is used.data
- The 4-byte word written repeatedly to the buffer to fill size bytes of data. The data word is written to memory according to the host endianness.- Throws:
VulkanException
- On errors
-
endRenderPass
Description copied from interface:VulkanCommandBufferType
End a render pass.- Specified by:
endRenderPass
in interfaceVulkanCommandBufferType
- Throws:
VulkanDestroyedException
-
pipelineBarrier
public void pipelineBarrier(Set<VulkanPipelineStageFlag> source_stage_mask, Set<VulkanPipelineStageFlag> target_stage_mask, Set<VulkanDependencyFlag> dependency_flags, List<VulkanMemoryBarrier> memory_barriers, List<VulkanBufferMemoryBarrier> buffer_memory_barriers, List<VulkanImageMemoryBarrier> image_memory_barriers) throws VulkanException Description copied from interface:VulkanCommandBufferType
Insert a memory dependency.- Specified by:
pipelineBarrier
in interfaceVulkanCommandBufferType
- Parameters:
source_stage_mask
- The source stage masktarget_stage_mask
- The target state maskdependency_flags
- Flags specifying how execution and memory dependencies are formed.memory_barriers
- A list of memory barriersbuffer_memory_barriers
- A list of buffer memory barriersimage_memory_barriers
- A list of image memory barriers- Throws:
VulkanException
- On errors
-
nextSubpass
Description copied from interface:VulkanCommandBufferType
Transition to the next subpass of a render pass.- Specified by:
nextSubpass
in interfaceVulkanCommandBufferType
- Parameters:
contents
- Specifies how the commands in the next subpass will be provided, in the same fashion as the corresponding parameter of vkCmdBeginRenderPass.- Throws:
VulkanException
- On errors
-
setLineWidth
Description copied from interface:VulkanCommandBufferType
Set the dynamic line width state.- Specified by:
setLineWidth
in interfaceVulkanCommandBufferType
- Parameters:
width
- The width of rasterized line segments.- Throws:
VulkanException
- On errors
-
setDepthBias
public void setDepthBias(float depth_bias_constant_factor, float depth_bias_clamp, float depth_bias_slope_factor) throws VulkanException Description copied from interface:VulkanCommandBufferType
Set the depth bias dynamic state.- Specified by:
setDepthBias
in interfaceVulkanCommandBufferType
- Parameters:
depth_bias_constant_factor
- A scalar factor controlling the constant depth value added to each fragment.depth_bias_clamp
- The maximum (or minimum) depth bias of a fragment.depth_bias_slope_factor
- A scalar factor applied to a fragment’s slope in depth bias calculations.- Throws:
VulkanException
- On errors
-
setDepthBounds
Description copied from interface:VulkanCommandBufferType
Set the depth bounds test values for a command buffer.- Specified by:
setDepthBounds
in interfaceVulkanCommandBufferType
- Parameters:
min_depth_bounds
- The lower bound of the range of depth values used in the depth bounds test.max_depth_bounds
- The upper bound of the range of depth values used in the depth bounds test.- Throws:
VulkanException
- On errors
-
setBlendConstants
Description copied from interface:VulkanCommandBufferType
Set the values of blend constants.- Specified by:
setBlendConstants
in interfaceVulkanCommandBufferType
- Parameters:
constants
- The R, G, B, and A components of the blend constant color used in blending, depending on the blend factor.- Throws:
VulkanException
- On errors
-
setStencilReference
public void setStencilReference(Set<VulkanStencilFaceFlag> face_mask, int reference) throws VulkanException Description copied from interface:VulkanCommandBufferType
Set the stencil reference.- Specified by:
setStencilReference
in interfaceVulkanCommandBufferType
- Parameters:
face_mask
- A set of flags specifying the set of stencil state for which to update the reference value.reference
- The new value to use as the stencil reference value.- Throws:
VulkanException
- On errors
-
setStencilCompareMask
public void setStencilCompareMask(Set<VulkanStencilFaceFlag> face_mask, int mask) throws VulkanException Description copied from interface:VulkanCommandBufferType
Set the stencil compare mask.- Specified by:
setStencilCompareMask
in interfaceVulkanCommandBufferType
- Parameters:
face_mask
- A set of flags specifying the set of stencil state for which to update the reference value.mask
- The new value to use as the stencil compare mask value.- Throws:
VulkanException
- On errors
-
setStencilWriteMask
public void setStencilWriteMask(Set<VulkanStencilFaceFlag> face_mask, int mask) throws VulkanException Description copied from interface:VulkanCommandBufferType
Set the stencil write mask.- Specified by:
setStencilWriteMask
in interfaceVulkanCommandBufferType
- Parameters:
face_mask
- A set of flags specifying the set of stencil state for which to update the reference value.mask
- The new value to use as the stencil write mask value.- Throws:
VulkanException
- On errors
-
setScissor
public void setScissor(int first_scissor, List<VulkanRectangle2D> rectangles) throws VulkanException Description copied from interface:VulkanCommandBufferType
Set the dynamic scissor rectangles on a command buffer.- Specified by:
setScissor
in interfaceVulkanCommandBufferType
- Parameters:
first_scissor
- The index of the first scissor whose state is updated by the command.rectangles
- An array of structures defining scissor rectangles.- Throws:
VulkanException
- On errors
-
setViewport
Description copied from interface:VulkanCommandBufferType
Set the viewport on a command buffer.- Specified by:
setViewport
in interfaceVulkanCommandBufferType
- Parameters:
first_viewport
- The index of the first viewport whose state is updated by the command.viewports
- An array of structures defining viewport rectangles.- Throws:
VulkanException
- On errors
-
setEvent
public void setEvent(VulkanEventType event, Set<VulkanPipelineStageFlag> mask) throws VulkanException Description copied from interface:VulkanCommandBufferType
Set an event object to signaled state.- Specified by:
setEvent
in interfaceVulkanCommandBufferType
- Parameters:
event
- The eventmask
- The source stage mask used to determine when the event is signaled.- Throws:
VulkanException
- On errors
-
resetEvent
public void resetEvent(VulkanEventType event, Set<VulkanPipelineStageFlag> mask) throws VulkanException Description copied from interface:VulkanCommandBufferType
Reset an event object to non-signaled state.- Specified by:
resetEvent
in interfaceVulkanCommandBufferType
- Parameters:
event
- The eventmask
- The source stage mask used to determine when the event is signaled.- Throws:
VulkanException
- On errors
-
resetQueryPool
public void resetQueryPool(VulkanQueryPoolType pool, int first_query, int query_count) throws VulkanException Description copied from interface:VulkanCommandBufferType
Reset a query pool.- Specified by:
resetQueryPool
in interfaceVulkanCommandBufferType
- Parameters:
pool
- The query poolfirst_query
- The initial query index to resetquery_count
- The number of queries to reset- Throws:
VulkanException
- On errors
-
endCommandBuffer
Description copied from interface:VulkanCommandBufferType
End a command buffer.- Specified by:
endCommandBuffer
in interfaceVulkanCommandBufferType
- Throws:
VulkanException
- On errors
-
writeTimestamp
public void writeTimestamp(VulkanPipelineStageFlag stage, VulkanQueryPoolType pool, int query_index) throws VulkanException Description copied from interface:VulkanCommandBufferType
Write a device timestamp into a query object.- Specified by:
writeTimestamp
in interfaceVulkanCommandBufferType
- Parameters:
stage
- The stage of the pipelinepool
- The query poolquery_index
- The query index- Throws:
VulkanException
- On errors
-
waitEvents
public void waitEvents(List<VulkanEventType> events, Set<VulkanPipelineStageFlag> source_stage_mask, Set<VulkanPipelineStageFlag> target_stage_mask, List<VulkanMemoryBarrier> memory_barriers, List<VulkanBufferMemoryBarrier> buffer_memory_barriers, List<VulkanImageMemoryBarrier> image_memory_barriers) throws VulkanException Description copied from interface:VulkanCommandBufferType
Wait for one or more events and insert a set of memory barriers.- Specified by:
waitEvents
in interfaceVulkanCommandBufferType
- Parameters:
events
- The events upon which to waitsource_stage_mask
- The source stage masktarget_stage_mask
- The target state maskmemory_barriers
- A list of memory barriersbuffer_memory_barriers
- A list of buffer memory barriersimage_memory_barriers
- A list of image memory barriers- Throws:
VulkanException
- On errors
-
reset
Description copied from interface:VulkanCommandBufferType
Reset a command buffer to the initial state.- Specified by:
reset
in interfaceVulkanCommandBufferType
- Parameters:
flags
- The flags- Throws:
VulkanException
- On errors
-
hostAllocatorProxy
- Returns:
- The underlying host allocator proxy
-
isClosed
public final boolean isClosed()- Specified by:
isClosed
in interfaceVulkanHandleType
- Returns:
true
iff the handle has been destroyed withVulkanHandleType.close()
- See Also:
-
close
public final void close()Description copied from interface:VulkanHandleType
Destroy the object.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceVulkanHandleType
-
equals
-
hashCode
-
toString
-
handle
public final long handle()- Returns:
- The raw handle
-
checkNotClosed
- Throws:
VulkanDestroyedException
-