# OgreScriptCompiler.h File Reference

`#include "OgreSharedPtr.h"`
`#include "OgreMaterial.h"`
`#include "OgreHighLevelGpuProgram.h"`
`#include "OgreCompositor.h"`
`#include "OgreCompositionPass.h"`
`#include "OgreAny.h"`

Go to the source code of this file.

## Namespaces

namespace | Ogre

## Typedefs

typedef SharedPtr< ConcreteNode > | ConcreteNodePtr
typedef std::list< ConcreteNodePtr > | ConcreteNodeList
typedef SharedPtr< ConcreteNodeList > | ConcreteNodeListPtr
typedef SharedPtr< AbstractNode > | AbstractNodePtr
typedef std::list< AbstractNodePtr > | AbstractNodeList
typedef SharedPtr< AbstractNodeList > | AbstractNodeListPtr

## Enumerations

enum | ConcreteNodeType { CNT_VARIABLE, CNT_VARIABLE_ASSIGN, CNT_WORD, CNT_IMPORT, CNT_QUOTE, CNT_LBRACE, CNT_RBRACE, CNT_COLON }
| These enums hold the types of the concrete parsed nodes. More...
enum | AbstractNodeType { ANT_UNKNOWN, ANT_ATOM, ANT_OBJECT, ANT_PROPERTY, ANT_IMPORT, ANT_VARIABLE_SET, ANT_VARIABLE_ACCESS }
| This enum holds the types of the possible abstract nodes. More...

enum

{
ID_MATERIAL = 3, ID_VERTEX_PROGRAM, ID_GEOMETRY_PROGRAM, ID_FRAGMENT_PROGRAM,
ID_TECHNIQUE, ID_PASS, ID_TEXTURE_UNIT, ID_VERTEX_PROGRAM_REF,
ID_GEOMETRY_PROGRAM_REF, ID_FRAGMENT_PROGRAM_REF, ID_SHADOW_CASTER_VERTEX_PROGRAM_REF, ID_SHADOW_RECEIVER_VERTEX_PROGRAM_REF,
ID_SHADOW_RECEIVER_FRAGMENT_PROGRAM_REF, ID_SHADOW_CASTER_MATERIAL, ID_SHADOW_RECEIVER_MATERIAL, ID_LOD_DISTANCES,
ID_RECEIVE_SHADOWS, ID_TRANSPARENCY_CASTS_SHADOWS, ID_SET_TEXTURE_ALIAS, ID_SOURCE,
ID_SYNTAX, ID_DEFAULT_PARAMS, ID_PARAM_INDEXED, ID_PARAM_NAMED,
ID_PARAM_INDEXED_AUTO, ID_PARAM_NAMED_AUTO, ID_SCHEME, ID_LOD_INDEX,
ID_GPU_VENDOR_RULE, ID_GPU_DEVICE_RULE, ID_INCLUDE, ID_EXCLUDE,
ID_AMBIENT, ID_DIFFUSE, ID_SPECULAR, ID_EMISSIVE,
ID_VERTEXCOLOUR, ID_SCENE_BLEND, ID_COLOUR_BLEND, ID_ONE,
ID_ZERO, ID_DEST_COLOUR, ID_SRC_COLOUR, ID_ONE_MINUS_DEST_COLOUR,
ID_ONE_MINUS_SRC_COLOUR, ID_DEST_ALPHA, ID_SRC_ALPHA, ID_ONE_MINUS_DEST_ALPHA,
ID_ONE_MINUS_SRC_ALPHA, ID_SEPARATE_SCENE_BLEND, ID_DEPTH_CHECK, ID_DEPTH_WRITE,
ID_DEPTH_FUNC, ID_DEPTH_BIAS, ID_ITERATION_DEPTH_BIAS, ID_ALWAYS_FAIL,
ID_ALWAYS_PASS, ID_LESS_EQUAL, ID_LESS, ID_EQUAL,
ID_NOT_EQUAL, ID_GREATER_EQUAL, ID_GREATER, ID_ALPHA_REJECTION,
ID_ALPHA_TO_COVERAGE, ID_LIGHT_SCISSOR, ID_LIGHT_CLIP_PLANES, ID_TRANSPARENT_SORTING,
ID_ILLUMINATION_STAGE, ID_DECAL, ID_CULL_HARDWARE, ID_CLOCKWISE,
ID_ANTICLOCKWISE, ID_CULL_SOFTWARE, ID_BACK, ID_FRONT,
ID_NORMALISE_NORMALS, ID_LIGHTING, ID_SHADING, ID_FLAT,
ID_GOURAUD, ID_PHONG, ID_POLYGON_MODE, ID_SOLID,
ID_WIREFRAME, ID_POINTS, ID_POLYGON_MODE_OVERRIDEABLE, ID_FOG_OVERRIDE,
ID_NONE, ID_LINEAR, ID_EXP, ID_EXP2,
ID_COLOUR_WRITE, ID_MAX_LIGHTS, ID_START_LIGHT, ID_ITERATION,
ID_ONCE, ID_ONCE_PER_LIGHT, ID_PER_LIGHT, ID_PER_N_LIGHTS,
ID_POINT, ID_SPOT, ID_DIRECTIONAL, ID_POINT_SIZE,
ID_POINT_SPRITES, ID_POINT_SIZE_ATTENUATION, ID_POINT_SIZE_MIN, ID_POINT_SIZE_MAX,
ID_TEXTURE_ALIAS, ID_TEXTURE, ID_1D, ID_2D,
ID_3D, ID_CUBIC, ID_UNLIMITED, ID_ALPHA,
ID_GAMMA, ID_ANIM_TEXTURE, ID_CUBIC_TEXTURE, ID_SEPARATE_UV,
ID_COMBINED_UVW, ID_TEX_COORD_SET, ID_TEX_ADDRESS_MODE, ID_WRAP,
ID_CLAMP, ID_BORDER, ID_MIRROR, ID_TEX_BORDER_COLOUR,
ID_FILTERING, ID_BILINEAR, ID_TRILINEAR, ID_ANISOTROPIC,
ID_MAX_ANISOTROPY, ID_MIPMAP_BIAS, ID_COLOUR_OP, ID_REPLACE,
ID_ADD, ID_MODULATE, ID_ALPHA_BLEND, ID_COLOUR_OP_EX,
ID_SOURCE1, ID_SOURCE2, ID_MODULATE_X2, ID_MODULATE_X4,
ID_ADD_SIGNED, ID_ADD_SMOOTH, ID_SUBTRACT, ID_BLEND_DIFFUSE_COLOUR,
ID_BLEND_DIFFUSE_ALPHA, ID_BLEND_TEXTURE_ALPHA, ID_BLEND_CURRENT_ALPHA, ID_BLEND_MANUAL,
ID_DOT_PRODUCT, ID_SRC_CURRENT, ID_SRC_TEXTURE, ID_SRC_DIFFUSE,
ID_SRC_SPECULAR, ID_SRC_MANUAL, ID_COLOUR_OP_MULTIPASS_FALLBACK, ID_ALPHA_OP_EX,
ID_ENV_MAP, ID_SPHERICAL, ID_PLANAR, ID_CUBIC_REFLECTION,
ID_CUBIC_NORMAL, ID_SCROLL, ID_SCROLL_ANIM, ID_ROTATE,
ID_ROTATE_ANIM, ID_SCALE, ID_WAVE_XFORM, ID_SCROLL_X,
ID_SCROLL_Y, ID_SCALE_X, ID_SCALE_Y, ID_SINE,
ID_TRIANGLE, ID_SQUARE, ID_SAWTOOTH, ID_INVERSE_SAWTOOTH,
ID_TRANSFORM, ID_BINDING_TYPE, ID_VERTEX, ID_FRAGMENT,
ID_CONTENT_TYPE, ID_NAMED, ID_SHADOW, ID_TEXTURE_SOURCE,
ID_PARTICLE_SYSTEM, ID_EMITTER, ID_AFFECTOR, ID_COMPOSITOR,
ID_TARGET, ID_TARGET_OUTPUT, ID_INPUT, ID_PREVIOUS,
ID_TARGET_WIDTH, ID_TARGET_HEIGHT, ID_TARGET_WIDTH_SCALED, ID_TARGET_HEIGHT_SCALED,
ID_ONLY_INITIAL, ID_VISIBILITY_MASK, ID_LOD_BIAS, ID_MATERIAL_SCHEME,
ID_SHADOWS_ENABLED, ID_CLEAR, ID_STENCIL, ID_RENDER_SCENE,
ID_RENDER_QUAD, ID_IDENTIFIER, ID_FIRST_RENDER_QUEUE, ID_LAST_RENDER_QUEUE,
ID_BUFFERS, ID_COLOUR, ID_DEPTH, ID_COLOUR_VALUE,
ID_DEPTH_VALUE, ID_STENCIL_VALUE, ID_CHECK, ID_COMP_FUNC,
ID_REF_VALUE, ID_MASK, ID_FAIL_OP, ID_KEEP,
ID_INCREMENT, ID_DECREMENT, ID_INCREMENT_WRAP, ID_DECREMENT_WRAP,
ID_INVERT, ID_DEPTH_FAIL_OP, ID_PASS_OP, ID_TWO_SIDED,
ID_END_BUILTIN_IDS
}

| This enum defines the integer ids for keywords this compiler handles. More...

## Typedef Documentation

typedef std::list<AbstractNodePtr> Ogre::AbstractNodeList

| Definition at line 82 of file OgreScriptCompiler.h.

typedef SharedPtr<AbstractNodeList> Ogre::AbstractNodeListPtr

| Definition at line 83 of file OgreScriptCompiler.h.

typedef SharedPtr<AbstractNode> Ogre::AbstractNodePtr

| Definition at line 80 of file OgreScriptCompiler.h.

typedef std::list<ConcreteNodePtr> Ogre::ConcreteNodeList

| Definition at line 58 of file OgreScriptCompiler.h.

typedef SharedPtr<ConcreteNodeList> Ogre::ConcreteNodeListPtr

| Definition at line 59 of file OgreScriptCompiler.h.

typedef SharedPtr<ConcreteNode> Ogre::ConcreteNodePtr

| Definition at line 56 of file OgreScriptCompiler.h.

## Enumeration Type Documentation

anonymous enum

This enum defines the integer ids for keywords this compiler handles.

Enumeration values:

  ID_MATERIAL |
  ID_VERTEX_PROGRAM |
  ID_GEOMETRY_PROGRAM |
  ID_FRAGMENT_PROGRAM |
  ID_TECHNIQUE |
  ID_PASS |
  ID_TEXTURE_UNIT |
  ID_VERTEX_PROGRAM_REF |
  ID_GEOMETRY_PROGRAM_REF |
  ID_FRAGMENT_PROGRAM_REF |
  ID_SHADOW_CASTER_VERTEX_PROGRAM_REF |
  ID_SHADOW_RECEIVER_VERTEX_PROGRAM_REF |
  ID_SHADOW_RECEIVER_FRAGMENT_PROGRAM_REF |
  ID_SHADOW_CASTER_MATERIAL |
  ID_SHADOW_RECEIVER_MATERIAL |
  ID_LOD_DISTANCES |
  ID_RECEIVE_SHADOWS |
  ID_TRANSPARENCY_CASTS_SHADOWS |
  ID_SET_TEXTURE_ALIAS |
  ID_SOURCE |
  ID_SYNTAX |
  ID_DEFAULT_PARAMS |
  ID_PARAM_INDEXED |
  ID_PARAM_NAMED |
  ID_PARAM_INDEXED_AUTO |
  ID_PARAM_NAMED_AUTO |
  ID_SCHEME |
  ID_LOD_INDEX |
  ID_GPU_VENDOR_RULE |
  ID_GPU_DEVICE_RULE |
  ID_INCLUDE |
  ID_EXCLUDE |
  ID_AMBIENT |
  ID_DIFFUSE |
  ID_SPECULAR |
  ID_EMISSIVE |
  ID_VERTEXCOLOUR |
  ID_SCENE_BLEND |
  ID_COLOUR_BLEND |
  ID_ONE |
  ID_ZERO |
  ID_DEST_COLOUR |
  ID_SRC_COLOUR |
  ID_ONE_MINUS_DEST_COLOUR |
  ID_ONE_MINUS_SRC_COLOUR |
  ID_DEST_ALPHA |
  ID_SRC_ALPHA |
  ID_ONE_MINUS_DEST_ALPHA |
  ID_ONE_MINUS_SRC_ALPHA |
  ID_SEPARATE_SCENE_BLEND |
  ID_DEPTH_CHECK |
  ID_DEPTH_WRITE |
  ID_DEPTH_FUNC |
  ID_DEPTH_BIAS |
  ID_ITERATION_DEPTH_BIAS |
  ID_ALWAYS_FAIL |
  ID_ALWAYS_PASS |
  ID_LESS_EQUAL |
  ID_LESS |
  ID_EQUAL |
  ID_NOT_EQUAL |
  ID_GREATER_EQUAL |
  ID_GREATER |
  ID_ALPHA_REJECTION |
  ID_ALPHA_TO_COVERAGE |
  ID_LIGHT_SCISSOR |
  ID_LIGHT_CLIP_PLANES |
  ID_TRANSPARENT_SORTING |
  ID_ILLUMINATION_STAGE |
  ID_DECAL |
  ID_CULL_HARDWARE |
  ID_CLOCKWISE |
  ID_ANTICLOCKWISE |
  ID_CULL_SOFTWARE |
  ID_BACK |
  ID_FRONT |
  ID_NORMALISE_NORMALS |
  ID_LIGHTING |
  ID_SHADING |
  ID_FLAT |
  ID_GOURAUD |
  ID_PHONG |
  ID_POLYGON_MODE |
  ID_SOLID |
  ID_WIREFRAME |
  ID_POINTS |
  ID_POLYGON_MODE_OVERRIDEABLE |
  ID_FOG_OVERRIDE |
  ID_NONE |
  ID_LINEAR |
  ID_EXP |
  ID_EXP2 |
  ID_COLOUR_WRITE |
  ID_MAX_LIGHTS |
  ID_START_LIGHT |
  ID_ITERATION |
  ID_ONCE |
  ID_ONCE_PER_LIGHT |
  ID_PER_LIGHT |
  ID_PER_N_LIGHTS |
  ID_POINT |
  ID_SPOT |
  ID_DIRECTIONAL |
  ID_POINT_SIZE |
  ID_POINT_SPRITES |
  ID_POINT_SIZE_ATTENUATION |
  ID_POINT_SIZE_MIN |
  ID_POINT_SIZE_MAX |
  ID_TEXTURE_ALIAS |
  ID_TEXTURE |
  ID_1D |
  ID_2D |
  ID_3D |
  ID_CUBIC |
  ID_UNLIMITED |
  ID_ALPHA |
  ID_GAMMA |
  ID_ANIM_TEXTURE |
  ID_CUBIC_TEXTURE |
  ID_SEPARATE_UV |
  ID_COMBINED_UVW |
  ID_TEX_COORD_SET |
  ID_TEX_ADDRESS_MODE |
  ID_WRAP |
  ID_CLAMP |
  ID_BORDER |
  ID_MIRROR |
  ID_TEX_BORDER_COLOUR |
  ID_FILTERING |
  ID_BILINEAR |
  ID_TRILINEAR |
  ID_ANISOTROPIC |
  ID_MAX_ANISOTROPY |
  ID_MIPMAP_BIAS |
  ID_COLOUR_OP |
  ID_REPLACE |
  ID_ADD |
  ID_MODULATE |
  ID_ALPHA_BLEND |
  ID_COLOUR_OP_EX |
  ID_SOURCE1 |
  ID_SOURCE2 |
  ID_MODULATE_X2 |
  ID_MODULATE_X4 |
  ID_ADD_SIGNED |
  ID_ADD_SMOOTH |
  ID_SUBTRACT |
  ID_BLEND_DIFFUSE_COLOUR |
  ID_BLEND_DIFFUSE_ALPHA |
  ID_BLEND_TEXTURE_ALPHA |
  ID_BLEND_CURRENT_ALPHA |
  ID_BLEND_MANUAL |
  ID_DOT_PRODUCT |
  ID_SRC_CURRENT |
  ID_SRC_TEXTURE |
  ID_SRC_DIFFUSE |
  ID_SRC_SPECULAR |
  ID_SRC_MANUAL |
  ID_COLOUR_OP_MULTIPASS_FALLBACK |
  ID_ALPHA_OP_EX |
  ID_ENV_MAP |
  ID_SPHERICAL |
  ID_PLANAR |
  ID_CUBIC_REFLECTION |
  ID_CUBIC_NORMAL |
  ID_SCROLL |
  ID_SCROLL_ANIM |
  ID_ROTATE |
  ID_ROTATE_ANIM |
  ID_SCALE |
  ID_WAVE_XFORM |
  ID_SCROLL_X |
  ID_SCROLL_Y |
  ID_SCALE_X |
  ID_SCALE_Y |
  ID_SINE |
  ID_TRIANGLE |
  ID_SQUARE |
  ID_SAWTOOTH |
  ID_INVERSE_SAWTOOTH |
  ID_TRANSFORM |
  ID_BINDING_TYPE |
  ID_VERTEX |
  ID_FRAGMENT |
  ID_CONTENT_TYPE |
  ID_NAMED |
  ID_SHADOW |
  ID_TEXTURE_SOURCE |
  ID_PARTICLE_SYSTEM |
  ID_EMITTER |
  ID_AFFECTOR |
  ID_COMPOSITOR |
  ID_TARGET |
  ID_TARGET_OUTPUT |
  ID_INPUT |
  ID_PREVIOUS |
  ID_TARGET_WIDTH |
  ID_TARGET_HEIGHT |
  ID_TARGET_WIDTH_SCALED |
  ID_TARGET_HEIGHT_SCALED |
  ID_ONLY_INITIAL |
  ID_VISIBILITY_MASK |
  ID_LOD_BIAS |
  ID_MATERIAL_SCHEME |
  ID_SHADOWS_ENABLED |
  ID_CLEAR |
  ID_STENCIL |
  ID_RENDER_SCENE |
  ID_RENDER_QUAD |
  ID_IDENTIFIER |
  ID_FIRST_RENDER_QUEUE |
  ID_LAST_RENDER_QUEUE |
  ID_BUFFERS |
  ID_COLOUR |
  ID_DEPTH |
  ID_COLOUR_VALUE |
  ID_DEPTH_VALUE |
  ID_STENCIL_VALUE |
  ID_CHECK |
  ID_COMP_FUNC |
  ID_REF_VALUE |
  ID_MASK |
  ID_FAIL_OP |
  ID_KEEP |
  ID_INCREMENT |
  ID_DECREMENT |
  ID_INCREMENT_WRAP |
  ID_DECREMENT_WRAP |
  ID_INVERT |
  ID_DEPTH_FAIL_OP |
  ID_PASS_OP |
  ID_TWO_SIDED |
  ID_END_BUILTIN_IDS |

Definition at line 497 of file OgreScriptCompiler.h.

enum Ogre::AbstractNodeType

This enum holds the types of the possible abstract nodes.

Enumeration values:

  ANT_UNKNOWN |
  ANT_ATOM |
  ANT_OBJECT |
  ANT_PROPERTY |
  ANT_IMPORT |
  ANT_VARIABLE_SET |
  ANT_VARIABLE_ACCESS |

Definition at line 70 of file OgreScriptCompiler.h.

enum Ogre::ConcreteNodeType

These enums hold the types of the concrete parsed nodes.

Enumeration values:

  CNT_VARIABLE |
  CNT_VARIABLE_ASSIGN |
  CNT_WORD |
  CNT_IMPORT |
  CNT_QUOTE |
  CNT_LBRACE |
  CNT_RBRACE |
  CNT_COLON |

Definition at line 43 of file OgreScriptCompiler.h.

Copyright © 2008 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sat Apr 11 13:46:45 2009