Rendering Engine 0.2.0
Modular Graphics Rendering Engine | v0.2.0
Loading...
Searching...
No Matches
rendering_engine::ITextureRenderResources Class Referenceabstract

Interface for backend-specific GPU texture resource management. More...

#include <i_texture_render_resources.hpp>

Inherited by rendering_engine::VulkanTextureResources.

Public Member Functions

virtual ~ITextureRenderResources ()=default
 Virtual destructor.
virtual void LoadToGPU (const ImageData &data)=0
 Uploads texture data from CPU to GPU memory.
virtual void ReleaseFromGPU ()=0
 Releases texture memory from the GPU.
virtual bool IsTextureLoadedInGPU ()=0
 Checks whether the texture is currently loaded in GPU memory.
virtual size_t GetSizeInGPUBytes () const =0
 Returns the memory footprint of the texture on the GPU.

Detailed Description

Interface for backend-specific GPU texture resource management.

This interface defines the core functions required to manage the lifecycle of texture data uploaded to the GPU. It enables backends like Vulkan, OpenGL, or DirectX to implement their specific logic while staying abstracted from higher-level code.

Definition at line 23 of file i_texture_render_resources.hpp.

Constructor & Destructor Documentation

◆ ~ITextureRenderResources()

virtual rendering_engine::ITextureRenderResources::~ITextureRenderResources ( )
virtualdefault

Virtual destructor.

Member Function Documentation

◆ GetSizeInGPUBytes()

virtual size_t rendering_engine::ITextureRenderResources::GetSizeInGPUBytes ( ) const
pure virtual

Returns the memory footprint of the texture on the GPU.

Returns
Size of the texture data in GPU memory in bytes.

Implemented in rendering_engine::VulkanTextureResources.

◆ IsTextureLoadedInGPU()

virtual bool rendering_engine::ITextureRenderResources::IsTextureLoadedInGPU ( )
pure virtual

Checks whether the texture is currently loaded in GPU memory.

Returns
true if the texture is loaded, false otherwise.

Implemented in rendering_engine::VulkanTextureResources.

◆ LoadToGPU()

virtual void rendering_engine::ITextureRenderResources::LoadToGPU ( const ImageData & data)
pure virtual

Uploads texture data from CPU to GPU memory.

Parameters
dataReference to the CPU-resident image data.

Implemented in rendering_engine::VulkanTextureResources.

◆ ReleaseFromGPU()

virtual void rendering_engine::ITextureRenderResources::ReleaseFromGPU ( )
pure virtual

Releases texture memory from the GPU.

Implemented in rendering_engine::VulkanTextureResources.


The documentation for this class was generated from the following file: