#include <uniformcontainer.h>
Public Types | |
| using | UniformStructInstanceList = std::vector< std::unique_ptr< UniformStructInstance > > |
| using | BufferBindingInstanceList = std::vector< std::unique_ptr< BufferBindingInstance > > |
| using | SamplerInstanceList = std::vector< std::unique_ptr< SamplerInstance > > |
| using | ShaderConstantInstanceList = std::vector< std::unique_ptr< ShaderConstantInstance > > |
Public Member Functions | |
| UniformContainer ()=default | |
| virtual | ~UniformContainer ()=default |
| UniformContainer (const UniformContainer &)=delete | |
| UniformContainer & | operator= (const UniformContainer &)=delete |
| UniformStructInstance * | findUniform (const std::string &name) const |
| SamplerInstance * | findSampler (const std::string &name) const |
| BufferBindingInstance * | findBinding (const std::string &name) const |
| ShaderConstantInstance * | findConstant (const std::string &name) const |
| const SamplerInstanceList & | getSamplers () const |
| const BufferBindingInstanceList & | getBufferBindings () const |
| const ShaderConstantInstanceList & | getConstants () const |
| const UniformStructInstanceList & | getUniformStructs () const |
Protected Member Functions | |
| UniformStructInstance & | createUniformRootStruct (const ShaderVariableStructDeclaration &declaration, const UniformCreatedCallback &uniformCreatedCallback) |
| BufferBindingInstance & | addBindingInstance (std::unique_ptr< BufferBindingInstance > instance) |
| SamplerInstance & | addSamplerInstance (std::unique_ptr< SamplerInstance > instance) |
| ShaderConstantInstance & | addConstantInstance (std::unique_ptr< ShaderConstantInstance > instance) |
Manages uniform struct and sampler instances. Every struct and sampler is tied to a shader declaration. The declaration acts as the interface to a uniform struct or sampler on a shader. Both the nap::Material and nap::MaterialInstance are a uniform container.
| using BufferBindingInstanceList = std::vector<std::unique_ptr<BufferBindingInstance> > |
| using SamplerInstanceList = std::vector<std::unique_ptr<SamplerInstance> > |
| using ShaderConstantInstanceList = std::vector<std::unique_ptr<ShaderConstantInstance> > |
| using UniformStructInstanceList = std::vector<std::unique_ptr<UniformStructInstance> > |
|
default |
|
virtualdefault |
|
delete |
|
protected |
|
protected |
|
protected |
|
protected |
| BufferBindingInstance* findBinding | ( | const std::string & | name | ) | const |
Tries to find a buffer binding instance with the given name.
| name | name of the buffer binding as declared in the shader. |
| ShaderConstantInstance* findConstant | ( | const std::string & | name | ) | const |
Tries to find a shader constant instance with the given name.
| name | name of the shader constant as declared in the shader. |
| SamplerInstance* findSampler | ( | const std::string & | name | ) | const |
Tries to find a sampler instance with the given name.
| name | the name of the sampler as declared in the shader. |
| UniformStructInstance* findUniform | ( | const std::string & | name | ) | const |
Tries to find a uniform struct instance with the given name.
| name | name of the uniform struct (ubo) as declared in the shader. |
| const BufferBindingInstanceList& getBufferBindings | ( | ) | const |
| const ShaderConstantInstanceList& getConstants | ( | ) | const |
| const SamplerInstanceList& getSamplers | ( | ) | const |
| const UniformStructInstanceList& getUniformStructs | ( | ) | const |
|
delete |