OGRE
1.10.12
Object-Oriented Graphics Rendering Engine
|
A class that represents a shader based program function. More...
#include <OgreShaderFunction.h>
Public Types | |
enum | FunctionType { FFT_INTERNAL, FFT_VS_MAIN, FFT_PS_MAIN } |
Public Member Functions | |
void | addAtomAssign (ParameterPtr lhs, ParameterPtr rhs, int groupOrder) |
shorthand for a simple assignment "a = b;" More... | |
void | addAtomInstance (FunctionAtom *atomInstance) |
Add a function atom instance to this function. More... | |
void | addInputParameter (ParameterPtr parameter) |
Add input parameter to this function. More... | |
void | addOutputParameter (ParameterPtr parameter) |
Add output parameter to this function. More... | |
void | deleteAllInputParameters () |
Delete all input parameters from this function. More... | |
void | deleteAllOutputParameters () |
Delete all output parameters from this function. More... | |
bool | deleteAtomInstance (FunctionAtom *atomInstance) |
Delete a function atom instance from this function. More... | |
void | deleteInputParameter (ParameterPtr parameter) |
Delete input parameter from this function. More... | |
void | deleteOutputParameter (ParameterPtr parameter) |
Delete output parameter from this function. More... | |
const FunctionAtomInstanceList & | getAtomInstances () |
Return list of atom instances composing this function. More... | |
const String & | getDescription () const |
Get the description of this function. More... | |
FunctionType | getFunctionType () const |
get function type. More... | |
const ShaderParameterList & | getInputParameters () const |
Return a list of input parameters. More... | |
const ShaderParameterList & | getLocalParameters () const |
Return a list of local parameters. More... | |
const String & | getName () const |
Get the name of this function. More... | |
const ShaderParameterList & | getOutputParameters () const |
Return a list of output parameters. More... | |
ParameterPtr | getParameterByContent (const ShaderParameterList ¶meterList, const Parameter::Content content, GpuConstantType type) |
Get parameter by a given content and type from the given parameter list. More... | |
ParameterPtr | resolveInputParameter (Parameter::Semantic semantic, int index, const Parameter::Content content, GpuConstantType type) |
Resolve input parameter of this function. More... | |
ParameterPtr | resolveLocalParameter (Parameter::Semantic semantic, int index, const String &name, GpuConstantType type) |
Resolve local parameter of this function. More... | |
ParameterPtr | resolveLocalParameter (Parameter::Semantic semantic, int index, const Parameter::Content content, GpuConstantType type) |
Resolve local parameter of this function. More... | |
ParameterPtr | resolveOutputParameter (Parameter::Semantic semantic, int index, const Parameter::Content content, GpuConstantType type) |
Resolve output parameter of this function. More... | |
Static Public Member Functions | |
static ParameterPtr | getParameterByName (const ShaderParameterList ¶meterList, const String &name) |
Get parameter by a given name from the given parameter list. More... | |
static ParameterPtr | getParameterBySemantic (const ShaderParameterList ¶meterList, const Parameter::Semantic semantic, int index) |
Get parameter by a given semantic and index from the given parameter list. More... | |
Friends | |
class | Program |
A class that represents a shader based program function.
|
inline |
Get the name of this function.
|
inline |
Get the description of this function.
ParameterPtr Ogre::RTShader::Function::resolveInputParameter | ( | Parameter::Semantic | semantic, |
int | index, | ||
const Parameter::Content | content, | ||
GpuConstantType | type | ||
) |
Resolve input parameter of this function.
semantic | The desired parameter semantic. |
index | The index of the desired parameter. |
content | The content of the parameter. |
type | The type of the desired parameter. Return parameter instance in case of that resolve operation succeeded. |
ParameterPtr Ogre::RTShader::Function::resolveOutputParameter | ( | Parameter::Semantic | semantic, |
int | index, | ||
const Parameter::Content | content, | ||
GpuConstantType | type | ||
) |
Resolve output parameter of this function.
semantic | The desired parameter semantic. |
index | The index of the desired parameter. |
content | The content of the parameter. |
type | The type of the desired parameter. Return parameter instance in case of that resolve operation succeeded. |
ParameterPtr Ogre::RTShader::Function::resolveLocalParameter | ( | Parameter::Semantic | semantic, |
int | index, | ||
const String & | name, | ||
GpuConstantType | type | ||
) |
Resolve local parameter of this function.
semantic | The desired parameter semantic. |
index | The index of the desired parameter. |
name | The name of the parameter. |
type | The type of the desired parameter. Return parameter instance in case of that resolve operation succeeded. |
ParameterPtr Ogre::RTShader::Function::resolveLocalParameter | ( | Parameter::Semantic | semantic, |
int | index, | ||
const Parameter::Content | content, | ||
GpuConstantType | type | ||
) |
Resolve local parameter of this function.
semantic | The desired parameter semantic. |
index | The index of the desired parameter. |
content | The content of the parameter. |
type | The type of the desired parameter. Return parameter instance in case of that resolve operation succeeded. |
|
static |
Get parameter by a given name from the given parameter list.
parameterList | The parameters list to look in. |
name | The name of the parameter to search in the list. |
|
static |
Get parameter by a given semantic and index from the given parameter list.
parameterList | The parameters list to look in. |
semantic | The semantic of the parameter to search in the list. |
index | The index of the parameter to search in the list. |
ParameterPtr Ogre::RTShader::Function::getParameterByContent | ( | const ShaderParameterList & | parameterList, |
const Parameter::Content | content, | ||
GpuConstantType | type | ||
) |
Get parameter by a given content and type from the given parameter list.
parameterList | The parameters list to look in. |
content | The content of the parameter to search in the list. |
type | The type of the parameter to search in the list. |
|
inline |
Return a list of input parameters.
|
inline |
Return a list of output parameters.
|
inline |
Return a list of local parameters.
void Ogre::RTShader::Function::addAtomInstance | ( | FunctionAtom * | atomInstance | ) |
Add a function atom instance to this function.
atomInstance | The atom instance to add. |
void Ogre::RTShader::Function::addAtomAssign | ( | ParameterPtr | lhs, |
ParameterPtr | rhs, | ||
int | groupOrder | ||
) |
shorthand for a simple assignment "a = b;"
bool Ogre::RTShader::Function::deleteAtomInstance | ( | FunctionAtom * | atomInstance | ) |
Delete a function atom instance from this function.
atomInstance | The atom instance to OGRE_DELETE. |
const FunctionAtomInstanceList& Ogre::RTShader::Function::getAtomInstances | ( | ) |
Return list of atom instances composing this function.
(Const version)
void Ogre::RTShader::Function::addInputParameter | ( | ParameterPtr | parameter | ) |
Add input parameter to this function.
void Ogre::RTShader::Function::addOutputParameter | ( | ParameterPtr | parameter | ) |
Add output parameter to this function.
void Ogre::RTShader::Function::deleteInputParameter | ( | ParameterPtr | parameter | ) |
Delete input parameter from this function.
void Ogre::RTShader::Function::deleteOutputParameter | ( | ParameterPtr | parameter | ) |
Delete output parameter from this function.
void Ogre::RTShader::Function::deleteAllInputParameters | ( | ) |
Delete all input parameters from this function.
void Ogre::RTShader::Function::deleteAllOutputParameters | ( | ) |
Delete all output parameters from this function.
FunctionType Ogre::RTShader::Function::getFunctionType | ( | ) | const |
get function type.
|
friend |