LLGL 0.05 Beta
Loading...
Searching...
No Matches
LLGL::ResourceHeap Class Referenceabstract

Resource heap interface. More...

#include <ResourceHeap.h>

Inheritance diagram for LLGL::ResourceHeap:
LLGL::RenderSystemChild LLGL::Interface LLGL::NonCopyable

Public Member Functions

virtual std::uint32_t GetNumDescriptorSets () const =0
 Returns the number of descriptor sets in this heap.
Public Member Functions inherited from LLGL::RenderSystemChild
virtual void SetDebugName (const char *name)
 Sets the name of this class instance for debugging purposes.
Public Member Functions inherited from LLGL::Interface
virtual bool IsInstanceOf (int id) const
 Returns true if this object is an instance of the specified interface.
Public Member Functions inherited from LLGL::NonCopyable
 NonCopyable (const NonCopyable &)=delete
NonCopyable & operator= (const NonCopyable &)=delete
virtual ~NonCopyable ()=default

Additional Inherited Members

Protected Member Functions inherited from LLGL::NonCopyable
 NonCopyable ()=default

Detailed Description

Resource heap interface.

Remarks
An instance of this interface provides all descriptor sets (as called in Vulkan) or descriptor heaps (as called in Direct3D 12) for graphics and compute pipelines.
See also
RenderSystem::CreateResourceHeap
CommandBuffer::SetResourceHeap

Member Function Documentation

◆ GetNumDescriptorSets()

virtual std::uint32_t LLGL::ResourceHeap::GetNumDescriptorSets ( ) const
pure virtual

Returns the number of descriptor sets in this heap.

Remarks
This is determined by the number of resources in the heap divided by the number of heap bindings in the pipeline layout. The total number of resources in the heap can therefore be determined by the following code:
myResourceHeap->GetNumDescriptorSets() * myPipelineLayout->GetNumHeapBindings();
See also
PipelineLayout::GetNumHeapBindings
CommandBuffer::SetResourceHeap

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