iShaderVariableContext Struct Reference
This is a baseclass for all interfaces which provides shadervariables both dynamically and static. More...
#include <ivideo/shader/shader.h>
Inheritance diagram for iShaderVariableContext:
Public Member Functions | |
virtual void | AddVariable (csShaderVariable *variable)=0 |
Add a variable to this context. | |
virtual void | Clear ()=0 |
Remove all variables from this context. | |
virtual const csRefArray< csShaderVariable > & | GetShaderVariables () const =0 |
Get Array of all ShaderVariables. | |
virtual csShaderVariable * | GetVariable (csStringID name) const =0 |
Get a named variable from this context. | |
csShaderVariable * | GetVariableAdd (csStringID name) |
Like GetVariable(), but it also adds it if doesn't exist already. | |
virtual bool | IsEmpty () const =0 |
Determine whether this SV context contains any variables at all. | |
virtual void | PushVariables (iShaderVarStack *stacks) const =0 |
Push the variables of this context onto the variable stacks supplied in the "stacks" argument. | |
virtual bool | RemoveVariable (csShaderVariable *variable)=0 |
Remove the given variable from this context. | |
virtual void | ReplaceVariable (csShaderVariable *variable)=0 |
Replace the current variable object of the same name as variable with the latter, add variable otherwise. |
Detailed Description
This is a baseclass for all interfaces which provides shadervariables both dynamically and static.
Definition at line 93 of file shader.h.
Member Function Documentation
virtual void iShaderVariableContext::AddVariable | ( | csShaderVariable * | variable | ) | [pure virtual] |
Add a variable to this context.
- Remarks:
- If a variable of the same name exists in the current context, its contents are replaced with those of variable.
Implemented in CS::ShaderVariableContextImpl.
Referenced by GetVariableAdd().
virtual void iShaderVariableContext::Clear | ( | ) | [pure virtual] |
virtual const csRefArray<csShaderVariable>& iShaderVariableContext::GetShaderVariables | ( | ) | const [pure virtual] |
virtual csShaderVariable* iShaderVariableContext::GetVariable | ( | csStringID | name | ) | const [pure virtual] |
Get a named variable from this context.
Implemented in CS::ShaderVariableContextImpl.
Referenced by GetVariableAdd().
csShaderVariable* iShaderVariableContext::GetVariableAdd | ( | csStringID | name | ) | [inline] |
Like GetVariable(), but it also adds it if doesn't exist already.
Definition at line 108 of file shader.h.
References AddVariable(), and GetVariable().
virtual bool iShaderVariableContext::IsEmpty | ( | ) | const [pure virtual] |
Determine whether this SV context contains any variables at all.
Implemented in CS::ShaderVariableContextImpl.
virtual void iShaderVariableContext::PushVariables | ( | iShaderVarStack * | stacks | ) | const [pure virtual] |
Push the variables of this context onto the variable stacks supplied in the "stacks" argument.
Implemented in CS::ShaderVariableContextImpl.
virtual bool iShaderVariableContext::RemoveVariable | ( | csShaderVariable * | variable | ) | [pure virtual] |
virtual void iShaderVariableContext::ReplaceVariable | ( | csShaderVariable * | variable | ) | [pure virtual] |
Replace the current variable object of the same name as variable with the latter, add variable otherwise.
- Remarks:
- This differs from AddVariable() as this method replaces the variable *object*, not just the contents.
Implemented in CS::ShaderVariableContextImpl.
The documentation for this struct was generated from the following file:
- ivideo/shader/shader.h
Generated for Crystal Space by doxygen 1.4.7