Vulkan Schnee 0.0.1
High-performance rendering engine
Loading...
Searching...
No Matches
Engine::Rendering::ComputePipelineSpecializationData Class Reference

Wrapper for shader specialization data for compute pipelines. This usually only stores the thread count as that can depend on the hardware the engine is running on. More...

#include <PipelineMaterialPayload.h>

Inheritance diagram for Engine::Rendering::ComputePipelineSpecializationData:
Collaboration diagram for Engine::Rendering::ComputePipelineSpecializationData:

Classes

struct  Data

Public Member Functions

 ComputePipelineSpecializationData (uint32_t threadCount)
 Constructor.
std::vector< VkSpecializationMapEntry > getMapEntries () const override
 Gets the specialization data which will be uploaded to a shader.
const void * getData () const override
 Gets a pointer for the data for the specialization data.
size_t getDataSize () const override
 Gets the size of the data stored in the result of getData()
virtual uint32_t getThreadCount () const
 Getter for how man threads the compute shader this specialization is applied to should have.
Public Member Functions inherited from Engine::Rendering::PipelineSpecializationData
virtual ~PipelineSpecializationData ()=default

Private Attributes

struct Engine::Rendering::ComputePipelineSpecializationData::Data data

Detailed Description

Wrapper for shader specialization data for compute pipelines. This usually only stores the thread count as that can depend on the hardware the engine is running on.

Definition at line 79 of file PipelineMaterialPayload.h.

Constructor & Destructor Documentation

◆ ComputePipelineSpecializationData()

Engine::Rendering::ComputePipelineSpecializationData::ComputePipelineSpecializationData ( uint32_t threadCount)
inline

Constructor.

Definition at line 85 of file PipelineMaterialPayload.h.

References data.

Member Function Documentation

◆ getData()

const void * Engine::Rendering::ComputePipelineSpecializationData::getData ( ) const
inlineoverridevirtual

Gets a pointer for the data for the specialization data.

Returns
pointer to the data of the specialization data

Implements Engine::Rendering::PipelineSpecializationData.

Definition at line 98 of file PipelineMaterialPayload.h.

References data.

◆ getDataSize()

size_t Engine::Rendering::ComputePipelineSpecializationData::getDataSize ( ) const
inlineoverridevirtual

Gets the size of the data stored in the result of getData()

Returns
size of getData()

Implements Engine::Rendering::PipelineSpecializationData.

Definition at line 104 of file PipelineMaterialPayload.h.

References data.

◆ getMapEntries()

std::vector< VkSpecializationMapEntry > Engine::Rendering::ComputePipelineSpecializationData::getMapEntries ( ) const
overridevirtual

Gets the specialization data which will be uploaded to a shader.

Returns
returns a list of all specialization parameters for a compute shader. In this case thread count

Implements Engine::Rendering::PipelineSpecializationData.

◆ getThreadCount()

virtual uint32_t Engine::Rendering::ComputePipelineSpecializationData::getThreadCount ( ) const
inlinenodiscardvirtual

Getter for how man threads the compute shader this specialization is applied to should have.

Returns
how many threads the compute shader this specialization is applied to should have

Definition at line 110 of file PipelineMaterialPayload.h.

References data.

Member Data Documentation

◆ data

struct Engine::Rendering::ComputePipelineSpecializationData::Data Engine::Rendering::ComputePipelineSpecializationData::data
private

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