Inviwo 0.9.12-pre
Inviwo documentation
|
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 | |
MeshShaderCache & | operator= (const MeshShaderCache &)=delete |
MeshShaderCache & | operator= (MeshShaderCache &&)=delete |
Shader & | getShader (const Mesh &mesh, std::optional< Mesh::MeshInfo > meshInfo=std::nullopt) |
std::map< std::vector< int >, Shader > & | getShaders () |
void | addState (GetStateFunctor getState, UpdateShaderFunctor updateShader) |
Keeps a set of shaders for various mesh configs.