| OGRE 1.11.1 Object-Oriented Graphics Rendering Engine

Classes | Public Member Functions | List of all members
Ogre::RTShader::ProgramProcessor Class Referenceabstract
Optional Components » RTShaderSystem

A class that provides extra processing services on CPU based programs. More...

`#include <OgreShaderProgramProcessor.h>`

Inheritance diagram for Ogre::RTShader::ProgramProcessor:
[legend]

## Public Member Functions
| ProgramProcessor ()
| Class constructor. More...
virtual | ~ProgramProcessor ()
| Class destructor. More...
virtual const String & | getTargetLanguage () const =0
| Return the target language of this processor. More...
virtual bool | postCreateGpuPrograms (ProgramSet *programSet)=0
| Called after creation of the GPU programs. More...
virtual bool | preCreateGpuPrograms (ProgramSet *programSet)=0
| Called before creation of the GPU programs. More...

## Detailed Description

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.

## Constructor & Destructor Documentation

## ◆ ProgramProcessor()

Ogre::RTShader::ProgramProcessor::ProgramProcessor | ( |  | ) |

Class constructor.

## ◆ ~ProgramProcessor()

virtual Ogre::RTShader::ProgramProcessor::~ProgramProcessor | ( |  | ) |
| virtual

Class destructor.

## Member Function Documentation

## ◆ getTargetLanguage()

virtual const String& Ogre::RTShader::ProgramProcessor::getTargetLanguage | ( |  | ) | const
| pure virtual

Return the target language of this processor.

Implemented in Ogre::RTShader::CGProgramProcessor, Ogre::RTShader::GLSLESProgramProcessor, Ogre::RTShader::GLSLProgramProcessor, and Ogre::RTShader::HLSLProgramProcessor.

## ◆ preCreateGpuPrograms()

virtual bool Ogre::RTShader::ProgramProcessor::preCreateGpuPrograms | ( | ProgramSet * | programSet | ) |
| pure virtual

Called before creation of the GPU programs.

Do several preparation operation such as validation, register compaction and specific target language optimizations.

Parameters

  programSet | The program set container. Return true on success.

Implemented in Ogre::RTShader::CGProgramProcessor, Ogre::RTShader::GLSLESProgramProcessor, Ogre::RTShader::GLSLProgramProcessor, and Ogre::RTShader::HLSLProgramProcessor.

## ◆ postCreateGpuPrograms()

virtual bool Ogre::RTShader::ProgramProcessor::postCreateGpuPrograms | ( | ProgramSet * | programSet | ) |
| pure virtual

Called after creation of the GPU programs.

Parameters

  programSet | The program set container. Return true on success.

Implemented in Ogre::RTShader::CGProgramProcessor, Ogre::RTShader::GLSLESProgramProcessor, Ogre::RTShader::GLSLProgramProcessor, and Ogre::RTShader::HLSLProgramProcessor.

The documentation for this class was generated from the following file:

- OgreShaderProgramProcessor.h