Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
Ogre::RTShader::SGScriptTranslator Class Reference

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]

Public Member Functions

 SGScriptTranslator ()
 
virtual SubRenderState * getGeneratedSubRenderState (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. 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 translate (ScriptCompiler *compiler, const AbstractNodePtr &node)
 

Static Public Member Functions

static bool getBoolean (const AbstractNodePtr &node, bool *result)
 
static bool getColour (AbstractNodeList::const_iterator i, AbstractNodeList::const_iterator end, ColourValue *result, int maxEntries=4)
 
static bool getFloat (const AbstractNodePtr &node, float *result)
 
static bool getInt (const AbstractNodePtr &node, int *result)
 
static bool getReal (const AbstractNodePtr &node, Real *result)
 
static bool getString (const AbstractNodePtr &node, String *result)
 
static bool getUInt (const AbstractNodePtr &node, uint32 *result)
 

Protected Member Functions

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. More...
 
void processNode (ScriptCompiler *compiler, const AbstractNodePtr &node)
 Retrieves a new translator from the factories and uses it to process the give node. More...
 
void translatePass (ScriptCompiler *compiler, const AbstractNodePtr &node)
 Translates RT Shader System section within a pass context. More...
 
void translateTextureUnit (ScriptCompiler *compiler, const AbstractNodePtr &node)
 Translates RT Shader System section within a texture_unit context. More...
 

Static Protected Member Functions

static bool getBoolean (const AbstractNodePtr &node, bool *result)
 Converts the node to a boolean and returns true if successful. More...
 
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. More...
 
static bool getCompareFunction (const AbstractNodePtr &node, CompareFunction *func)
 Converts the node to a CompareFunction enum and returns true if successful. More...
 
static bool getConstantType (AbstractNodeList::const_iterator i, GpuConstantType *op)
 Converts the node to a GpuConstantType enum and returns true if successful. More...
 
static bool getFloat (const AbstractNodePtr &node, float *result)
 Converts the node to a float and returns true if successful. More...
 
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. More...
 
static bool getInt (const AbstractNodePtr &node, int *result)
 Converts the node to an integer and returns true if successful. More...
 
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. More...
 
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. More...
 
static AbstractNodeList::const_iterator getNodeAt (const AbstractNodeList &nodes, int index)
 Retrieves the node iterator at the given index. More...
 
static bool getReal (const AbstractNodePtr &node, Real *result)
 Converts the node to a Real and returns true if successful. More...
 
static bool getSceneBlendFactor (const AbstractNodePtr &node, SceneBlendFactor *sbf)
 Converts the node to a SceneBlendFactor enum and returns true if successful. More...
 
static bool getStencilOp (const AbstractNodePtr &node, StencilOperation *op)
 Converts the node to a StencilOperation enum and returns true if successful. More...
 
static bool getString (const AbstractNodePtr &node, String *result)
 Converts the node to a string and returns true if successful. More...
 
static bool getUInt (const AbstractNodePtr &node, uint32 *result)
 Converts the node to an unsigned integer and returns true if successful. More...
 

Protected Attributes

RenderState * mGeneratedRenderState
 

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.

Member Function Documentation

◆ getBoolean() [1/2]

static bool Ogre::ScriptTranslator::getBoolean
static

◆ getBoolean() [2/2]

static bool Ogre::ScriptTranslator::getBoolean ( const AbstractNodePtr &  node,
bool *  result 
)
staticprotectedinherited

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

◆ getColour() [1/2]

static bool Ogre::ScriptTranslator::getColour ( AbstractNodeList::const_iterator  i,
AbstractNodeList::const_iterator  end,
ColourValue *  result,
int  maxEntries = 4 
)
staticprotectedinherited

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

◆ getColour() [2/2]

static bool Ogre::ScriptTranslator::getColour
static

◆ getCompareFunction()

static bool Ogre::ScriptTranslator::getCompareFunction ( const AbstractNodePtr &  node,
CompareFunction *  func 
)
staticprotectedinherited

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

◆ getConstantType()

static bool Ogre::ScriptTranslator::getConstantType ( AbstractNodeList::const_iterator  i,
GpuConstantType *  op 
)
staticprotectedinherited

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

◆ getFloat() [1/2]

static bool Ogre::ScriptTranslator::getFloat ( const AbstractNodePtr &  node,
float *  result 
)
staticprotectedinherited

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

◆ getFloat() [2/2]

static bool Ogre::ScriptTranslator::getFloat
static

◆ getFloats()

static bool Ogre::ScriptTranslator::getFloats ( AbstractNodeList::const_iterator  i,
AbstractNodeList::const_iterator  end,
float *  vals,
int  count 
)
staticprotectedinherited

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

◆ getInt() [1/2]

static bool Ogre::ScriptTranslator::getInt ( const AbstractNodePtr &  node,
int *  result 
)
staticprotectedinherited

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

◆ getInt() [2/2]

static bool Ogre::ScriptTranslator::getInt
static

◆ getInts()

static bool Ogre::ScriptTranslator::getInts ( AbstractNodeList::const_iterator  i,
AbstractNodeList::const_iterator  end,
int *  vals,
int  count 
)
staticprotectedinherited

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

◆ getMatrix4()

static bool Ogre::ScriptTranslator::getMatrix4 ( AbstractNodeList::const_iterator  i,
AbstractNodeList::const_iterator  end,
Matrix4 *  m 
)
staticprotectedinherited

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

◆ getNodeAt()

static AbstractNodeList::const_iterator Ogre::ScriptTranslator::getNodeAt ( const AbstractNodeList &  nodes,
int  index 
)
staticprotectedinherited

Retrieves the node iterator at the given index.

◆ getReal() [1/2]

static bool Ogre::ScriptTranslator::getReal ( const AbstractNodePtr &  node,
Real *  result 
)
staticprotectedinherited

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

◆ getReal() [2/2]

static bool Ogre::ScriptTranslator::getReal
static

◆ getSceneBlendFactor()

static bool Ogre::ScriptTranslator::getSceneBlendFactor ( const AbstractNodePtr &  node,
SceneBlendFactor *  sbf 
)
staticprotectedinherited

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

◆ getStencilOp()

static bool Ogre::ScriptTranslator::getStencilOp ( const AbstractNodePtr &  node,
StencilOperation *  op 
)
staticprotectedinherited

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

◆ getString() [1/2]

static bool Ogre::ScriptTranslator::getString
static

◆ getString() [2/2]

static bool Ogre::ScriptTranslator::getString ( const AbstractNodePtr &  node,
String *  result 
)
staticprotectedinherited

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

◆ getUInt() [1/2]

static bool Ogre::ScriptTranslator::getUInt ( const AbstractNodePtr &  node,
uint32 *  result 
)
staticprotectedinherited

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

◆ getUInt() [2/2]

static bool Ogre::ScriptTranslator::getUInt
static

◆ operator delete() [1/3]

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

Definition at line 96 of file OgreMemoryAllocatedObject.h.

◆ operator delete() [2/3]

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

Definition at line 108 of file OgreMemoryAllocatedObject.h.

◆ operator delete() [3/3]

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

Definition at line 102 of file OgreMemoryAllocatedObject.h.

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

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

Definition at line 113 of file OgreMemoryAllocatedObject.h.

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

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

Definition at line 119 of file OgreMemoryAllocatedObject.h.

◆ operator new() [1/3]

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

Definition at line 73 of file OgreMemoryAllocatedObject.h.

◆ operator new() [2/3]

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 68 of file OgreMemoryAllocatedObject.h.

◆ operator new() [3/3]

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

placement operator new

Definition at line 79 of file OgreMemoryAllocatedObject.h.

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

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

Definition at line 91 of file OgreMemoryAllocatedObject.h.

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

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 86 of file OgreMemoryAllocatedObject.h.

◆ processNode()

void Ogre::ScriptTranslator::processNode ( ScriptCompiler *  compiler,
const AbstractNodePtr &  node 
)
protectedinherited

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.