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 <modules/basegl/datastructures/meshshadercache.h>

Classes

struct  Requirement

Public Types

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

Public Member Functions

void addState (GetStateFunctor getState, UpdateShaderFunctor updateShader)
ShadergetShader (const Mesh &mesh, std::optional< Mesh::MeshInfo > meshInfo=std::nullopt)
std::map< std::vector< int >, Shader > & getShaders ()
 MeshShaderCache (const MeshShaderCache &)=delete
 MeshShaderCache (MeshShaderCache &&)=delete
 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 & operator= (const MeshShaderCache &)=delete
MeshShaderCache & operator= (MeshShaderCache &&)=delete

Detailed Description

Keeps a set of shaders for various mesh configs.


The documentation for this class was generated from the following file:
  • modules/basegl/include/modules/basegl/datastructures/meshshadercache.h