csShaderProgram Class Reference
[Common Plugin Classes]
Base class for iShaderProgram plugins.
More...
#include <csplugincommon/shader/shaderprogram.h>
Inherits scfImplementation2<csShaderProgram, iShaderProgram, iShaderDestinationResolver>.
Classes | |
struct | ProgramParam |
Program parameter, either a SV reference or a const value. More... | |
struct | VariableMapEntry |
Holder of variable mapping. More... | |
Public 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 iShaderVarStack *stacks, const ProgramParam ¶m, float defVal) |
Query the value of a ProgramParam variable by reading the constant or resolving the shader variable. | |
csReversibleTransform | GetParamTransformVal (const iShaderVarStack *stacks, const ProgramParam ¶m, const csReversibleTransform &defVal) |
Query the value of a ProgramParam variable by reading the constant or resolving the shader variable. | |
csVector4 | GetParamVectorVal (const iShaderVarStack *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 | |
csString | description |
Program description. | |
bool | doVerbose |
Whether the shader program should report additional information during runtime. | |
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 | |
csArray< VariableMapEntry > | variablemap |
Variable mappings. |
Detailed Description
Base class for iShaderProgram plugins.Provides basic services such as holding and of parameter mapping information, basic program data and data dumping.
Definition at line 59 of file shaderprogram.h.
Member Enumeration Documentation
Member Function Documentation
void csShaderProgram::DumpProgramInfo | ( | csString & | output | ) | [protected] |
Dump all program info to output.
void csShaderProgram::DumpVariableMappings | ( | csString & | output | ) | [protected] |
Dump variable mapping.
float csShaderProgram::GetParamFloatVal | ( | const iShaderVarStack * | stacks, | |
const ProgramParam & | param, | |||
float | defVal | |||
) | [inline, protected] |
Query the value of a ProgramParam variable by reading the constant or resolving the shader variable.
Definition at line 239 of file shaderprogram.h.
csReversibleTransform csShaderProgram::GetParamTransformVal | ( | const iShaderVarStack * | stacks, | |
const ProgramParam & | param, | |||
const csReversibleTransform & | defVal | |||
) | [inline, protected] |
Query the value of a ProgramParam variable by reading the constant or resolving the shader variable.
Definition at line 222 of file shaderprogram.h.
csVector4 csShaderProgram::GetParamVectorVal | ( | const iShaderVarStack * | stacks, | |
const ProgramParam & | param, | |||
const csVector4 & | defVal | |||
) | [inline, protected] |
Query the value of a ProgramParam variable by reading the constant or resolving the shader variable.
Definition at line 205 of file shaderprogram.h.
csPtr<iDataBuffer> csShaderProgram::GetProgramData | ( | ) | [protected] |
Get the raw program data.
iDocumentNode* csShaderProgram::GetProgramNode | ( | ) | [protected] |
Get the program node.
bool csShaderProgram::ParseCommon | ( | iDocumentNode * | child | ) | [protected] |
Parse common properties and variablemapping.
bool csShaderProgram::ParseProgramParam | ( | iDocumentNode * | node, | |
ProgramParam & | param, | |||
uint | types = ~0 | |||
) | [inline, protected] |
Parse program parameter node.
- See also:
- ProgramParamParser::ParseProgramParam
Definition at line 138 of file shaderprogram.h.
Member Data Documentation
csString csShaderProgram::description [protected] |
bool csShaderProgram::doVerbose [protected] |
Whether the shader program should report additional information during runtime.
Definition at line 186 of file shaderprogram.h.
csRef<iFile> csShaderProgram::programFile [protected] |
csString csShaderProgram::programFileName [protected] |
csRef<iDocumentNode> csShaderProgram::programNode [protected] |
csArray<VariableMapEntry> csShaderProgram::variablemap [protected] |
The documentation for this class was generated from the following file:
- csplugincommon/shader/shaderprogram.h
Generated for Crystal Space 1.4.0 by doxygen 1.5.8