|
constexpr | GPUDevice ()=default |
| Default ctor.
|
|
constexpr | GPUDevice (const GPUDeviceRaw resource) |
| Constructs from GPUDeviceParam. More...
|
|
constexpr | GPUDevice (const GPUDevice &other)=delete |
| Copy constructor.
|
|
constexpr | GPUDevice (GPUDevice &&other) |
| Move constructor.
|
|
constexpr | GPUDevice (const GPUDeviceRef &other)=delete |
|
constexpr | GPUDevice (GPUDeviceRef &&other)=delete |
|
| GPUDevice (GPUShaderFormat format_flags, bool debug_mode, StringParam name) |
| Creates a GPU context. More...
|
|
| GPUDevice (PropertiesParam props) |
| Creates a GPU context. More...
|
|
| ~GPUDevice () |
| Destructor.
|
|
GPUDevice & | operator= (GPUDevice other) |
| Assignment operator.
|
|
constexpr GPUDeviceRaw | get () const |
| Retrieves underlying GPUDeviceRaw.
|
|
constexpr GPUDeviceRaw | release () |
| Retrieves underlying GPUDeviceRaw and clear this.
|
|
constexpr auto | operator<=> (const GPUDevice &other) const =default |
| Comparison.
|
|
constexpr bool | operator== (std::nullptr_t _) const |
| Comparison.
|
|
constexpr | operator bool () const |
| Converts to bool.
|
|
constexpr | operator GPUDeviceParam () const |
| Converts to GPUDeviceParam.
|
|
void | Destroy () |
| Destroys a GPU context previously returned by GPUDevice.GPUDevice. More...
|
|
const char * | GetDriver () |
| Returns the name of the backend used to create this GPU context. More...
|
|
GPUShaderFormat | GetShaderFormats () |
| Returns the supported shader formats for this GPU context. More...
|
|
GPUComputePipeline | CreateComputePipeline (const GPUComputePipelineCreateInfo &createinfo) |
| Creates a pipeline object to be used in a compute workflow. More...
|
|
GPUGraphicsPipeline | CreateGraphicsPipeline (const GPUGraphicsPipelineCreateInfo &createinfo) |
| Creates a pipeline object to be used in a graphics workflow. More...
|
|
GPUSampler | CreateSampler (const GPUSamplerCreateInfo &createinfo) |
| Creates a sampler object to be used when binding textures in a graphics workflow. More...
|
|
GPUShader | CreateShader (const GPUShaderCreateInfo &createinfo) |
| Creates a shader to be used when creating a graphics pipeline. More...
|
|
GPUTexture | CreateTexture (const GPUTextureCreateInfo &createinfo) |
| Creates a texture object to be used in graphics or compute workflows. More...
|
|
GPUBuffer | CreateBuffer (const GPUBufferCreateInfo &createinfo) |
| Creates a buffer object to be used in graphics or compute workflows. More...
|
|
GPUTransferBuffer | CreateTransferBuffer (const GPUTransferBufferCreateInfo &createinfo) |
| Creates a transfer buffer to be used when uploading to or downloading from graphics resources. More...
|
|
void | SetBufferName (GPUBuffer buffer, StringParam text) |
| Sets an arbitrary string constant to label a buffer. More...
|
|
void | SetTextureName (GPUTexture texture, StringParam text) |
| Sets an arbitrary string constant to label a texture. More...
|
|
void | ReleaseTexture (GPUTexture texture) |
| Frees the given texture as soon as it is safe to do so. More...
|
|
void | ReleaseSampler (GPUSampler sampler) |
| Frees the given sampler as soon as it is safe to do so. More...
|
|
void | ReleaseBuffer (GPUBuffer buffer) |
| Frees the given buffer as soon as it is safe to do so. More...
|
|
void | ReleaseTransferBuffer (GPUTransferBuffer transfer_buffer) |
| Frees the given transfer buffer as soon as it is safe to do so. More...
|
|
void | ReleaseComputePipeline (GPUComputePipeline compute_pipeline) |
| Frees the given compute pipeline as soon as it is safe to do so. More...
|
|
void | ReleaseShader (GPUShader shader) |
| Frees the given shader as soon as it is safe to do so. More...
|
|
void | ReleaseGraphicsPipeline (GPUGraphicsPipeline graphics_pipeline) |
| Frees the given graphics pipeline as soon as it is safe to do so. More...
|
|
GPUCommandBuffer | AcquireCommandBuffer () |
| Acquire a command buffer. More...
|
|
void * | MapTransferBuffer (GPUTransferBuffer transfer_buffer, bool cycle) |
| Maps a transfer buffer into application address space. More...
|
|
void | UnmapTransferBuffer (GPUTransferBuffer transfer_buffer) |
| Unmaps a previously mapped transfer buffer. More...
|
|
bool | WindowSupportsSwapchainComposition (WindowParam window, GPUSwapchainComposition swapchain_composition) |
| Determines whether a swapchain composition is supported by the window. More...
|
|
bool | WindowSupportsPresentMode (WindowParam window, GPUPresentMode present_mode) |
| Determines whether a presentation mode is supported by the window. More...
|
|
void | ClaimWindow (WindowParam window) |
| Claims a window, creating a swapchain structure for it. More...
|
|
void | ReleaseWindow (WindowParam window) |
| Unclaims a window, destroying its swapchain structure. More...
|
|
bool | SetSwapchainParameters (WindowParam window, GPUSwapchainComposition swapchain_composition, GPUPresentMode present_mode) |
| Changes the swapchain parameters for the given claimed window. More...
|
|
bool | SetAllowedFramesInFlight (Uint32 allowed_frames_in_flight) |
| Configures the maximum allowed number of frames in flight. More...
|
|
GPUTextureFormat | GetSwapchainTextureFormat (WindowParam window) |
| Obtains the texture format of the swapchain for the given window. More...
|
|
void | WaitForSwapchain (WindowParam window) |
| Blocks the thread until a swapchain texture is available to be acquired. More...
|
|
void | WaitForIdle () |
| Blocks the thread until the GPU is completely idle. More...
|
|
void | WaitForFences (bool wait_all, std::span< GPUFence *const > fences) |
| Blocks the thread until the given fences are signaled. More...
|
|
bool | QueryFence (GPUFence *fence) |
| Checks the status of a fence. More...
|
|
void | ReleaseFence (GPUFence *fence) |
| Releases a fence obtained from GPUCommandBuffer.SubmitAndAcquireFence. More...
|
|
bool | TextureSupportsFormat (GPUTextureFormat format, GPUTextureType type, GPUTextureUsageFlags usage) |
| Determines whether a texture format is supported for a given type and usage. More...
|
|
bool | TextureSupportsSampleCount (GPUTextureFormat format, GPUSampleCount sample_count) |
| Determines if a sample count for a texture format is supported. More...
|
|