KDGpu::Device
Module: Public API
Device is our main entry point to create Graphics Resources.  More...
#include <KDGpu/device.h>
Public Functions
Friends
Detailed Description
Device is our main entry point to create Graphics Resources. 
See: Adapter::createDevice
 | using namespace KDGpu;
Adapter *selectedAdapter = instance.selectAdapter(AdapterDeviceType::Default);
Device device = selectedAdapter->createDevice();
  | 
 
Public Functions Documentation
function Device
function ~Device
function Device
 | Device(
    Device && other
)
  | 
 
function operator=
 | Device & operator=(
    Device && other
)
  | 
 
function Device
 | Device(
    const Device & 
) =delete
  | 
 
function operator=
 | Device & operator=(
    const Device & 
) =delete
  | 
 
function handle
 | inline Handle< Device_t > handle() const
  | 
 
Returns the handle used to retrieve the underlying API specific Device. 
See: ResourceManager
function isValid
 | inline bool isValid() const
  | 
 
Convenience function to check whether the Device is actually referencing a valid API specific resource. 
function operator Handle< Device_t >
 | inline operator Handle< Device_t >() const
  | 
 
function queues
 | inline std::span< Queue > queues()
  | 
 
Returns the queues available on the device. 
function waitUntilIdle
Forces a CPU side blocking wait until the underlying device has completed execution of all its pending commands. 
function adapter
 | const Adapter * adapter() const
  | 
 
function createSwapchain
 | Swapchain createSwapchain(
    const SwapchainOptions & options
)
  | 
 
function createTexture
 | Texture createTexture(
    const TextureOptions & options
)
  | 
 
function createBuffer
 | Buffer createBuffer(
    const BufferOptions & options,
    const void * initialData =nullptr
)
  | 
 
function createShaderModule
 | ShaderModule createShaderModule(
    const std::vector< uint32_t > & code
)
  | 
 
function createRenderPass
 | RenderPass createRenderPass(
    const RenderPassOptions & options
)
  | 
 
function createPipelineLayout
 | PipelineLayout createPipelineLayout(
    const PipelineLayoutOptions & options =PipelineLayoutOptions()
)
  | 
 
function createGraphicsPipeline
 | GraphicsPipeline createGraphicsPipeline(
    const GraphicsPipelineOptions & options
)
  | 
 
function createComputePipeline
 | ComputePipeline createComputePipeline(
    const ComputePipelineOptions & options
)
  | 
 
function createRayTracingPipeline
 | RayTracingPipeline createRayTracingPipeline(
    const RayTracingPipelineOptions & options
)
  | 
 
function createCommandRecorder
 | CommandRecorder createCommandRecorder(
    const CommandRecorderOptions & options =CommandRecorderOptions()
)
  | 
 
function createGpuSemaphore
 | GpuSemaphore createGpuSemaphore(
    const GpuSemaphoreOptions & options =GpuSemaphoreOptions()
)
  | 
 
function createBindGroupLayout
 | BindGroupLayout createBindGroupLayout(
    const BindGroupLayoutOptions & options
)
  | 
 
function createBindGroupPool
 | BindGroupPool createBindGroupPool(
    const BindGroupPoolOptions & options
)
  | 
 
function createBindGroup
 | BindGroup createBindGroup(
    const BindGroupOptions & options
)
  | 
 
function createSampler
 | Sampler createSampler(
    const SamplerOptions & options =SamplerOptions()
)
  | 
 
function createFence
 | Fence createFence(
    const FenceOptions & options =FenceOptions()
)
  | 
 
function createAccelerationStructure
 | AccelerationStructure createAccelerationStructure(
    const AccelerationStructureOptions & options =AccelerationStructureOptions()
)
  | 
 
function createYCbCrConversion
 | YCbCrConversion createYCbCrConversion(
    const YCbCrConversionOptions & options
)
  | 
 
function graphicsApi
 | GraphicsApi * graphicsApi() const
  | 
 
Friends
friend Adapter
 | friend class Adapter(
    Adapter 
);
  | 
 
friend VulkanGraphicsApi
 | friend class VulkanGraphicsApi(
    VulkanGraphicsApi 
);
  | 
 
Updated on 2025-11-02 at 00:01:42 +0000