iShaderVariableContext Struct Reference (Crystal Space 2.0 Public API Reference)

| ## Public API Reference

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions
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:

List of all members.

## 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 (CS::ShaderVarStringID name) const =0
| Get a named variable from this context.
csShaderVariable * | GetVariableAdd (CS::ShaderVarStringID 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 (csShaderVariableStack &stack) 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 bool | RemoveVariable (CS::ShaderVarStringID name)=0
| Remove the variable with the given name 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 269 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::Graphics::OverlayShaderVariableContextImpl, and CS::Graphics::ShaderVariableContextImpl.

virtual void iShaderVariableContext::Clear | ( |  | ) | `[pure virtual]`

Remove all variables from this context.

Implemented in CS::Graphics::OverlayShaderVariableContextImpl, and CS::Graphics::ShaderVariableContextImpl.

virtual const csRefArray<csShaderVariable>& iShaderVariableContext::GetShaderVariables | ( |  | ) | const`[pure virtual]`

Get Array of all ShaderVariables.

Implemented in CS::Graphics::OverlayShaderVariableContextImpl, and CS::Graphics::ShaderVariableContextImpl.

virtual csShaderVariable* iShaderVariableContext::GetVariable | ( | CS::ShaderVarStringID | name | ) | const`[pure virtual]`

Get a named variable from this context.

Implemented in CS::Graphics::OverlayShaderVariableContextImpl, and CS::Graphics::ShaderVariableContextImpl.

csShaderVariable* iShaderVariableContext::GetVariableAdd | ( | CS::ShaderVarStringID | name | ) | `[inline]`

Like GetVariable(), but it also adds it if doesn't exist already.

Definition at line 284 of file shader.h.

virtual bool iShaderVariableContext::IsEmpty | ( |  | ) | const`[pure virtual]`

Determine whether this SV context contains any variables at all.

Implemented in CS::Graphics::OverlayShaderVariableContextImpl, and CS::Graphics::ShaderVariableContextImpl.

virtual void iShaderVariableContext::PushVariables | ( | csShaderVariableStack & | stack | ) | const`[pure virtual]`

Push the variables of this context onto the variable stacks supplied in the "stacks" argument.

Implemented in CS::Graphics::OverlayShaderVariableContextImpl, and CS::Graphics::ShaderVariableContextImpl.

virtual bool iShaderVariableContext::RemoveVariable | ( | csShaderVariable * | variable | ) | `[pure virtual]`

Remove the given variable from this context.

Implemented in CS::Graphics::OverlayShaderVariableContextImpl, and CS::Graphics::ShaderVariableContextImpl.

virtual bool iShaderVariableContext::RemoveVariable | ( | CS::ShaderVarStringID | name | ) | `[pure virtual]`

Remove the variable with the given name from this context.

Implemented in CS::Graphics::OverlayShaderVariableContextImpl, and CS::Graphics::ShaderVariableContextImpl.

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::Graphics::OverlayShaderVariableContextImpl, and CS::Graphics::ShaderVariableContextImpl.

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

- ivideo/shader/shader.h