A class that represents function invocation code from shader based program function. More...
#include <OgreShaderFunctionAtom.h>
Classes | |
struct | FunctionInvocationCompare |
Comparator function to be used for comparisons. More... | |
struct | FunctionInvocationLessThan |
Comparator function to be used for sorting. More... | |
Public Types | |
typedef vector< Operand >::type | OperandVector |
Public Member Functions | |
FunctionInvocation (const String &functionName, int groupOrder, int internalOrder, String returnType="void") | |
Class constructor. More... | |
FunctionInvocation (const FunctionInvocation &rhs) | |
Copy constructor. More... | |
virtual const String & | getFunctionAtomType () |
const String & | getFunctionName () const |
Return the function name. More... | |
int | getGroupExecutionOrder () const |
Get the group execution order of this function atom. More... | |
int | getInternalExecutionOrder () const |
Get an internal execution order within a group of this function atom. More... | |
OperandVector & | getOperandList () |
Get a list of parameters this function invocation will use in the function call as arguments. More... | |
const String & | getReturnType () const |
Return the return type. More... | |
void | operator delete (void *ptr) |
void | operator delete (void *ptr, void *) |
void | operator delete (void *ptr, const char *, int, const char *) |
void | operator delete[] (void *ptr) |
void | operator delete[] (void *ptr, const char *, int, const char *) |
void * | operator new (size_t sz, const char *file, int line, const char *func) |
operator new, with debug line info More... | |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *ptr) |
placement operator new More... | |
void * | operator new[] (size_t sz, const char *file, int line, const char *func) |
array operator new, with debug line info More... | |
void * | operator new[] (size_t sz) |
bool | operator!= (const FunctionInvocation &rhs) const |
Determines if the current object is not equal to the compared one. More... | |
bool | operator< (const FunctionInvocation &rhs) const |
Determines if the current object is less than the compared one. More... | |
bool | operator== (const FunctionInvocation &rhs) const |
Determines if the current object is equal to the compared one. More... | |
void | pushOperand (ParameterPtr parameter, Operand::OpSemantic opSemantic, int opMask=Operand::OPM_ALL, int indirectionLevel=0) |
Push a new operand (on the end) to the function. More... | |
virtual void | writeSourceCode (std::ostream &os, const String &targetLanguage) const |
Static Public Attributes | |
static String | Type |
The type of this class. More... | |
Protected Attributes | |
String | mFunctionName |
int | mGroupExecutionOrder |
int | mInternalExecutionOrder |
OperandVector | mOperands |
String | mReturnType |
A class that represents function invocation code from shader based program function.
Definition at line 178 of file OgreShaderFunctionAtom.h.
typedef vector<Operand>::type Ogre::RTShader::FunctionInvocation::OperandVector |
Definition at line 182 of file OgreShaderFunctionAtom.h.
Ogre::RTShader::FunctionInvocation::FunctionInvocation | ( | const String & | functionName, |
int | groupOrder, | ||
int | internalOrder, | ||
String | returnType = "void" |
||
) |
Class constructor.
functionName | The name of the function to invoke. |
groupOrder | The group order of this invocation. |
internalOrder | The internal order of this invocation. |
returnType | The return type of the used function. |
Ogre::RTShader::FunctionInvocation::FunctionInvocation | ( | const FunctionInvocation & | rhs | ) |
Copy constructor.
|
inlinevirtual |
Implements Ogre::RTShader::FunctionAtom.
Definition at line 203 of file OgreShaderFunctionAtom.h.
|
inline |
Return the function name.
Definition at line 217 of file OgreShaderFunctionAtom.h.
|
inherited |
Get the group execution order of this function atom.
|
inherited |
Get an internal execution order within a group of this function atom.
|
inline |
Get a list of parameters this function invocation will use in the function call as arguments.
Definition at line 206 of file OgreShaderFunctionAtom.h.
|
inline |
Return the return type.
Definition at line 220 of file OgreShaderFunctionAtom.h.
|
inlineinherited |
Definition at line 96 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 102 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 108 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 113 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 119 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
operator new, with debug line info
Definition at line 68 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 73 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
placement operator new
Definition at line 79 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
array operator new, with debug line info
Definition at line 86 of file OgreMemoryAllocatedObject.h.
|
inlineinherited |
Definition at line 91 of file OgreMemoryAllocatedObject.h.
bool Ogre::RTShader::FunctionInvocation::operator!= | ( | const FunctionInvocation & | rhs | ) | const |
Determines if the current object is not equal to the compared one.
bool Ogre::RTShader::FunctionInvocation::operator< | ( | const FunctionInvocation & | rhs | ) | const |
Determines if the current object is less than the compared one.
bool Ogre::RTShader::FunctionInvocation::operator== | ( | const FunctionInvocation & | rhs | ) | const |
Determines if the current object is equal to the compared one.
void Ogre::RTShader::FunctionInvocation::pushOperand | ( | ParameterPtr | parameter, |
Operand::OpSemantic | opSemantic, | ||
int | opMask = Operand::OPM_ALL , |
||
int | indirectionLevel = 0 |
||
) |
Push a new operand (on the end) to the function.
parameter | A function parameter. |
opSemantic | The in/out semantic of the parameter. |
opMask | The field mask of the parameter. |
indirectionLevel | The level of nesting inside brackets |
|
virtual |
Implements Ogre::RTShader::FunctionAtom.
|
protected |
Definition at line 252 of file OgreShaderFunctionAtom.h.
|
protectedinherited |
Definition at line 73 of file OgreShaderFunctionAtom.h.
|
protectedinherited |
Definition at line 75 of file OgreShaderFunctionAtom.h.
|
protected |
Definition at line 254 of file OgreShaderFunctionAtom.h.
|
protected |
Definition at line 253 of file OgreShaderFunctionAtom.h.
|
static |
The type of this class.
Definition at line 248 of file OgreShaderFunctionAtom.h.