OGRE-Next  2.3
Object-Oriented Graphics Rendering Engine
Ogre::RTShader::ProgramWriter Class Referenceabstract

Base class interface for shader program writers. More...

#include <OgreShaderProgramWriter.h>

+ Inheritance diagram for Ogre::RTShader::ProgramWriter:

Public Member Functions

virtual ~ProgramWriter ()
 Class destructor. More...
 
virtual const StringgetTargetLanguage () const =0
 Return the target language of this writer. More...
 
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 More...
 
void * operator new (size_t sz, void *ptr)
 placement operator new More...
 
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 More...
 
virtual void writeSourceCode (std::ostream &os, Program *program)=0
 Write the program shader source code. More...
 

Detailed Description

Base class interface for shader program writers.

The main usage of this class is to generate a shader source code from the given CPU program. In order to support specific shader language one should subclass this interface and implement the pure methods.

Constructor & Destructor Documentation

◆ ~ProgramWriter()

virtual Ogre::RTShader::ProgramWriter::~ProgramWriter ( )
inlinevirtual

Class destructor.

Member Function Documentation

◆ getTargetLanguage()

virtual const String& Ogre::RTShader::ProgramWriter::getTargetLanguage ( ) const
pure virtual

◆ operator delete() [1/3]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr)
inlineinherited

◆ operator delete() [2/3]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr,
const char *  ,
int  ,
const char *   
)
inlineinherited

◆ operator delete() [3/3]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr,
void *   
)
inlineinherited

◆ operator delete[]() [1/2]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void *  ptr)
inlineinherited

◆ operator delete[]() [2/2]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void *  ptr,
const char *  ,
int  ,
const char *   
)
inlineinherited

◆ operator new() [1/3]

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz)
inlineinherited

◆ operator new() [2/3]

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
const char *  file,
int  line,
const char *  func 
)
inlineinherited

operator new, with debug line info

◆ operator new() [3/3]

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
void *  ptr 
)
inlineinherited

placement operator new

◆ operator new[]() [1/2]

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz)
inlineinherited

◆ operator new[]() [2/2]

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz,
const char *  file,
int  line,
const char *  func 
)
inlineinherited

array operator new, with debug line info

◆ writeSourceCode()

virtual void Ogre::RTShader::ProgramWriter::writeSourceCode ( std::ostream &  os,
Program program 
)
pure virtual

Write the program shader source code.

Parameters
osThe output stream to write to code into.
programThe source CPU program for the GPU program code.

Implemented in Ogre::RTShader::HLSLProgramWriter, Ogre::RTShader::GLSLProgramWriter, Ogre::RTShader::GLSLESProgramWriter, and Ogre::RTShader::CGProgramWriter.


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