|
| ProgramProcessor () |
| Class constructor.
|
|
virtual | ~ProgramProcessor () |
| Class destructor.
|
|
virtual const String & | getTargetLanguage () const =0 |
| Return the target language of this processor.
|
|
void | operator delete (void *ptr) |
|
void | operator delete (void *ptr, const char *, int, const char *) |
|
void | operator delete (void *ptr, void *) |
|
void | operator delete[] (void *ptr) |
|
void | operator delete[] (void *ptr, const char *, int, const char *) |
|
void * | operator new (size_t sz) |
|
void * | operator new (size_t sz, const char *file, int line, const char *func) |
| operator new, with debug line info
|
|
void * | operator new (size_t sz, void *ptr) |
| placement operator new
|
|
void * | operator new[] (size_t sz) |
|
void * | operator new[] (size_t sz, const char *file, int line, const char *func) |
| array operator new, with debug line info
|
|
virtual bool | postCreateGpuPrograms (ProgramSet *programSet)=0 |
| Called after creation of the GPU programs.
|
|
virtual bool | preCreateGpuPrograms (ProgramSet *programSet)=0 |
| Called before creation of the GPU programs.
|
|
|
void | bindAutoParameters (Program *pCpuProgram, GpuProgramPtr pGpuProgram) |
| Bind the auto parameters for a given CPU and GPU program set.
|
|
void | buildMergeCombinations () |
| Build parameter merging combinations.
|
|
void | buildParameterReferenceMap (FunctionAtomInstanceList &funcAtomList, ParameterOperandMap ¶msRefMap) |
| Builds a map between parameter and all the references to it.
|
|
void | buildTexcoordTable (const ShaderParameterList ¶mList, ShaderParameterList outParamsTable[4]) |
| Internal function that builds parameters table.
|
|
virtual bool | compactVsOutputs (Function *vsMain, Function *fsMain) |
| Compact the vertex shader output registers.
|
|
void | countVsTexcoordOutputs (Function *vsMain, int &outTexCoordSlots, int &outTexCoordFloats) |
| Internal method that counts vertex shader texcoord output slots and output floats.
|
|
void | generateLocalSplitParameters (Function *func, GpuProgramType progType, MergeParameterList &mergedParams, ShaderParameterList &splitParams, LocalParameterMap &localParamsMap) |
| Generates local parameters for the split parameters and perform packing/unpacking operation using them.
|
|
void | mergeParameters (ShaderParameterList paramsTable[4], MergeParameterList &mergedParams, ShaderParameterList &splitParams) |
| Merge the parameters from the given table.
|
|
bool | mergeParametersByCombination (const MergeCombination &combination, ShaderParameterList paramsTable[4], MergeParameter *mergedParameter) |
| Internal function that creates merged parameter from given combination.
|
|
void | mergeParametersByPredefinedCombinations (ShaderParameterList paramsTable[4], MergeParameterList &mergedParams) |
| Internal function that creates merged parameter using pre defined combinations.
|
|
void | mergeParametersReminders (ShaderParameterList paramsTable[4], MergeParameterList &mergedParams, ShaderParameterList &splitParams) |
| Merge reminders parameters that could not be merged into one slot using the predefined combinations.
|
|
void | rebuildFunctionInvocations (FunctionAtomInstanceList &funcAtomList, MergeParameterList &mergedParams, LocalParameterMap &localParamsMap) |
| Rebuild function invocations by replacing references to old source parameters with the matching merged parameters components.
|
|
void | rebuildParameterList (Function *func, int paramsUsage, MergeParameterList &mergedParams) |
| Rebuild the given parameters list using the merged parameters.
|
|
void | replaceParametersReferences (MergeParameterList &mergedParams, ParameterOperandMap ¶msRefMap) |
| Replace references to old parameters with the new merged parameters.
|
|
void | replaceSplitParametersReferences (LocalParameterMap &localParamsMap, ParameterOperandMap ¶msRefMap) |
| Replace references to old parameters that have been split with the new local parameters that represents them.
|
|
A class that provides extra processing services on CPU based programs.
The base class perform only the generic processing. In order to provide target language specific services and optimization one should derive from this class and register its factory via the ProgramManager instance.
Definition at line 49 of file OgreShaderProgramProcessor.h.