Skip to content

KDGpu::ResourceManager

Module: Public API

ResourceManager manages Graphic API resources.

#include <KDGpu/resource_manager.h>

Inherited by KDGpu::VulkanResourceManager

Public Functions

Name
virtual ~ResourceManager()
virtual Handle< Instance_t > createInstance(const InstanceOptions & options) =0
virtual void deleteInstance(const Handle< Instance_t > & handle) =0
virtual ApiInstance * getInstance(const Handle< Instance_t > & handle) const =0
virtual void removeAdapter(const Handle< Adapter_t > & handle) =0
virtual ApiAdapter * getAdapter(const Handle< Adapter_t > & handle) const =0
virtual Handle< Device_t > createDevice(const Handle< Adapter_t > & adapterHandle, const DeviceOptions & options, std::vector< QueueRequest > & queueRequests) =0
virtual void deleteDevice(const Handle< Device_t > & handle) =0
virtual ApiDevice * getDevice(const Handle< Device_t > & handle) const =0
virtual void removeQueue(const Handle< Queue_t > & handle) =0
virtual ApiQueue * getQueue(const Handle< Queue_t > & queue) const =0
virtual void deleteSurface(const Handle< Surface_t > & handle) =0
virtual ApiSurface * getSurface(const Handle< Surface_t > & handle) const =0
virtual Handle< Swapchain_t > createSwapchain(const Handle< Device_t > & deviceHandle, const SwapchainOptions & options) =0
virtual void deleteSwapchain(const Handle< Swapchain_t > & handle) =0
virtual ApiSwapchain * getSwapchain(const Handle< Swapchain_t > & handle) const =0
virtual Handle< Texture_t > createTexture(const Handle< Device_t > & deviceHandle, const TextureOptions & options) =0
virtual void deleteTexture(const Handle< Texture_t > & handle) =0
virtual ApiTexture * getTexture(const Handle< Texture_t > & handle) const =0
virtual Handle< TextureView_t > createTextureView(const Handle< Device_t > & deviceHandle, const Handle< Texture_t > & textureHandle, const TextureViewOptions & options) =0
virtual void deleteTextureView(const Handle< TextureView_t > & handle) =0
virtual ApiTextureView * getTextureView(const Handle< TextureView_t > & handle) const =0
virtual Handle< Buffer_t > createBuffer(const Handle< Device_t > & deviceHandle, const BufferOptions & options, const void * initialData) =0
virtual void deleteBuffer(const Handle< Buffer_t > & handle) =0
virtual ApiBuffer * getBuffer(const Handle< Buffer_t > & handle) const =0
virtual Handle< ShaderModule_t > createShaderModule(const Handle< Device_t > & deviceHandle, const std::vector< uint32_t > & code) =0
virtual void deleteShaderModule(const Handle< ShaderModule_t > & handle) =0
virtual ApiShaderModule * getShaderModule(const Handle< ShaderModule_t > & handle) const =0
virtual Handle< PipelineLayout_t > createPipelineLayout(const Handle< Device_t > & deviceHandle, const PipelineLayoutOptions & options) =0
virtual void deletePipelineLayout(const Handle< PipelineLayout_t > & handle) =0
virtual ApiPipelineLayout * getPipelineLayout(const Handle< PipelineLayout_t > & handle) const =0
virtual Handle< GraphicsPipeline_t > createGraphicsPipeline(const Handle< Device_t > & deviceHandle, const GraphicsPipelineOptions & options) =0
virtual void deleteGraphicsPipeline(const Handle< GraphicsPipeline_t > & handle) =0
virtual ApiGraphicsPipeline * getGraphicsPipeline(const Handle< GraphicsPipeline_t > & handle) const =0
virtual Handle< ComputePipeline_t > createComputePipeline(const Handle< Device_t > & deviceHandle, const ComputePipelineOptions & options) =0
virtual void deleteComputePipeline(const Handle< ComputePipeline_t > & handle) =0
virtual ApiComputePipeline * getComputePipeline(const Handle< ComputePipeline_t > & handle) const =0
virtual Handle< RayTracingPipeline_t > createRayTracingPipeline(const Handle< Device_t > & deviceHandle, const RayTracingPipelineOptions & options) =0
virtual void deleteRayTracingPipeline(const Handle< RayTracingPipeline_t > & handle) =0
virtual ApiRayTracingPipeline * getRayTracingPipeline(const Handle< RayTracingPipeline_t > & handle) const =0
virtual Handle< GpuSemaphore_t > createGpuSemaphore(const Handle< Device_t > & deviceHandle, const GpuSemaphoreOptions & options) =0
virtual void deleteGpuSemaphore(const Handle< GpuSemaphore_t > & handle) =0
virtual ApiGpuSemaphore * getGpuSemaphore(const Handle< GpuSemaphore_t > & handle) const =0
virtual Handle< CommandRecorder_t > createCommandRecorder(const Handle< Device_t > & deviceHandle, const CommandRecorderOptions & options) =0
virtual void deleteCommandRecorder(const Handle< CommandRecorder_t > & handle) =0
virtual ApiCommandRecorder * getCommandRecorder(const Handle< CommandRecorder_t > & handle) const =0
virtual Handle< RenderPassCommandRecorder_t > createRenderPassCommandRecorder(const Handle< Device_t > & deviceHandle, const Handle< CommandRecorder_t > & commandRecorderHandle, const RenderPassCommandRecorderOptions & options) =0
virtual void deleteRenderPassCommandRecorder(const Handle< RenderPassCommandRecorder_t > & handle) =0
virtual ApiRenderPassCommandRecorder * getRenderPassCommandRecorder(const Handle< RenderPassCommandRecorder_t > & handle) const =0
virtual Handle< ComputePassCommandRecorder_t > createComputePassCommandRecorder(const Handle< Device_t > & deviceHandle, const Handle< CommandRecorder_t > & commandRecorderHandle, const ComputePassCommandRecorderOptions & options) =0
virtual void deleteComputePassCommandRecorder(const Handle< ComputePassCommandRecorder_t > & handle) =0
virtual ApiComputePassCommandRecorder * getComputePassCommandRecorder(const Handle< ComputePassCommandRecorder_t > & handle) const =0
virtual void deleteRayTracingPassCommandRecorder(const Handle< RayTracingPassCommandRecorder_t > & handle) =0
virtual ApiRayTracingPassCommandRecorder * getRayTracingPassCommandRecorder(const Handle< RayTracingPassCommandRecorder_t > & handle) const =0
virtual Handle< RayTracingPassCommandRecorder_t > createRayTracingPassCommandRecorder(const Handle< Device_t > & deviceHandle, const Handle< CommandRecorder_t > & commandRecorderHandle, const RayTracingPassCommandRecorderOptions & options) =0
virtual Handle< TimestampQueryRecorder_t > createTimestampQueryRecorder(const Handle< Device_t > & deviceHandle, const Handle< CommandRecorder_t > & commandRecorderHandle, const TimestampQueryRecorderOptions & options) =0
virtual void deleteTimestampQueryRecorder(const Handle< TimestampQueryRecorder_t > & handle) =0
virtual ApiTimestampQueryRecorder * getTimestampQueryRecorder(const Handle< TimestampQueryRecorder_t > & handle) const =0
virtual Handle< CommandBuffer_t > createCommandBuffer(const Handle< Device_t > & deviceHandle, const QueueDescription & queueDescription, CommandBufferLevel commandLevel) =0
virtual void deleteCommandBuffer(const Handle< CommandBuffer_t > & handle) =0
virtual ApiCommandBuffer * getCommandBuffer(const Handle< CommandBuffer_t > & handle) const =0
virtual Handle< BindGroup_t > createBindGroup(const Handle< Device_t > & deviceHandle, const BindGroupOptions & options) =0
virtual void deleteBindGroup(const Handle< BindGroup_t > & handle) =0
virtual ApiBindGroup * getBindGroup(const Handle< BindGroup_t > & handle) const =0
virtual Handle< BindGroupLayout_t > createBindGroupLayout(const Handle< Device_t > & deviceHandle, const BindGroupLayoutOptions & options) =0
virtual void deleteBindGroupLayout(const Handle< BindGroupLayout_t > & handle) =0
virtual ApiBindGroupLayout * getBindGroupLayout(const Handle< BindGroupLayout_t > & handle) const =0
virtual Handle< Sampler_t > createSampler(const Handle< Device_t > & deviceHandle, const SamplerOptions & options) =0
virtual void deleteSampler(const Handle< Sampler_t > & handle) =0
virtual ApiSampler * getSampler(const Handle< Sampler_t > & handle) const =0
virtual Handle< Fence_t > createFence(const Handle< Device_t > & deviceHandle, const FenceOptions & options) =0
virtual void deleteFence(const Handle< Fence_t > & handle) =0
virtual ApiFence * getFence(const Handle< Fence_t > & handle) const =0
virtual Handle< AccelerationStructure_t > createAccelerationStructure(const Handle< Device_t > & deviceHandle, const AccelerationStructureOptions & options) =0
virtual void deleteAccelerationStructure(const Handle< AccelerationStructure_t > & handle) =0
virtual ApiAccelerationStructure * getAccelerationStructure(const Handle< AccelerationStructure_t > & handle) const =0

Protected Functions

Name
ResourceManager()

Public Functions Documentation

function ~ResourceManager

1
virtual ~ResourceManager()

function createInstance

1
2
3
virtual Handle< Instance_t > createInstance(
    const InstanceOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createInstance

function deleteInstance

1
2
3
virtual void deleteInstance(
    const Handle< Instance_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteInstance

function getInstance

1
2
3
virtual ApiInstance * getInstance(
    const Handle< Instance_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getInstance

function removeAdapter

1
2
3
virtual void removeAdapter(
    const Handle< Adapter_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::removeAdapter

function getAdapter

1
2
3
virtual ApiAdapter * getAdapter(
    const Handle< Adapter_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getAdapter

function createDevice

1
2
3
4
5
virtual Handle< Device_t > createDevice(
    const Handle< Adapter_t > & adapterHandle,
    const DeviceOptions & options,
    std::vector< QueueRequest > & queueRequests
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createDevice

function deleteDevice

1
2
3
virtual void deleteDevice(
    const Handle< Device_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteDevice

function getDevice

1
2
3
virtual ApiDevice * getDevice(
    const Handle< Device_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getDevice

function removeQueue

1
2
3
virtual void removeQueue(
    const Handle< Queue_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::removeQueue

function getQueue

1
2
3
virtual ApiQueue * getQueue(
    const Handle< Queue_t > & queue
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getQueue

function deleteSurface

1
2
3
virtual void deleteSurface(
    const Handle< Surface_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteSurface

function getSurface

1
2
3
virtual ApiSurface * getSurface(
    const Handle< Surface_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getSurface

function createSwapchain

1
2
3
4
virtual Handle< Swapchain_t > createSwapchain(
    const Handle< Device_t > & deviceHandle,
    const SwapchainOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createSwapchain

function deleteSwapchain

1
2
3
virtual void deleteSwapchain(
    const Handle< Swapchain_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteSwapchain

function getSwapchain

1
2
3
virtual ApiSwapchain * getSwapchain(
    const Handle< Swapchain_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getSwapchain

function createTexture

1
2
3
4
virtual Handle< Texture_t > createTexture(
    const Handle< Device_t > & deviceHandle,
    const TextureOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createTexture

function deleteTexture

1
2
3
virtual void deleteTexture(
    const Handle< Texture_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteTexture

function getTexture

1
2
3
virtual ApiTexture * getTexture(
    const Handle< Texture_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getTexture

function createTextureView

1
2
3
4
5
virtual Handle< TextureView_t > createTextureView(
    const Handle< Device_t > & deviceHandle,
    const Handle< Texture_t > & textureHandle,
    const TextureViewOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createTextureView

function deleteTextureView

1
2
3
virtual void deleteTextureView(
    const Handle< TextureView_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteTextureView

function getTextureView

1
2
3
virtual ApiTextureView * getTextureView(
    const Handle< TextureView_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getTextureView

function createBuffer

1
2
3
4
5
virtual Handle< Buffer_t > createBuffer(
    const Handle< Device_t > & deviceHandle,
    const BufferOptions & options,
    const void * initialData
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createBuffer

function deleteBuffer

1
2
3
virtual void deleteBuffer(
    const Handle< Buffer_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteBuffer

function getBuffer

1
2
3
virtual ApiBuffer * getBuffer(
    const Handle< Buffer_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getBuffer

function createShaderModule

1
2
3
4
virtual Handle< ShaderModule_t > createShaderModule(
    const Handle< Device_t > & deviceHandle,
    const std::vector< uint32_t > & code
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createShaderModule

function deleteShaderModule

1
2
3
virtual void deleteShaderModule(
    const Handle< ShaderModule_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteShaderModule

function getShaderModule

1
2
3
virtual ApiShaderModule * getShaderModule(
    const Handle< ShaderModule_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getShaderModule

function createPipelineLayout

1
2
3
4
virtual Handle< PipelineLayout_t > createPipelineLayout(
    const Handle< Device_t > & deviceHandle,
    const PipelineLayoutOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createPipelineLayout

function deletePipelineLayout

1
2
3
virtual void deletePipelineLayout(
    const Handle< PipelineLayout_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deletePipelineLayout

function getPipelineLayout

1
2
3
virtual ApiPipelineLayout * getPipelineLayout(
    const Handle< PipelineLayout_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getPipelineLayout

function createGraphicsPipeline

1
2
3
4
virtual Handle< GraphicsPipeline_t > createGraphicsPipeline(
    const Handle< Device_t > & deviceHandle,
    const GraphicsPipelineOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createGraphicsPipeline

function deleteGraphicsPipeline

1
2
3
virtual void deleteGraphicsPipeline(
    const Handle< GraphicsPipeline_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteGraphicsPipeline

function getGraphicsPipeline

1
2
3
virtual ApiGraphicsPipeline * getGraphicsPipeline(
    const Handle< GraphicsPipeline_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getGraphicsPipeline

function createComputePipeline

1
2
3
4
virtual Handle< ComputePipeline_t > createComputePipeline(
    const Handle< Device_t > & deviceHandle,
    const ComputePipelineOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createComputePipeline

function deleteComputePipeline

1
2
3
virtual void deleteComputePipeline(
    const Handle< ComputePipeline_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteComputePipeline

function getComputePipeline

1
2
3
virtual ApiComputePipeline * getComputePipeline(
    const Handle< ComputePipeline_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getComputePipeline

function createRayTracingPipeline

1
2
3
4
virtual Handle< RayTracingPipeline_t > createRayTracingPipeline(
    const Handle< Device_t > & deviceHandle,
    const RayTracingPipelineOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createRayTracingPipeline

function deleteRayTracingPipeline

1
2
3
virtual void deleteRayTracingPipeline(
    const Handle< RayTracingPipeline_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteRayTracingPipeline

function getRayTracingPipeline

1
2
3
virtual ApiRayTracingPipeline * getRayTracingPipeline(
    const Handle< RayTracingPipeline_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getRayTracingPipeline

function createGpuSemaphore

1
2
3
4
virtual Handle< GpuSemaphore_t > createGpuSemaphore(
    const Handle< Device_t > & deviceHandle,
    const GpuSemaphoreOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createGpuSemaphore

function deleteGpuSemaphore

1
2
3
virtual void deleteGpuSemaphore(
    const Handle< GpuSemaphore_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteGpuSemaphore

function getGpuSemaphore

1
2
3
virtual ApiGpuSemaphore * getGpuSemaphore(
    const Handle< GpuSemaphore_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getGpuSemaphore

function createCommandRecorder

1
2
3
4
virtual Handle< CommandRecorder_t > createCommandRecorder(
    const Handle< Device_t > & deviceHandle,
    const CommandRecorderOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createCommandRecorder

function deleteCommandRecorder

1
2
3
virtual void deleteCommandRecorder(
    const Handle< CommandRecorder_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteCommandRecorder

function getCommandRecorder

1
2
3
virtual ApiCommandRecorder * getCommandRecorder(
    const Handle< CommandRecorder_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getCommandRecorder

function createRenderPassCommandRecorder

1
2
3
4
5
virtual Handle< RenderPassCommandRecorder_t > createRenderPassCommandRecorder(
    const Handle< Device_t > & deviceHandle,
    const Handle< CommandRecorder_t > & commandRecorderHandle,
    const RenderPassCommandRecorderOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createRenderPassCommandRecorder

function deleteRenderPassCommandRecorder

1
2
3
virtual void deleteRenderPassCommandRecorder(
    const Handle< RenderPassCommandRecorder_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteRenderPassCommandRecorder

function getRenderPassCommandRecorder

1
2
3
virtual ApiRenderPassCommandRecorder * getRenderPassCommandRecorder(
    const Handle< RenderPassCommandRecorder_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getRenderPassCommandRecorder

function createComputePassCommandRecorder

1
2
3
4
5
virtual Handle< ComputePassCommandRecorder_t > createComputePassCommandRecorder(
    const Handle< Device_t > & deviceHandle,
    const Handle< CommandRecorder_t > & commandRecorderHandle,
    const ComputePassCommandRecorderOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createComputePassCommandRecorder

function deleteComputePassCommandRecorder

1
2
3
virtual void deleteComputePassCommandRecorder(
    const Handle< ComputePassCommandRecorder_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteComputePassCommandRecorder

function getComputePassCommandRecorder

1
2
3
virtual ApiComputePassCommandRecorder * getComputePassCommandRecorder(
    const Handle< ComputePassCommandRecorder_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getComputePassCommandRecorder

function deleteRayTracingPassCommandRecorder

1
2
3
virtual void deleteRayTracingPassCommandRecorder(
    const Handle< RayTracingPassCommandRecorder_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteRayTracingPassCommandRecorder

function getRayTracingPassCommandRecorder

1
2
3
virtual ApiRayTracingPassCommandRecorder * getRayTracingPassCommandRecorder(
    const Handle< RayTracingPassCommandRecorder_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getRayTracingPassCommandRecorder

function createRayTracingPassCommandRecorder

1
2
3
4
5
virtual Handle< RayTracingPassCommandRecorder_t > createRayTracingPassCommandRecorder(
    const Handle< Device_t > & deviceHandle,
    const Handle< CommandRecorder_t > & commandRecorderHandle,
    const RayTracingPassCommandRecorderOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createRayTracingPassCommandRecorder

function createTimestampQueryRecorder

1
2
3
4
5
virtual Handle< TimestampQueryRecorder_t > createTimestampQueryRecorder(
    const Handle< Device_t > & deviceHandle,
    const Handle< CommandRecorder_t > & commandRecorderHandle,
    const TimestampQueryRecorderOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createTimestampQueryRecorder

function deleteTimestampQueryRecorder

1
2
3
virtual void deleteTimestampQueryRecorder(
    const Handle< TimestampQueryRecorder_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteTimestampQueryRecorder

function getTimestampQueryRecorder

1
2
3
virtual ApiTimestampQueryRecorder * getTimestampQueryRecorder(
    const Handle< TimestampQueryRecorder_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getTimestampQueryRecorder

function createCommandBuffer

1
2
3
4
5
virtual Handle< CommandBuffer_t > createCommandBuffer(
    const Handle< Device_t > & deviceHandle,
    const QueueDescription & queueDescription,
    CommandBufferLevel commandLevel
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createCommandBuffer

function deleteCommandBuffer

1
2
3
virtual void deleteCommandBuffer(
    const Handle< CommandBuffer_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteCommandBuffer

function getCommandBuffer

1
2
3
virtual ApiCommandBuffer * getCommandBuffer(
    const Handle< CommandBuffer_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getCommandBuffer

function createBindGroup

1
2
3
4
virtual Handle< BindGroup_t > createBindGroup(
    const Handle< Device_t > & deviceHandle,
    const BindGroupOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createBindGroup

function deleteBindGroup

1
2
3
virtual void deleteBindGroup(
    const Handle< BindGroup_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteBindGroup

function getBindGroup

1
2
3
virtual ApiBindGroup * getBindGroup(
    const Handle< BindGroup_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getBindGroup

function createBindGroupLayout

1
2
3
4
virtual Handle< BindGroupLayout_t > createBindGroupLayout(
    const Handle< Device_t > & deviceHandle,
    const BindGroupLayoutOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createBindGroupLayout

function deleteBindGroupLayout

1
2
3
virtual void deleteBindGroupLayout(
    const Handle< BindGroupLayout_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteBindGroupLayout

function getBindGroupLayout

1
2
3
virtual ApiBindGroupLayout * getBindGroupLayout(
    const Handle< BindGroupLayout_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getBindGroupLayout

function createSampler

1
2
3
4
virtual Handle< Sampler_t > createSampler(
    const Handle< Device_t > & deviceHandle,
    const SamplerOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createSampler

function deleteSampler

1
2
3
virtual void deleteSampler(
    const Handle< Sampler_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteSampler

function getSampler

1
2
3
virtual ApiSampler * getSampler(
    const Handle< Sampler_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getSampler

function createFence

1
2
3
4
virtual Handle< Fence_t > createFence(
    const Handle< Device_t > & deviceHandle,
    const FenceOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createFence

function deleteFence

1
2
3
virtual void deleteFence(
    const Handle< Fence_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteFence

function getFence

1
2
3
virtual ApiFence * getFence(
    const Handle< Fence_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getFence

function createAccelerationStructure

1
2
3
4
virtual Handle< AccelerationStructure_t > createAccelerationStructure(
    const Handle< Device_t > & deviceHandle,
    const AccelerationStructureOptions & options
) =0

Reimplemented by: KDGpu::VulkanResourceManager::createAccelerationStructure

function deleteAccelerationStructure

1
2
3
virtual void deleteAccelerationStructure(
    const Handle< AccelerationStructure_t > & handle
) =0

Reimplemented by: KDGpu::VulkanResourceManager::deleteAccelerationStructure

function getAccelerationStructure

1
2
3
virtual ApiAccelerationStructure * getAccelerationStructure(
    const Handle< AccelerationStructure_t > & handle
) const =0

Reimplemented by: KDGpu::VulkanResourceManager::getAccelerationStructure

Protected Functions Documentation

function ResourceManager

1
ResourceManager()

Updated on 2024-10-16 at 00:11:40 +0000