Ogre::RTShader::SGScriptTranslator Class Reference
[RTShader]

This class responsible for translating core features of the RT Shader System for Ogre material scripts. More...

#include <OgreShaderScriptTranslator.h>

Inheritance diagram for Ogre::RTShader::SGScriptTranslator:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 SGScriptTranslator ()
virtual void translate (ScriptCompiler *compiler, const AbstractNodePtr &node)
virtual SubRenderStategetGeneratedSubRenderState (const String &typeName)
 Returns a sub render state of a given name which has already been created for material currently being generated by the script translator.
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 * operator new (size_t sz, void *ptr)
 placement operator new
void * operator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info
void * operator new[] (size_t sz)
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 *)

Protected Member Functions

void translatePass (ScriptCompiler *compiler, const AbstractNodePtr &node)
 Translates RT Shader System section within a pass context.
void translateTextureUnit (ScriptCompiler *compiler, const AbstractNodePtr &node)
 Translates RT Shader System section within a texture_unit context.
void addSubRenderState (SubRenderState *newSubRenderState, const String &dstTechniqueSchemeName, const String &materialName, const String &groupName, unsigned short passIndex)
 Adds a newly created subrender state to the material being translated.
void processNode (ScriptCompiler *compiler, const AbstractNodePtr &node)
 Retrieves a new translator from the factories and uses it to process the give node.

Static Protected Member Functions

static
AbstractNodeList::const_iterator 
getNodeAt (const AbstractNodeList &nodes, int index)
 Retrieves the node iterator at the given index.
static bool getBoolean (const AbstractNodePtr &node, bool *result)
 Converts the node to a boolean and returns true if successful.
static bool getString (const AbstractNodePtr &node, String *result)
 Converts the node to a string and returns true if successful.
static bool getReal (const AbstractNodePtr &node, Real *result)
 Converts the node to a Real and returns true if successful.
static bool getFloat (const AbstractNodePtr &node, float *result)
 Converts the node to a float and returns true if successful.
static bool getInt (const AbstractNodePtr &node, int *result)
 Converts the node to an integer and returns true if successful.
static bool getUInt (const AbstractNodePtr &node, uint32 *result)
 Converts the node to an unsigned integer and returns true if successful.
static bool getColour (AbstractNodeList::const_iterator i, AbstractNodeList::const_iterator end, ColourValue *result, int maxEntries=4)
 Converts the range of nodes to a ColourValue and returns true if successful.
static bool getSceneBlendFactor (const AbstractNodePtr &node, SceneBlendFactor *sbf)
 Converts the node to a SceneBlendFactor enum and returns true if successful.
static bool getCompareFunction (const AbstractNodePtr &node, CompareFunction *func)
 Converts the node to a CompareFunction enum and returns true if successful.
static bool getMatrix4 (AbstractNodeList::const_iterator i, AbstractNodeList::const_iterator end, Matrix4 *m)
 Converts the range of nodes to a Matrix4 and returns true if successful.
static bool getInts (AbstractNodeList::const_iterator i, AbstractNodeList::const_iterator end, int *vals, int count)
 Converts the range of nodes to an array of ints and returns true if successful.
static bool getFloats (AbstractNodeList::const_iterator i, AbstractNodeList::const_iterator end, float *vals, int count)
 Converts the range of nodes to an array of floats and returns true if successful.
static bool getStencilOp (const AbstractNodePtr &node, StencilOperation *op)
 Converts the node to a StencilOperation enum and returns true if successful.
static bool getConstantType (AbstractNodeList::const_iterator i, GpuConstantType *op)
 Converts the node to a GpuConstantType enum and returns true if successful.

Protected Attributes

RenderStatemGeneratedRenderState

Detailed Description

This class responsible for translating core features of the RT Shader System for Ogre material scripts.

Definition at line 47 of file OgreShaderScriptTranslator.h.


Constructor & Destructor Documentation

Ogre::RTShader::SGScriptTranslator::SGScriptTranslator (  ) 

Member Function Documentation

static bool Ogre::ScriptTranslator::getBoolean ( const AbstractNodePtr node,
bool *  result 
) [static, protected, inherited]

Converts the node to a boolean and returns true if successful.

static bool Ogre::ScriptTranslator::getColour ( AbstractNodeList::const_iterator  i,
AbstractNodeList::const_iterator  end,
ColourValue result,
int  maxEntries = 4 
) [static, protected, inherited]

Converts the range of nodes to a ColourValue and returns true if successful.

static bool Ogre::ScriptTranslator::getCompareFunction ( const AbstractNodePtr node,
CompareFunction func 
) [static, protected, inherited]

Converts the node to a CompareFunction enum and returns true if successful.

static bool Ogre::ScriptTranslator::getConstantType ( AbstractNodeList::const_iterator  i,
GpuConstantType op 
) [static, protected, inherited]

Converts the node to a GpuConstantType enum and returns true if successful.

static bool Ogre::ScriptTranslator::getFloat ( const AbstractNodePtr node,
float *  result 
) [static, protected, inherited]

Converts the node to a float and returns true if successful.

static bool Ogre::ScriptTranslator::getFloats ( AbstractNodeList::const_iterator  i,
AbstractNodeList::const_iterator  end,
float *  vals,
int  count 
) [static, protected, inherited]

Converts the range of nodes to an array of floats and returns true if successful.

static bool Ogre::ScriptTranslator::getInt ( const AbstractNodePtr node,
int *  result 
) [static, protected, inherited]

Converts the node to an integer and returns true if successful.

static bool Ogre::ScriptTranslator::getInts ( AbstractNodeList::const_iterator  i,
AbstractNodeList::const_iterator  end,
int *  vals,
int  count 
) [static, protected, inherited]

Converts the range of nodes to an array of ints and returns true if successful.

static bool Ogre::ScriptTranslator::getMatrix4 ( AbstractNodeList::const_iterator  i,
AbstractNodeList::const_iterator  end,
Matrix4 m 
) [static, protected, inherited]

Converts the range of nodes to a Matrix4 and returns true if successful.

static AbstractNodeList::const_iterator Ogre::ScriptTranslator::getNodeAt ( const AbstractNodeList nodes,
int  index 
) [static, protected, inherited]

Retrieves the node iterator at the given index.

static bool Ogre::ScriptTranslator::getReal ( const AbstractNodePtr node,
Real result 
) [static, protected, inherited]

Converts the node to a Real and returns true if successful.

static bool Ogre::ScriptTranslator::getSceneBlendFactor ( const AbstractNodePtr node,
SceneBlendFactor sbf 
) [static, protected, inherited]

Converts the node to a SceneBlendFactor enum and returns true if successful.

static bool Ogre::ScriptTranslator::getStencilOp ( const AbstractNodePtr node,
StencilOperation op 
) [static, protected, inherited]

Converts the node to a StencilOperation enum and returns true if successful.

static bool Ogre::ScriptTranslator::getString ( const AbstractNodePtr node,
String result 
) [static, protected, inherited]

Converts the node to a string and returns true if successful.

static bool Ogre::ScriptTranslator::getUInt ( const AbstractNodePtr node,
uint32 result 
) [static, protected, inherited]

Converts the node to an unsigned integer and returns true if successful.

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

Definition at line 107 of file OgreMemoryAllocatedObject.h.

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

Definition at line 101 of file OgreMemoryAllocatedObject.h.

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

Definition at line 95 of file OgreMemoryAllocatedObject.h.

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

Definition at line 118 of file OgreMemoryAllocatedObject.h.

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

Definition at line 112 of file OgreMemoryAllocatedObject.h.

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

placement operator new

Definition at line 78 of file OgreMemoryAllocatedObject.h.

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

Definition at line 72 of file OgreMemoryAllocatedObject.h.

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

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  )  [inherited]

Definition at line 90 of file OgreMemoryAllocatedObject.h.

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

array operator new, with debug line info

Definition at line 85 of file OgreMemoryAllocatedObject.h.

void Ogre::ScriptTranslator::processNode ( ScriptCompiler compiler,
const AbstractNodePtr node 
) [protected, inherited]

Retrieves a new translator from the factories and uses it to process the give node.


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

Copyright © 2012 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Fri May 25 23:43:12 2012