OGRE
1.11.6
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) |
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... | |
ParameterPtr | getInputParameter (Parameter::Content content, GpuConstantType type=GCT_UNKNOWN) |
get input parameter by content More... | |
const ShaderParameterList & | getInputParameters () const |
Return a list of input parameters. More... | |
ParameterPtr | getLocalParameter (Parameter::Content content) |
get local parameter by content More... | |
ParameterPtr | getLocalParameter (const String &name) |
const ShaderParameterList & | getLocalParameters () const |
Return a list of local parameters. More... | |
const String & | getName () const |
Get the name of this function. More... | |
ParameterPtr | getOutputParameter (Parameter::Content content, GpuConstantType type=GCT_UNKNOWN) |
get output parameter by content More... | |
const ShaderParameterList & | getOutputParameters () const |
Return a list of output parameters. More... | |
FunctionStageRef | getStage (size_t s) |
get a FFPShaderStage of this function More... | |
ParameterPtr | resolveInputParameter (Parameter::Semantic semantic, int index, const Parameter::Content content, GpuConstantType type) |
ParameterPtr | resolveInputParameter (Parameter::Content content, GpuConstantType type=GCT_UNKNOWN) |
Resolve input parameter of this function. More... | |
ParameterPtr | resolveInputParameter (const ParameterPtr &out) |
resolve input parameter from previous output More... | |
ParameterPtr | resolveLocalParameter (Parameter::Semantic semantic, int index, const String &name, GpuConstantType type) |
ParameterPtr | resolveLocalParameter (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) |
ParameterPtr | resolveLocalParameter (Parameter::Content content, GpuConstantType type=GCT_UNKNOWN) |
Resolve local parameter of this function. More... | |
ParameterPtr | resolveOutputParameter (Parameter::Semantic semantic, int index, const Parameter::Content content, GpuConstantType type) |
ParameterPtr | resolveOutputParameter (Parameter::Content content, GpuConstantType type=GCT_UNKNOWN) |
Resolve output parameter of this function. More... | |
Static Public Member Functions | |
static ParameterPtr | getParameterByContent (const ShaderParameterList ¶meterList, const Parameter::Content content, GpuConstantType type) |
static ParameterPtr | getParameterByName (const ShaderParameterList ¶meterList, const String &name) |
static ParameterPtr | getParameterBySemantic (const ShaderParameterList ¶meterList, const Parameter::Semantic semantic, int index) |
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 | ||
) |
|
inline |
Resolve input parameter of this function.
content | The content of the parameter. |
type | The type of the desired parameter. |
References Ogre::RTShader::Parameter::SPS_UNKNOWN.
|
inline |
resolve input parameter from previous output
References OgreAssert.
|
inline |
get input parameter by content
content |
ParameterPtr Ogre::RTShader::Function::resolveOutputParameter | ( | Parameter::Semantic | semantic, |
int | index, | ||
const Parameter::Content | content, | ||
GpuConstantType | type | ||
) |
|
inline |
Resolve output parameter of this function.
content | The content of the parameter. |
type | The type of the desired parameter. |
References Ogre::RTShader::Parameter::SPS_UNKNOWN.
|
inline |
get output parameter by content
content |
ParameterPtr Ogre::RTShader::Function::resolveLocalParameter | ( | Parameter::Semantic | semantic, |
int | index, | ||
const String & | name, | ||
GpuConstantType | type | ||
) |
|
inline |
Resolve local parameter of this function.
name | The name of the parameter. |
type | The type of the desired parameter. Return parameter instance in case of that resolve operation succeeded. |
References Ogre::RTShader::Parameter::SPS_UNKNOWN.
ParameterPtr Ogre::RTShader::Function::resolveLocalParameter | ( | Parameter::Semantic | semantic, |
int | index, | ||
const Parameter::Content | content, | ||
GpuConstantType | type | ||
) |
|
inline |
Resolve local parameter of this function.
content | The content of the parameter. |
type | The type of the desired parameter. Return parameter instance in case of that resolve operation succeeded. |
References Ogre::RTShader::Parameter::SPS_UNKNOWN.
|
inline |
get local parameter by content
content |
References Ogre::GCT_UNKNOWN.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
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 | ||
) |
|
inline |
get a FFPShaderStage of this function
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 |