## Public API Reference

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

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# csShaderVariableContext Class Reference

Simple implementation for iShaderVariableContext. More...

`#include <csgfx/shadervarcontext.h>`

Inheritance diagram for csShaderVariableContext:

[legend]
List of all members.

## Public Member Functions

virtual void | AddVariable (csShaderVariable *variable)
| Add a variable to this context.
virtual void | Clear ()
| Remove all variables from this context.
const csRefArray< csShaderVariable > & | GetShaderVariables () const
| Get Array of all ShaderVariables.
virtual csShaderVariable * | GetVariable (csStringID name) const
| Get a named variable from this context.
virtual bool | IsEmpty () const
| Determine whether this SV context contains any variables at all.
virtual void | PushVariables (csShaderVarStack &stacks) const
| Push the variables of this context onto the variable stacks supplied in the "stacks" argument.
virtual void | ReplaceVariable (csShaderVariable *variable)
| Replace the current variable object of the same name as variable with the latter, add variable otherwise.

## Detailed Description

Simple implementation for iShaderVariableContext.

Definition at line 37 of file shadervarcontext.h.

## Member Function Documentation

virtual void csShaderVariableContext::AddVariable | ( | csShaderVariable * | variable | ) | `[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.

Implements iShaderVariableContext.

virtual void csShaderVariableContext::Clear | ( |  | ) | `[inline, virtual]`

| Remove all variables from this context. Implements iShaderVariableContext. Definition at line 57 of file shadervarcontext.h.

const csRefArray<csShaderVariable>& csShaderVariableContext::GetShaderVariables | ( |  | ) | const`[inline, virtual]`

| Get Array of all ShaderVariables. Implements iShaderVariableContext. Definition at line 50 of file shadervarcontext.h.

virtual csShaderVariable* csShaderVariableContext::GetVariable | ( | csStringID | name | ) | const`[virtual]`

| Get a named variable from this context. Implements iShaderVariableContext.

virtual bool csShaderVariableContext::IsEmpty | ( |  | ) | const`[inline, virtual]`

| Determine whether this SV context contains any variables at all. Implements iShaderVariableContext. Definition at line 55 of file shadervarcontext.h.

virtual void csShaderVariableContext::PushVariables | ( | csShaderVarStack & | stacks | ) | const`[virtual]`

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

virtual void csShaderVariableContext::ReplaceVariable | ( | csShaderVariable * | variable | ) | `[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.

Implements iShaderVariableContext.

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

- csgfx/shadervarcontext.h