csShaderProgram Class Reference
Baseclass for iShaderProgram plugins. More...
#include <csplugincommon/shader/shaderprogram.h>
Inheritance diagram for csShaderProgram:

Public Member Functions | |
virtual int | ResolveTextureBinding (const char *) |
When the destination of a texture binding wasn't recognized, the FP is asked whether it can provide a TU number for it. | |
Public Attributes | |
SCF_DECLARE_IBASE | |
Protected Types | |
enum | ProgramParamType |
Expected/accepted types for a program parameter. More... | |
Protected Member Functions | |
void | DumpProgramInfo (csString &output) |
Dump all program info to output. | |
void | DumpVariableMappings (csString &output) |
Dump variable mapping. | |
csPtr< iDataBuffer > | GetProgramData () |
Get the raw program data. | |
iDocumentNode * | GetProgramNode () |
Get the program node. | |
bool | ParseCommon (iDocumentNode *child) |
Parse common properties and variablemapping. | |
bool | ParseProgramParam (iDocumentNode *node, ProgramParam ¶m, uint types=~0) |
Parse program parameter node. | |
float | GetParamFloatVal (const csShaderVarStack &stacks, const ProgramParam ¶m, float defVal) |
csVector4 | GetParamVectorVal (const csShaderVarStack &stacks, const ProgramParam ¶m, const csVector4 &defVal) |
Query the value of a ProgramParam variable by reading the constant or resolving the shader variable. | |
Protected Attributes | |
csStringHash | commonTokens |
csString | description |
Program description. | |
bool | doVerbose |
Whether the shader program should report additional information during runtime. | |
iObjectRegistry * | objectReg |
csRef< iFile > | programFile |
File the program is loaded from (if any). | |
csString | programFileName |
Filename of program. | |
csRef< iDocumentNode > | programNode |
iDocumentNode the program is loaded from | |
csRef< iStringSet > | strings |
csRef< iSyntaxService > | synsrv |
csArray< VariableMapEntry > | variablemap |
Classes | |
struct | ProgramParam |
Program parameter, either a SV reference or a const value. More... | |
struct | VariableMapEntry |
Holder of variable mapping. More... |
Detailed Description
Baseclass for iShaderProgram plugins.Provides basic services such as holding and of parameter mapping information, basic program data and data dumping.
Definition at line 43 of file shaderprogram.h.
Member Enumeration Documentation
|
Expected/accepted types for a program parameter.
Definition at line 63 of file shaderprogram.h. |
Member Function Documentation
|
Dump all program info to output.
|
|
Dump variable mapping.
|
|
Query the value of a ProgramParam variable by reading the constant or resolving the shader variable.
Definition at line 155 of file shaderprogram.h. References csGetShaderVariableFromStack(), csRef< T >::IsValid(), csShaderProgram::ProgramParam::name, and csShaderProgram::ProgramParam::var. |
|
Get the raw program data.
|
|
Get the program node.
|
|
Parse common properties and variablemapping.
|
|
Parse program parameter node.
|
|
When the destination of a texture binding wasn't recognized, the FP is asked whether it can provide a TU number for it.
Implements iShaderTUResolver. Definition at line 198 of file shaderprogram.h. |
Member Data Documentation
|
Program description.
Definition at line 122 of file shaderprogram.h. |
|
Whether the shader program should report additional information during runtime.
Definition at line 136 of file shaderprogram.h. |
|
File the program is loaded from (if any).
Definition at line 127 of file shaderprogram.h. |
|
Filename of program.
Definition at line 130 of file shaderprogram.h. |
|
iDocumentNode the program is loaded from
Definition at line 125 of file shaderprogram.h. |
The documentation for this class was generated from the following file:
- csplugincommon/shader/shaderprogram.h
Generated for Crystal Space by doxygen 1.4.4