Inviwo 0.9.12-pre
Inviwo documentation
Loading...
Searching...
No Matches
inviwo::MeshShaderCache Class Reference

Keeps a set of shaders for various mesh configs. More...

#include <meshshadercache.h>

Classes

struct  Requirement
 

Public Types

enum  RequireBuffer { Mandatory , Optional }
 
using GetStateFunctor = std::function<int(const Mesh&, Mesh::MeshInfo)>
 
using UpdateShaderFunctor = std::function<void(int, Shader&)>
 

Public Member Functions

 MeshShaderCache (std::vector< std::pair< ShaderType, std::shared_ptr< const ShaderResource > > > items, std::vector< Requirement > requirements, std::function< void(Shader &)> configureShader)
 
 MeshShaderCache (std::vector< std::pair< ShaderType, std::string > > items, std::vector< Requirement > requirements, std::function< void(Shader &)> configureShader)
 
 MeshShaderCache (const MeshShaderCache &)=delete
 
 MeshShaderCache (MeshShaderCache &&)=delete
 
MeshShaderCacheoperator= (const MeshShaderCache &)=delete
 
MeshShaderCacheoperator= (MeshShaderCache &&)=delete
 
ShadergetShader (const Mesh &mesh, std::optional< Mesh::MeshInfo > meshInfo=std::nullopt)
 
std::map< std::vector< int >, Shader > & getShaders ()
 
void addState (GetStateFunctor getState, UpdateShaderFunctor updateShader)
 

Detailed Description

Keeps a set of shaders for various mesh configs.


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