-
- All Superinterfaces:
java.lang.AutoCloseable
,VulkanHandleDispatchableType
,VulkanHandleType
- All Known Implementing Classes:
VulkanLWJGLLogicalDevice
public interface VulkanLogicalDeviceType extends VulkanHandleDispatchableType
A reference to a logical Vulkan device.- See Also:
- "VkDevice"
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
VulkanLogicalDeviceType.VulkanEventStatus
The status of an event.static class
VulkanLogicalDeviceType.VulkanFenceStatus
The status of an event.static class
VulkanLogicalDeviceType.VulkanPipelineCacheDataResult
The result of fetching data for a pipeline cache.static class
VulkanLogicalDeviceType.VulkanWaitStatus
The result of waiting.
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description java.util.List<VulkanDescriptorSetType>
allocateDescriptorSets(VulkanDescriptorSetAllocateInfo info)
Allocate descriptor sets.VulkanDeviceMemoryType
allocateMemory(VulkanMemoryAllocateInfo info)
Allocate device memory.void
bindBufferMemory(VulkanBufferType buffer, VulkanDeviceMemoryType device_memory, long offset)
Bind device memory to a buffer object.void
bindImageMemory(VulkanImageType image, VulkanDeviceMemoryType device_memory, long offset)
Bind device memory to a image object.void
close()
Destroy the object.VulkanBufferType
createBuffer(VulkanBufferCreateInfo create_info)
Create a buffer.VulkanBufferViewType
createBufferView(VulkanBufferViewCreateInfo info)
Create an buffer view.default VulkanCommandBufferType
createCommandBuffer(VulkanCommandPoolType pool, VulkanCommandBufferLevel level)
Create a command buffer.java.util.List<VulkanCommandBufferType>
createCommandBuffers(VulkanCommandBufferCreateInfo create_info)
Create a command buffer.VulkanCommandPoolType
createCommandPool(VulkanCommandPoolCreateInfo create_info)
Create a command pool.default VulkanPipelineType
createComputePipeline(VulkanComputePipelineCreateInfo pipeline_info)
Create a compute pipeline.default VulkanPipelineType
createComputePipeline(VulkanPipelineCacheType cache, VulkanComputePipelineCreateInfo pipeline_info)
Create a compute pipeline.default VulkanPipelineType
createComputePipeline(java.util.Optional<VulkanPipelineCacheType> pipeline_cache, VulkanComputePipelineCreateInfo pipeline_info)
Create a compute pipeline.default java.util.List<VulkanPipelineType>
createComputePipelines(VulkanPipelineCacheType pipeline_cache, java.util.List<VulkanComputePipelineCreateInfo> pipeline_infos)
Create a set of compute pipelines.default java.util.List<VulkanPipelineType>
createComputePipelines(java.util.List<VulkanComputePipelineCreateInfo> pipeline_infos)
Create a set of compute pipelines.java.util.List<VulkanPipelineType>
createComputePipelines(java.util.Optional<VulkanPipelineCacheType> pipeline_cache, java.util.List<VulkanComputePipelineCreateInfo> pipeline_infos)
Create a set of compute pipelines.VulkanDescriptorPoolType
createDescriptorPool(VulkanDescriptorPoolCreateInfo info)
Create a descriptor pool.VulkanDescriptorSetLayoutType
createDescriptorSetLayout(VulkanDescriptorSetLayoutCreateInfo info)
Create a descriptor set layout.VulkanEventType
createEvent(VulkanEventCreateInfo create_info)
Create an event.VulkanFenceType
createFence(VulkanFenceCreateInfo create_info)
Create a fence.VulkanFramebufferType
createFramebuffer(VulkanFramebufferCreateInfo create_info)
Create a framebuffer.default VulkanPipelineType
createGraphicsPipeline(VulkanGraphicsPipelineCreateInfo pipeline_info)
Create a graphics pipeline.default VulkanPipelineType
createGraphicsPipeline(VulkanPipelineCacheType cache, VulkanGraphicsPipelineCreateInfo pipeline_info)
Create a graphics pipeline.default VulkanPipelineType
createGraphicsPipeline(java.util.Optional<VulkanPipelineCacheType> pipeline_cache, VulkanGraphicsPipelineCreateInfo pipeline_info)
Create a graphics pipeline.default java.util.List<VulkanPipelineType>
createGraphicsPipelines(VulkanPipelineCacheType pipeline_cache, java.util.List<VulkanGraphicsPipelineCreateInfo> pipeline_infos)
Create a set of graphics pipelines.default java.util.List<VulkanPipelineType>
createGraphicsPipelines(java.util.List<VulkanGraphicsPipelineCreateInfo> pipeline_infos)
Create a set of graphics pipelines.java.util.List<VulkanPipelineType>
createGraphicsPipelines(java.util.Optional<VulkanPipelineCacheType> pipeline_cache, java.util.List<VulkanGraphicsPipelineCreateInfo> pipeline_infos)
Create a set of graphics pipelines.VulkanImageType
createImage(VulkanImageCreateInfo create_info)
Create an image.VulkanImageViewType
createImageView(VulkanImageViewCreateInfo info)
Create an image view.VulkanPipelineCacheType
createPipelineCache(VulkanPipelineCacheCreateInfo pipeline_info)
Create a pipeline cache.VulkanPipelineLayoutType
createPipelineLayout(VulkanPipelineLayoutCreateInfo info)
Create a pipeline layout.VulkanQueryPoolType
createQueryPool(VulkanQueryPoolCreateInfo create_info)
Create a query pool.VulkanRenderPassType
createRenderPass(VulkanRenderPassCreateInfo render_pass_create_info)
Create a render pass.VulkanSamplerType
createSampler(VulkanSamplerCreateInfo create_info)
Create a sampler.VulkanSemaphoreType
createSemaphore(VulkanSemaphoreCreateInfo create_info)
Create a semaphore.VulkanShaderModuleType
createShaderModule(VulkanShaderModuleCreateInfo create_info)
Create a shader module.java.util.Map<java.lang.String,VulkanExtensionType>
enabledExtensions()
default <T extends VulkanExtensionType>
java.util.Optional<T>findEnabledExtension(java.lang.String name, java.lang.Class<T> clazz)
Find and cast an extension with a given name to the correct API type.default void
flushMappedMemoryRange(VulkanMappedMemoryRange range)
Flush mapped memory ranges.void
flushMappedMemoryRanges(java.util.List<VulkanMappedMemoryRange> ranges)
Flush mapped memory ranges.VulkanMemoryRequirements
getBufferMemoryRequirements(VulkanBufferType buffer)
Retrieve the memory requirements for the given buffer.VulkanLogicalDeviceType.VulkanEventStatus
getEventStatus(VulkanEventType event)
Retrieve the status of an event object.VulkanLogicalDeviceType.VulkanFenceStatus
getFenceStatus(VulkanFenceType fence)
Retrieve the status of a fence object.VulkanMemoryRequirements
getImageMemoryRequirements(VulkanImageType image)
Retrieve the memory requirements for the given image.VulkanSubresourceLayout
getImageSubresourceLayout(VulkanImageType image, VulkanImageSubresource image_subresource)
Retrieve information about an image subresource.VulkanLogicalDeviceType.VulkanPipelineCacheDataResult
getPipelineCacheData(VulkanPipelineCacheType pipeline_cache, java.nio.ByteBuffer data)
Retrieve the data store for the pipeline cache.long
getPipelineCacheDataSize(VulkanPipelineCacheType pipeline_cache)
Retrieve the size of the data store for the pipeline cache.VulkanMappedMemoryType
mapMemory(VulkanDeviceMemoryType memory, long offset, long size, java.util.Set<VulkanMemoryMapFlag> flags)
Map a memory object into the application address space.void
mergePipelineCaches(java.util.List<VulkanPipelineCacheType> caches, VulkanPipelineCacheType output)
Combine the data stores of pipeline caches.VulkanPhysicalDeviceType
physicalDevice()
default java.util.Optional<VulkanQueueType>
queue(int queue_family, int queue_index)
Find the queue with the given queue family and index.java.util.List<VulkanQueueType>
queues()
default void
resetCommandPool(VulkanCommandPoolType pool)
Reset the given command pool.void
resetCommandPool(VulkanCommandPoolType pool, java.util.Set<VulkanCommandPoolResetFlag> flags)
Reset the given command pool.default void
resetDescriptorPool(VulkanDescriptorPoolType pool)
Reset the given descriptor pool.void
resetDescriptorPool(VulkanDescriptorPoolType pool, java.util.Set<VulkanDescriptorPoolResetFlag> flags)
Reset the given descriptor pool.void
resetEvent(VulkanEventType event)
Reset an event object to non-signaled state.void
resetFences(java.util.List<VulkanFenceType> fences)
Reset the given fences.void
setEvent(VulkanEventType event)
Set an event object to signaled state.void
updateDescriptorSets(java.util.List<VulkanWriteDescriptorSet> descriptor_writes, java.util.List<VulkanCopyDescriptorSet> descriptor_copies)
Update the contents of a descriptor set object.default VulkanLogicalDeviceType.VulkanWaitStatus
waitForFence(VulkanFenceType fence, long timeout_nanos)
Wait for a fence to become signaled.VulkanLogicalDeviceType.VulkanWaitStatus
waitForFences(java.util.List<VulkanFenceType> fences, boolean wait_all, long timeout_nanos)
Wait for one or more fences to become signaled.void
waitIdle()
Wait for this device to become idle.-
Methods inherited from interface com.io7m.jcoronado.api.VulkanHandleType
isClosed
-
-
-
-
Method Detail
-
close
void close() throws VulkanException
Description copied from interface:VulkanHandleType
Destroy the object.- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfaceVulkanHandleType
- Throws:
VulkanException
- On errors
-
physicalDevice
VulkanPhysicalDeviceType physicalDevice()
- Returns:
- The physical device to which this logical device belongs
-
queues
java.util.List<VulkanQueueType> queues() throws VulkanException
- Returns:
- The queues present on the logical device
- Throws:
VulkanException
- On errors
-
queue
default java.util.Optional<VulkanQueueType> queue(int queue_family, int queue_index) throws VulkanException
Find the queue with the given queue family and index.- Parameters:
queue_family
- The queue familyqueue_index
- The queue index- Returns:
- The matching queue, if any
- Throws:
VulkanException
- On errors
-
enabledExtensions
java.util.Map<java.lang.String,VulkanExtensionType> enabledExtensions() throws VulkanException
- Returns:
- The enabled extensions for the instance
- Throws:
VulkanException
- On errors
-
createShaderModule
VulkanShaderModuleType createShaderModule(VulkanShaderModuleCreateInfo create_info) throws VulkanException
Create a shader module.- Parameters:
create_info
- The creation info- Returns:
- A shader module
- Throws:
VulkanException
- On errors
-
createSampler
VulkanSamplerType createSampler(VulkanSamplerCreateInfo create_info) throws VulkanException
Create a sampler.- Parameters:
create_info
- The creation info- Returns:
- A sampler
- Throws:
VulkanException
- On errors
-
createBufferView
VulkanBufferViewType createBufferView(VulkanBufferViewCreateInfo info) throws VulkanException
Create an buffer view.- Parameters:
info
- The buffer view creation info- Returns:
- An buffer view
- Throws:
VulkanException
- On errors
-
createImageView
VulkanImageViewType createImageView(VulkanImageViewCreateInfo info) throws VulkanException
Create an image view.- Parameters:
info
- The image view creation info- Returns:
- An image view
- Throws:
VulkanException
- On errors
-
findEnabledExtension
default <T extends VulkanExtensionType> java.util.Optional<T> findEnabledExtension(java.lang.String name, java.lang.Class<T> clazz) throws VulkanException
Find and cast an extension with a given name to the correct API type.- Type Parameters:
T
- The precise type- Parameters:
name
- The extension nameclazz
- The intended extension type- Returns:
- The extension with the correct type, or nothing if the extension either did not exist or did not have the right type
- Throws:
VulkanException
- On errors
-
flushMappedMemoryRanges
void flushMappedMemoryRanges(java.util.List<VulkanMappedMemoryRange> ranges) throws VulkanException
Flush mapped memory ranges.- Parameters:
ranges
- The ranges- Throws:
VulkanException
- On errors
-
flushMappedMemoryRange
default void flushMappedMemoryRange(VulkanMappedMemoryRange range) throws VulkanException
Flush mapped memory ranges.- Parameters:
range
- The range- Throws:
VulkanException
- On errors
-
createPipelineLayout
VulkanPipelineLayoutType createPipelineLayout(VulkanPipelineLayoutCreateInfo info) throws VulkanException
Create a pipeline layout.- Parameters:
info
- The pipeline layout creation info- Returns:
- A pipeline layout
- Throws:
VulkanException
- On errors
-
createDescriptorSetLayout
VulkanDescriptorSetLayoutType createDescriptorSetLayout(VulkanDescriptorSetLayoutCreateInfo info) throws VulkanException
Create a descriptor set layout.- Parameters:
info
- The descriptor set layout creation info- Returns:
- A descriptor set layout
- Throws:
VulkanException
- On errors
-
createDescriptorPool
VulkanDescriptorPoolType createDescriptorPool(VulkanDescriptorPoolCreateInfo info) throws VulkanException
Create a descriptor pool.- Parameters:
info
- The descriptor pool creation info- Returns:
- A descriptor pool
- Throws:
VulkanException
- On errors
-
allocateDescriptorSets
java.util.List<VulkanDescriptorSetType> allocateDescriptorSets(VulkanDescriptorSetAllocateInfo info) throws VulkanException
Allocate descriptor sets.- Parameters:
info
- The descriptor set allocation info- Returns:
- A list of descriptor sets
- Throws:
VulkanException
- On errors
-
updateDescriptorSets
void updateDescriptorSets(java.util.List<VulkanWriteDescriptorSet> descriptor_writes, java.util.List<VulkanCopyDescriptorSet> descriptor_copies) throws VulkanException
Update the contents of a descriptor set object.- Parameters:
descriptor_writes
- An array of VulkanWriteDescriptorSet structures describing the descriptor sets to write todescriptor_copies
- An array of VulkanCopyDescriptorSet structures describing the descriptor sets to copy between.- Throws:
VulkanException
- On errors
-
createRenderPass
VulkanRenderPassType createRenderPass(VulkanRenderPassCreateInfo render_pass_create_info) throws VulkanException
Create a render pass.- Parameters:
render_pass_create_info
- The render pass creation info- Returns:
- A render pass
- Throws:
VulkanException
- On errors
-
createGraphicsPipeline
default VulkanPipelineType createGraphicsPipeline(VulkanGraphicsPipelineCreateInfo pipeline_info) throws VulkanException
Create a graphics pipeline.- Parameters:
pipeline_info
- The pipeline creation info- Returns:
- A graphics pipeline
- Throws:
VulkanException
- On errors
-
createGraphicsPipeline
default VulkanPipelineType createGraphicsPipeline(VulkanPipelineCacheType cache, VulkanGraphicsPipelineCreateInfo pipeline_info) throws VulkanException
Create a graphics pipeline.- Parameters:
cache
- A pipeline cachepipeline_info
- The pipeline creation info- Returns:
- A graphics pipeline
- Throws:
VulkanException
- On errors
-
createGraphicsPipeline
default VulkanPipelineType createGraphicsPipeline(java.util.Optional<VulkanPipelineCacheType> pipeline_cache, VulkanGraphicsPipelineCreateInfo pipeline_info) throws VulkanException
Create a graphics pipeline.- Parameters:
pipeline_cache
- A pipeline cachepipeline_info
- The pipeline creation info- Returns:
- A graphics pipeline
- Throws:
VulkanException
- On errors
-
createPipelineCache
VulkanPipelineCacheType createPipelineCache(VulkanPipelineCacheCreateInfo pipeline_info) throws VulkanException
Create a pipeline cache.- Parameters:
pipeline_info
- The pipeline cache creation info- Returns:
- A pipeline cache
- Throws:
VulkanException
- On errors
-
getPipelineCacheDataSize
long getPipelineCacheDataSize(VulkanPipelineCacheType pipeline_cache) throws VulkanException
Retrieve the size of the data store for the pipeline cache.- Parameters:
pipeline_cache
- The pipeline cache- Returns:
- The size of the pipeline cache data
- Throws:
VulkanException
- On errors
-
getImageMemoryRequirements
VulkanMemoryRequirements getImageMemoryRequirements(VulkanImageType image) throws VulkanException
Retrieve the memory requirements for the given image.- Parameters:
image
- The image- Returns:
- The memory requirements
- Throws:
VulkanException
- On errors
-
getPipelineCacheData
VulkanLogicalDeviceType.VulkanPipelineCacheDataResult getPipelineCacheData(VulkanPipelineCacheType pipeline_cache, java.nio.ByteBuffer data) throws VulkanException
Retrieve the data store for the pipeline cache.- Parameters:
pipeline_cache
- The pipeline cachedata
- The buffer used to store the data- Returns:
- A value indicating the result of the retrieval
- Throws:
VulkanException
- On errors- See Also:
getPipelineCacheDataSize(VulkanPipelineCacheType)
-
createGraphicsPipelines
java.util.List<VulkanPipelineType> createGraphicsPipelines(java.util.Optional<VulkanPipelineCacheType> pipeline_cache, java.util.List<VulkanGraphicsPipelineCreateInfo> pipeline_infos) throws VulkanException
Create a set of graphics pipelines.- Parameters:
pipeline_cache
- A pipeline cachepipeline_infos
- The pipeline creation infos- Returns:
- A list of graphics pipelines
- Throws:
VulkanException
- On errors
-
createGraphicsPipelines
default java.util.List<VulkanPipelineType> createGraphicsPipelines(VulkanPipelineCacheType pipeline_cache, java.util.List<VulkanGraphicsPipelineCreateInfo> pipeline_infos) throws VulkanException
Create a set of graphics pipelines.- Parameters:
pipeline_cache
- A pipeline cachepipeline_infos
- The pipeline creation infos- Returns:
- A list of graphics pipelines
- Throws:
VulkanException
- On errors
-
createGraphicsPipelines
default java.util.List<VulkanPipelineType> createGraphicsPipelines(java.util.List<VulkanGraphicsPipelineCreateInfo> pipeline_infos) throws VulkanException
Create a set of graphics pipelines.- Parameters:
pipeline_infos
- The pipeline creation infos- Returns:
- A list of graphics pipelines
- Throws:
VulkanException
- On errors
-
createQueryPool
VulkanQueryPoolType createQueryPool(VulkanQueryPoolCreateInfo create_info) throws VulkanException
Create a query pool.- Parameters:
create_info
- The query pool creation info- Returns:
- A query pool
- Throws:
VulkanException
- On errors
-
createFramebuffer
VulkanFramebufferType createFramebuffer(VulkanFramebufferCreateInfo create_info) throws VulkanException
Create a framebuffer.- Parameters:
create_info
- The framebuffer creation info- Returns:
- A pipeline
- Throws:
VulkanException
- On errors
-
createCommandPool
VulkanCommandPoolType createCommandPool(VulkanCommandPoolCreateInfo create_info) throws VulkanException
Create a command pool.- Parameters:
create_info
- The pool creation info- Returns:
- A command pool
- Throws:
VulkanException
- On errors
-
createCommandBuffers
java.util.List<VulkanCommandBufferType> createCommandBuffers(VulkanCommandBufferCreateInfo create_info) throws VulkanException
Create a command buffer.- Parameters:
create_info
- The command buffer creation info- Returns:
- A list of command buffers
- Throws:
VulkanException
- On errors
-
createCommandBuffer
default VulkanCommandBufferType createCommandBuffer(VulkanCommandPoolType pool, VulkanCommandBufferLevel level) throws VulkanException
Create a command buffer.- Parameters:
pool
- The command buffer poollevel
- The command buffer level- Returns:
- A command buffer
- Throws:
VulkanException
- On errors
-
createSemaphore
VulkanSemaphoreType createSemaphore(VulkanSemaphoreCreateInfo create_info) throws VulkanException
Create a semaphore.- Parameters:
create_info
- The semaphore creation info- Returns:
- A semaphore
- Throws:
VulkanException
- On errors
-
createFence
VulkanFenceType createFence(VulkanFenceCreateInfo create_info) throws VulkanException
Create a fence.- Parameters:
create_info
- The fence creation info- Returns:
- A fence
- Throws:
VulkanException
- On errors
-
createEvent
VulkanEventType createEvent(VulkanEventCreateInfo create_info) throws VulkanException
Create an event.- Parameters:
create_info
- The event creation info- Returns:
- An event
- Throws:
VulkanException
- On errors
-
resetFences
void resetFences(java.util.List<VulkanFenceType> fences) throws VulkanException
Reset the given fences.- Parameters:
fences
- The fences- Throws:
VulkanException
- On errors
-
resetCommandPool
void resetCommandPool(VulkanCommandPoolType pool, java.util.Set<VulkanCommandPoolResetFlag> flags) throws VulkanException
Reset the given command pool.- Parameters:
pool
- The command poolflags
- The reset flags- Throws:
VulkanException
- On errors
-
resetCommandPool
default void resetCommandPool(VulkanCommandPoolType pool) throws VulkanException
Reset the given command pool.- Parameters:
pool
- The command pool- Throws:
VulkanException
- On errors
-
resetDescriptorPool
void resetDescriptorPool(VulkanDescriptorPoolType pool, java.util.Set<VulkanDescriptorPoolResetFlag> flags) throws VulkanException
Reset the given descriptor pool.- Parameters:
pool
- The descriptor poolflags
- The reset flags- Throws:
VulkanException
- On errors
-
resetDescriptorPool
default void resetDescriptorPool(VulkanDescriptorPoolType pool) throws VulkanException
Reset the given descriptor pool.- Parameters:
pool
- The descriptor pool- Throws:
VulkanException
- On errors
-
waitIdle
void waitIdle() throws VulkanException
Wait for this device to become idle.- Throws:
VulkanException
- On errors
-
waitForFences
VulkanLogicalDeviceType.VulkanWaitStatus waitForFences(java.util.List<VulkanFenceType> fences, boolean wait_all, long timeout_nanos) throws VulkanException
Wait for one or more fences to become signaled.- Parameters:
fences
- The fences upon which to waitwait_all
-true
if all fences must become signalled to stop waiting,false
if any fence can become signalledtimeout_nanos
- The timeout period in units of nanoseconds.- Returns:
- A value indicating whether waiting succeeded or timed out
- Throws:
VulkanException
- On errors
-
waitForFence
default VulkanLogicalDeviceType.VulkanWaitStatus waitForFence(VulkanFenceType fence, long timeout_nanos) throws VulkanException
Wait for a fence to become signaled.- Parameters:
fence
- The fences upon which to waittimeout_nanos
- The timeout period in units of nanoseconds.- Returns:
- A value indicating whether waiting succeeded or timed out
- Throws:
VulkanException
- On errors
-
createBuffer
VulkanBufferType createBuffer(VulkanBufferCreateInfo create_info) throws VulkanException
Create a buffer.- Parameters:
create_info
- The buffer creation info- Returns:
- A buffer
- Throws:
VulkanException
- On errors
-
createImage
VulkanImageType createImage(VulkanImageCreateInfo create_info) throws VulkanException
Create an image.- Parameters:
create_info
- The image creation info- Returns:
- A image
- Throws:
VulkanException
- On errors
-
getBufferMemoryRequirements
VulkanMemoryRequirements getBufferMemoryRequirements(VulkanBufferType buffer) throws VulkanException
Retrieve the memory requirements for the given buffer.- Parameters:
buffer
- The buffer- Returns:
- The memory requirements
- Throws:
VulkanException
- On errors
-
allocateMemory
VulkanDeviceMemoryType allocateMemory(VulkanMemoryAllocateInfo info) throws VulkanException
Allocate device memory.- Parameters:
info
- The allocation info- Returns:
- Allocated memory
- Throws:
VulkanException
- On errors
-
bindBufferMemory
void bindBufferMemory(VulkanBufferType buffer, VulkanDeviceMemoryType device_memory, long offset) throws VulkanException
Bind device memory to a buffer object.- Parameters:
buffer
- The logical device that owns the buffer and memorydevice_memory
- The device memory to attachoffset
- The start offset of the region of memory which is to be bound to the buffer. The number of bytes returned in the VkMemoryRequirements::size member in memory, starting from memoryOffset bytes, will be bound to the specified buffer.- Throws:
VulkanException
- On errors
-
bindImageMemory
void bindImageMemory(VulkanImageType image, VulkanDeviceMemoryType device_memory, long offset) throws VulkanException
Bind device memory to a image object.- Parameters:
image
- The logical device that owns the image and memorydevice_memory
- The device memory to attachoffset
- The start offset of the region of memory which is to be bound to the image. The number of bytes returned in the VkMemoryRequirements::size member in memory, starting from memoryOffset bytes, will be bound to the specified image.- Throws:
VulkanException
- On errors
-
mapMemory
VulkanMappedMemoryType mapMemory(VulkanDeviceMemoryType memory, long offset, long size, java.util.Set<VulkanMemoryMapFlag> flags) throws VulkanException
Map a memory object into the application address space.- Parameters:
memory
- The device memory object to be mappedoffset
- A zero-based byte offset from the beginning of the memory objectsize
- The size of the memory range to map, or VK_WHOLE_SIZE to map from offset to the end of the allocationflags
- The flags- Returns:
- Mapped memory
- Throws:
VulkanException
- On errors
-
mergePipelineCaches
void mergePipelineCaches(java.util.List<VulkanPipelineCacheType> caches, VulkanPipelineCacheType output) throws VulkanException
Combine the data stores of pipeline caches.- Parameters:
output
- The output cachecaches
- The input caches- Throws:
VulkanException
- On errors
-
setEvent
void setEvent(VulkanEventType event) throws VulkanException
Set an event object to signaled state.- Parameters:
event
- The event- Throws:
VulkanException
- On errors
-
resetEvent
void resetEvent(VulkanEventType event) throws VulkanException
Reset an event object to non-signaled state.- Parameters:
event
- The event- Throws:
VulkanException
- On errors
-
getEventStatus
VulkanLogicalDeviceType.VulkanEventStatus getEventStatus(VulkanEventType event) throws VulkanException
Retrieve the status of an event object.- Parameters:
event
- The event- Returns:
- The event status
- Throws:
VulkanException
- On errors
-
getFenceStatus
VulkanLogicalDeviceType.VulkanFenceStatus getFenceStatus(VulkanFenceType fence) throws VulkanException
Retrieve the status of a fence object.- Parameters:
fence
- The fence- Returns:
- The fence status
- Throws:
VulkanException
- On errors
-
getImageSubresourceLayout
VulkanSubresourceLayout getImageSubresourceLayout(VulkanImageType image, VulkanImageSubresource image_subresource) throws VulkanException
Retrieve information about an image subresource.- Parameters:
image
- The imageimage_subresource
- A structure selecting a specific image for the image subresource- Returns:
- The subresource layout
- Throws:
VulkanException
- On errors
-
createComputePipeline
default VulkanPipelineType createComputePipeline(VulkanComputePipelineCreateInfo pipeline_info) throws VulkanException
Create a compute pipeline.- Parameters:
pipeline_info
- The pipeline creation info- Returns:
- A compute pipeline
- Throws:
VulkanException
- On errors
-
createComputePipeline
default VulkanPipelineType createComputePipeline(VulkanPipelineCacheType cache, VulkanComputePipelineCreateInfo pipeline_info) throws VulkanException
Create a compute pipeline.- Parameters:
cache
- A pipeline cachepipeline_info
- The pipeline creation info- Returns:
- A compute pipeline
- Throws:
VulkanException
- On errors
-
createComputePipeline
default VulkanPipelineType createComputePipeline(java.util.Optional<VulkanPipelineCacheType> pipeline_cache, VulkanComputePipelineCreateInfo pipeline_info) throws VulkanException
Create a compute pipeline.- Parameters:
pipeline_cache
- A pipeline cachepipeline_info
- The pipeline creation info- Returns:
- A compute pipeline
- Throws:
VulkanException
- On errors
-
createComputePipelines
java.util.List<VulkanPipelineType> createComputePipelines(java.util.Optional<VulkanPipelineCacheType> pipeline_cache, java.util.List<VulkanComputePipelineCreateInfo> pipeline_infos) throws VulkanException
Create a set of compute pipelines.- Parameters:
pipeline_cache
- A pipeline cachepipeline_infos
- The pipeline creation infos- Returns:
- A list of compute pipelines
- Throws:
VulkanException
- On errors
-
createComputePipelines
default java.util.List<VulkanPipelineType> createComputePipelines(VulkanPipelineCacheType pipeline_cache, java.util.List<VulkanComputePipelineCreateInfo> pipeline_infos) throws VulkanException
Create a set of compute pipelines.- Parameters:
pipeline_cache
- A pipeline cachepipeline_infos
- The pipeline creation infos- Returns:
- A list of compute pipelines
- Throws:
VulkanException
- On errors
-
createComputePipelines
default java.util.List<VulkanPipelineType> createComputePipelines(java.util.List<VulkanComputePipelineCreateInfo> pipeline_infos) throws VulkanException
Create a set of compute pipelines.- Parameters:
pipeline_infos
- The pipeline creation infos- Returns:
- A list of compute pipelines
- Throws:
VulkanException
- On errors
-
-