Foray Library
rapid prototyping framework for crossplatform development of vulkan hardware ray tracing applications
Loading...
Searching...
No Matches
Classes | Public Member Functions | Protected Attributes | List of all members
foray::rtpipe::RtShaderCollection Class Reference

Helper class to manage unique Rt ShaderModules. More...

#include <foray_rtshadercollection.hpp>

Classes

struct  Entry
 

Public Member Functions

void Add (core::ShaderModule *module, RtShaderType type, const char *entryPointName="main")
 Add a shadermodule. If a new module, also adds an entry to the ShaderStageCi vector.
 
void Clear ()
 Reset.
 
uint32_t IndexOf (core::ShaderModule *module) const
 Get index of a module in the ShaderStageCi vector.
 

Protected Attributes

std::unordered_map< core::ShaderModule *, EntrymEntries
 
std::vector< VkPipelineShaderStageCreateInfo > mShaderStageCis
 

Detailed Description

Helper class to manage unique Rt ShaderModules.

Member Function Documentation

◆ Add()

void foray::rtpipe::RtShaderCollection::Add ( core::ShaderModule module,
RtShaderType  type,
const char *  entryPointName = "main" 
)

Add a shadermodule. If a new module, also adds an entry to the ShaderStageCi vector.

Parameters
moduleModule
typeShader Type

◆ Clear()

void foray::rtpipe::RtShaderCollection::Clear ( )

Reset.

◆ IndexOf()

uint32_t foray::rtpipe::RtShaderCollection::IndexOf ( core::ShaderModule module) const

Get index of a module in the ShaderStageCi vector.

Member Data Documentation

◆ mEntries

std::unordered_map<core::ShaderModule*, Entry> foray::rtpipe::RtShaderCollection::mEntries
protected

◆ mShaderStageCis

std::vector<VkPipelineShaderStageCreateInfo> foray::rtpipe::RtShaderCollection::mShaderStageCis
protected

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