OGRE  1.7
Object-Oriented Graphics Rendering Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Ogre::RTShader::ShaderGenerator::SGTechnique Class Reference

Shader generator technique wrapper class. More...

#include <OgreShaderGenerator.h>

+ Inheritance diagram for Ogre::RTShader::ShaderGenerator::SGTechnique:
+ Collaboration diagram for Ogre::RTShader::ShaderGenerator::SGTechnique:

Public Member Functions

 SGTechnique (SGMaterial *parent, Technique *srcTechnique, const String &dstTechniqueSchemeName)
 
 ~SGTechnique ()
 
void acquirePrograms ()
 Acquire the CPU/GPU programs for this technique. More...
 
void buildTargetRenderState ()
 Build the render state. More...
 
bool getBuildDestinationTechnique () const
 Tells if the destination technique should be build. More...
 
TechniquegetDestinationTechnique ()
 Get the destination technique. More...
 
const StringgetDestinationTechniqueSchemeName () const
 Get the destination technique scheme name. More...
 
const SGMaterialgetParent () const
 Get the parent SGMaterial. More...
 
RenderStategetRenderState (unsigned short passIndex)
 Get render state of specific pass. More...
 
TechniquegetSourceTechnique ()
 Get the source technique. 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)
 
void releasePrograms ()
 Release the CPU/GPU programs of this technique. More...
 
void setBuildDestinationTechnique (bool buildTechnique)
 Tells the technique that it needs to generate shader code. More...
 

Static Public Attributes

static String UserKey
 

Protected Member Functions

void createSGPasses ()
 Create the passes entries. More...
 
void destroySGPasses ()
 Destroy the passes entries. More...
 

Protected Attributes

bool mBuildDstTechnique
 
RenderStateList mCustomRenderStates
 
TechniquemDstTechnique
 
String mDstTechniqueSchemeName
 
SGMaterialmParent
 
SGPassList mPassEntries
 
TechniquemSrcTechnique
 

Detailed Description

Shader generator technique wrapper class.

Definition at line 424 of file OgreShaderGenerator.h.

Constructor & Destructor Documentation

Ogre::RTShader::ShaderGenerator::SGTechnique::SGTechnique ( SGMaterial parent,
Technique srcTechnique,
const String dstTechniqueSchemeName 
)
Ogre::RTShader::ShaderGenerator::SGTechnique::~SGTechnique ( )

Member Function Documentation

void Ogre::RTShader::ShaderGenerator::SGTechnique::acquirePrograms ( )

Acquire the CPU/GPU programs for this technique.

void Ogre::RTShader::ShaderGenerator::SGTechnique::buildTargetRenderState ( )

Build the render state.

void Ogre::RTShader::ShaderGenerator::SGTechnique::createSGPasses ( )
protected

Create the passes entries.

void Ogre::RTShader::ShaderGenerator::SGTechnique::destroySGPasses ( )
protected

Destroy the passes entries.

bool Ogre::RTShader::ShaderGenerator::SGTechnique::getBuildDestinationTechnique ( ) const
inline

Tells if the destination technique should be build.

Definition at line 455 of file OgreShaderGenerator.h.

Technique* Ogre::RTShader::ShaderGenerator::SGTechnique::getDestinationTechnique ( )
inline

Get the destination technique.

Definition at line 437 of file OgreShaderGenerator.h.

const String& Ogre::RTShader::ShaderGenerator::SGTechnique::getDestinationTechniqueSchemeName ( ) const
inline

Get the destination technique scheme name.

Definition at line 440 of file OgreShaderGenerator.h.

const SGMaterial* Ogre::RTShader::ShaderGenerator::SGTechnique::getParent ( ) const
inline

Get the parent SGMaterial.

Definition at line 431 of file OgreShaderGenerator.h.

RenderState* Ogre::RTShader::ShaderGenerator::SGTechnique::getRenderState ( unsigned short  passIndex)

Get render state of specific pass.

Parameters
passIndexThe pass index.
Technique* Ogre::RTShader::ShaderGenerator::SGTechnique::getSourceTechnique ( )
inline

Get the source technique.

Definition at line 434 of file OgreShaderGenerator.h.

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

Definition at line 95 of file OgreMemoryAllocatedObject.h.

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

Definition at line 101 of file OgreMemoryAllocatedObject.h.

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

Definition at line 107 of file OgreMemoryAllocatedObject.h.

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

Definition at line 112 of file OgreMemoryAllocatedObject.h.

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

Definition at line 118 of file OgreMemoryAllocatedObject.h.

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

Definition at line 67 of file OgreMemoryAllocatedObject.h.

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

Definition at line 72 of file OgreMemoryAllocatedObject.h.

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

placement operator new

Definition at line 78 of file OgreMemoryAllocatedObject.h.

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

Definition at line 85 of file OgreMemoryAllocatedObject.h.

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

Definition at line 90 of file OgreMemoryAllocatedObject.h.

void Ogre::RTShader::ShaderGenerator::SGTechnique::releasePrograms ( )

Release the CPU/GPU programs of this technique.

void Ogre::RTShader::ShaderGenerator::SGTechnique::setBuildDestinationTechnique ( bool  buildTechnique)
inline

Tells the technique that it needs to generate shader code.

Definition at line 452 of file OgreShaderGenerator.h.

Member Data Documentation

bool Ogre::RTShader::ShaderGenerator::SGTechnique::mBuildDstTechnique
protected

Definition at line 479 of file OgreShaderGenerator.h.

RenderStateList Ogre::RTShader::ShaderGenerator::SGTechnique::mCustomRenderStates
protected

Definition at line 478 of file OgreShaderGenerator.h.

Technique* Ogre::RTShader::ShaderGenerator::SGTechnique::mDstTechnique
protected

Definition at line 476 of file OgreShaderGenerator.h.

String Ogre::RTShader::ShaderGenerator::SGTechnique::mDstTechniqueSchemeName
protected

Definition at line 480 of file OgreShaderGenerator.h.

SGMaterial* Ogre::RTShader::ShaderGenerator::SGTechnique::mParent
protected

Definition at line 474 of file OgreShaderGenerator.h.

SGPassList Ogre::RTShader::ShaderGenerator::SGTechnique::mPassEntries
protected

Definition at line 477 of file OgreShaderGenerator.h.

Technique* Ogre::RTShader::ShaderGenerator::SGTechnique::mSrcTechnique
protected

Definition at line 475 of file OgreShaderGenerator.h.

String Ogre::RTShader::ShaderGenerator::SGTechnique::UserKey
static

Definition at line 462 of file OgreShaderGenerator.h.


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