OGRE  2.1.0unstable
Object-Oriented Graphics Rendering Engine
OgreScriptCompiler.h File Reference
#include "OgreSharedPtr.h"
#include "OgreSingleton.h"
#include "OgreScriptLoader.h"
#include "OgreGpuProgram.h"
#include "OgreAny.h"
#include "Threading/OgreThreadHeaders.h"
#include "OgreHeaderPrefix.h"
#include "OgreHeaderSuffix.h"

Classes

class  Ogre::AbstractNode
 
class  Ogre::AtomAbstractNode
 This is an abstract node which cannot be broken down further. More...
 
struct  Ogre::ConcreteNode
 
class  Ogre::CreateCompositorScriptCompilerEvent
 
class  Ogre::CreateGpuProgramScriptCompilerEvent
 
class  Ogre::CreateGpuSharedParametersScriptCompilerEvent
 
class  Ogre::CreateHighLevelGpuProgramScriptCompilerEvent
 
class  Ogre::CreateMaterialScriptCompilerEvent
 
class  Ogre::CreateParticleSystemScriptCompilerEvent
 
class  Ogre::ImportAbstractNode
 This abstract node represents an import statement. More...
 
class  Ogre::ObjectAbstractNode
 This specific abstract node represents a script object. More...
 
class  Ogre::PreApplyTextureAliasesScriptCompilerEvent
 
class  Ogre::ProcessNameExclusionScriptCompilerEvent
 
class  Ogre::ProcessResourceNameScriptCompilerEvent
 
class  Ogre::PropertyAbstractNode
 This abstract node represents a script property. More...
 
class  Ogre::ScriptCompiler
 This is the main class for the compiler. More...
 
struct  Ogre::ScriptCompiler::Error
 
class  Ogre::ScriptCompilerEvent
 This struct is a base class for events which can be thrown by the compilers and caught by subscribers. More...
 
class  Ogre::ScriptCompilerListener
 This is a listener for the compiler. More...
 
class  Ogre::ScriptCompilerManager
 Manages threaded compilation of scripts. More...
 
class  Ogre::VariableAccessAbstractNode
 This abstract node represents a variable assignment. More...
 

Namespaces

 Ogre
 

Typedefs

typedef list< AbstractNodePtr >::type Ogre::AbstractNodeList
 
typedef SharedPtr< AbstractNodeList > Ogre::AbstractNodeListPtr
 
typedef SharedPtr< AbstractNode > Ogre::AbstractNodePtr
 
typedef list< ConcreteNodePtr >::type Ogre::ConcreteNodeList
 
typedef SharedPtr< ConcreteNodeList > Ogre::ConcreteNodeListPtr
 
typedef SharedPtr< ConcreteNode > Ogre::ConcreteNodePtr
 

Enumerations

enum  {
  Ogre::ID_MATERIAL = 3, Ogre::ID_VERTEX_PROGRAM, Ogre::ID_GEOMETRY_PROGRAM, Ogre::ID_FRAGMENT_PROGRAM,
  Ogre::ID_TECHNIQUE, Ogre::ID_PASS, Ogre::ID_TEXTURE_UNIT, Ogre::ID_VERTEX_PROGRAM_REF,
  Ogre::ID_GEOMETRY_PROGRAM_REF, Ogre::ID_FRAGMENT_PROGRAM_REF, Ogre::ID_SHADOW_CASTER_VERTEX_PROGRAM_REF, Ogre::ID_SHADOW_CASTER_FRAGMENT_PROGRAM_REF,
  Ogre::ID_SHADOW_CASTER_MATERIAL, Ogre::ID_LOD_VALUES, Ogre::ID_LOD_STRATEGY, Ogre::ID_LOD_DISTANCES,
  Ogre::ID_RECEIVE_SHADOWS, Ogre::ID_TRANSPARENCY_CASTS_SHADOWS, Ogre::ID_SET_TEXTURE_ALIAS, Ogre::ID_SOURCE,
  Ogre::ID_SYNTAX, Ogre::ID_DEFAULT_PARAMS, Ogre::ID_PARAM_INDEXED, Ogre::ID_PARAM_NAMED,
  Ogre::ID_PARAM_INDEXED_AUTO, Ogre::ID_PARAM_NAMED_AUTO, Ogre::ID_SCHEME, Ogre::ID_LOD_INDEX,
  Ogre::ID_GPU_VENDOR_RULE, Ogre::ID_GPU_DEVICE_RULE, Ogre::ID_INCLUDE, Ogre::ID_EXCLUDE,
  Ogre::ID_AMBIENT, Ogre::ID_DIFFUSE, Ogre::ID_SPECULAR, Ogre::ID_EMISSIVE,
  Ogre::ID_VERTEXCOLOUR, Ogre::ID_SCENE_BLEND, Ogre::ID_COLOUR_BLEND, Ogre::ID_ONE,
  Ogre::ID_ZERO, Ogre::ID_DEST_COLOUR, Ogre::ID_SRC_COLOUR, Ogre::ID_ONE_MINUS_DEST_COLOUR,
  Ogre::ID_ONE_MINUS_SRC_COLOUR, Ogre::ID_DEST_ALPHA, Ogre::ID_SRC_ALPHA, Ogre::ID_ONE_MINUS_DEST_ALPHA,
  Ogre::ID_ONE_MINUS_SRC_ALPHA, Ogre::ID_SEPARATE_SCENE_BLEND, Ogre::ID_SCENE_BLEND_OP, Ogre::ID_REVERSE_SUBTRACT,
  Ogre::ID_MIN, Ogre::ID_MAX, Ogre::ID_SEPARATE_SCENE_BLEND_OP, Ogre::ID_DEPTH_CHECK,
  Ogre::ID_DEPTH_WRITE, Ogre::ID_DEPTH_FUNC, Ogre::ID_DEPTH_BIAS, Ogre::ID_ITERATION_DEPTH_BIAS,
  Ogre::ID_ALWAYS_FAIL, Ogre::ID_ALWAYS_PASS, Ogre::ID_LESS_EQUAL, Ogre::ID_LESS,
  Ogre::ID_EQUAL, Ogre::ID_NOT_EQUAL, Ogre::ID_GREATER_EQUAL, Ogre::ID_GREATER,
  Ogre::ID_ALPHA_REJECTION, Ogre::ID_ALPHA_TO_COVERAGE, Ogre::ID_LIGHT_SCISSOR, Ogre::ID_LIGHT_CLIP_PLANES,
  Ogre::ID_CULL_HARDWARE, Ogre::ID_CULL_MODE, Ogre::ID_CLOCKWISE, Ogre::ID_ANTICLOCKWISE,
  Ogre::ID_SHADING, Ogre::ID_FLAT, Ogre::ID_GOURAUD, Ogre::ID_PHONG,
  Ogre::ID_POLYGON_MODE, Ogre::ID_SOLID, Ogre::ID_WIREFRAME, Ogre::ID_POINTS,
  Ogre::ID_POLYGON_MODE_OVERRIDEABLE, Ogre::ID_FOG_OVERRIDE, Ogre::ID_NONE, Ogre::ID_LINEAR,
  Ogre::ID_EXP, Ogre::ID_EXP2, Ogre::ID_COLOUR_WRITE, Ogre::ID_MAX_LIGHTS,
  Ogre::ID_START_LIGHT, Ogre::ID_ITERATION, Ogre::ID_ONCE, Ogre::ID_ONCE_PER_LIGHT,
  Ogre::ID_PER_LIGHT, Ogre::ID_PER_N_LIGHTS, Ogre::ID_POINT, Ogre::ID_SPOT,
  Ogre::ID_DIRECTIONAL, Ogre::ID_LIGHT_MASK, Ogre::ID_POINT_SIZE, Ogre::ID_POINT_SPRITES,
  Ogre::ID_POINT_SIZE_ATTENUATION, Ogre::ID_POINT_SIZE_MIN, Ogre::ID_POINT_SIZE_MAX, Ogre::ID_TEXTURE_ALIAS,
  Ogre::ID_TEXTURE, Ogre::ID_1D, Ogre::ID_2D, Ogre::ID_3D,
  Ogre::ID_CUBIC, Ogre::ID_2DARRAY, Ogre::ID_UNLIMITED, Ogre::ID_ALPHA,
  Ogre::ID_GAMMA, Ogre::ID_ANIM_TEXTURE, Ogre::ID_CUBIC_TEXTURE, Ogre::ID_SEPARATE_UV,
  Ogre::ID_COMBINED_UVW, Ogre::ID_TEX_COORD_SET, Ogre::ID_TEX_ADDRESS_MODE, Ogre::ID_WRAP,
  Ogre::ID_CLAMP, Ogre::ID_BORDER, Ogre::ID_MIRROR, Ogre::ID_TEX_BORDER_COLOUR,
  Ogre::ID_FILTERING, Ogre::ID_BILINEAR, Ogre::ID_TRILINEAR, Ogre::ID_ANISOTROPIC,
  Ogre::ID_CMPFUNC, Ogre::ID_MAX_ANISOTROPY, Ogre::ID_MIPMAP_BIAS, Ogre::ID_COLOUR_OP,
  Ogre::ID_REPLACE, Ogre::ID_ADD, Ogre::ID_MODULATE, Ogre::ID_ALPHA_BLEND,
  Ogre::ID_COLOUR_OP_EX, Ogre::ID_SOURCE1, Ogre::ID_SOURCE2, Ogre::ID_MODULATE_X2,
  Ogre::ID_MODULATE_X4, Ogre::ID_ADD_SIGNED, Ogre::ID_ADD_SMOOTH, Ogre::ID_SUBTRACT,
  Ogre::ID_BLEND_DIFFUSE_COLOUR, Ogre::ID_BLEND_DIFFUSE_ALPHA, Ogre::ID_BLEND_TEXTURE_ALPHA, Ogre::ID_BLEND_CURRENT_ALPHA,
  Ogre::ID_BLEND_MANUAL, Ogre::ID_DOT_PRODUCT, Ogre::ID_SRC_CURRENT, Ogre::ID_SRC_TEXTURE,
  Ogre::ID_SRC_DIFFUSE, Ogre::ID_SRC_SPECULAR, Ogre::ID_SRC_MANUAL, Ogre::ID_COLOUR_OP_MULTIPASS_FALLBACK,
  Ogre::ID_ALPHA_OP_EX, Ogre::ID_ENV_MAP, Ogre::ID_SPHERICAL, Ogre::ID_PLANAR,
  Ogre::ID_CUBIC_REFLECTION, Ogre::ID_CUBIC_NORMAL, Ogre::ID_SCROLL, Ogre::ID_SCROLL_ANIM,
  Ogre::ID_ROTATE, Ogre::ID_ROTATE_ANIM, Ogre::ID_SCALE, Ogre::ID_WAVE_XFORM,
  Ogre::ID_SCROLL_X, Ogre::ID_SCROLL_Y, Ogre::ID_SCALE_X, Ogre::ID_SCALE_Y,
  Ogre::ID_SINE, Ogre::ID_TRIANGLE, Ogre::ID_SQUARE, Ogre::ID_SAWTOOTH,
  Ogre::ID_INVERSE_SAWTOOTH, Ogre::ID_TRANSFORM, Ogre::ID_BINDING_TYPE, Ogre::ID_VERTEX,
  Ogre::ID_FRAGMENT, Ogre::ID_CONTENT_TYPE, Ogre::ID_NAMED, Ogre::ID_SHADOW,
  Ogre::ID_COMPOSITOR, Ogre::ID_TEXTURE_SOURCE, Ogre::ID_SHARED_PARAMS, Ogre::ID_SHARED_PARAM_NAMED,
  Ogre::ID_SHARED_PARAMS_REF, Ogre::ID_PARTICLE_SYSTEM, Ogre::ID_EMITTER, Ogre::ID_AFFECTOR,
  Ogre::ID_WORKSPACE, Ogre::ID_ALIAS, Ogre::ID_CONNECT, Ogre::ID_CONNECT_BUFFER,
  Ogre::ID_CONNECT_OUTPUT, Ogre::ID_CONNECT_EXTERNAL, Ogre::ID_CONNECT_BUFFER_EXTERNAL, Ogre::ID_COMPOSITOR_NODE,
  Ogre::ID_IN, Ogre::ID_OUT, Ogre::ID_IN_BUFFER, Ogre::ID_OUT_BUFFER,
  Ogre::ID_CUSTOM_ID, Ogre::ID_BUFFER, Ogre::ID_TARGET_WIDTH, Ogre::ID_TARGET_HEIGHT,
  Ogre::ID_TARGET_WIDTH_SCALED, Ogre::ID_TARGET_HEIGHT_SCALED, Ogre::ID_TARGET_FORMAT, Ogre::ID_NO_GAMMA,
  Ogre::ID_NO_FSAA, Ogre::ID_EXPLICIT_RESOLVE, Ogre::ID_DEPTH_POOL, Ogre::ID_DEPTH_TEXTURE,
  Ogre::ID_DEPTH_FORMAT, Ogre::ID_2D_ARRAY, Ogre::ID_CUBEMAP, Ogre::ID_MIPMAPS,
  Ogre::ID_AUTOMIPMAPS, Ogre::ID_TARGET, Ogre::ID_CLEAR, Ogre::ID_STENCIL,
  Ogre::ID_RENDER_SCENE, Ogre::ID_RENDER_QUAD, Ogre::ID_DEPTH_COPY, Ogre::ID_BIND_UAV,
  Ogre::ID_VIEWPORT, Ogre::ID_NUM_INITIAL, Ogre::ID_IDENTIFIER, Ogre::ID_OVERLAYS,
  Ogre::ID_EXECUTION_MASK, Ogre::ID_VIEWPORT_MODIFIER_MASK, Ogre::ID_USES_UAV, Ogre::ID_ALLOW_WRITE_AFTER_WRITE,
  Ogre::ID_EXPOSE, Ogre::ID_SHADOW_MAP_FULL_VIEWPORT, Ogre::ID_PROFILING_ID, Ogre::ID_LOD_BIAS,
  Ogre::ID_LOD_UPDATE_LIST, Ogre::ID_LOD_CAMERA, Ogre::ID_CULL_REUSE_DATA, Ogre::ID_CULL_CAMERA,
  Ogre::ID_MATERIAL_SCHEME, Ogre::ID_VISIBILITY_MASK, Ogre::ID_LIGHT_VISIBILITY_MASK, Ogre::ID_SHADOWS_ENABLED,
  Ogre::ID_CAMERA, Ogre::ID_FIRST_RENDER_QUEUE, Ogre::ID_LAST_RENDER_QUEUE, Ogre::ID_CAMERA_CUBEMAP_REORIENT,
  Ogre::ID_ENABLE_FORWARDPLUS, Ogre::ID_IS_PREPASS, Ogre::ID_USE_PREPASS, Ogre::ID_USE_QUAD,
  Ogre::ID_QUAD_NORMALS, Ogre::ID_CAMERA_FAR_CORNERS_VIEW_SPACE, Ogre::ID_CAMERA_FAR_CORNERS_VIEW_SPACE_NORMALIZED, Ogre::ID_CAMERA_FAR_CORNERS_VIEW_SPACE_NORMALIZED_LH,
  Ogre::ID_CAMERA_FAR_CORNERS_WORLD_SPACE, Ogre::ID_CAMERA_FAR_CORNERS_WORLD_SPACE_CENTERED, Ogre::ID_CAMERA_DIRECTION, Ogre::ID_INPUT,
  Ogre::ID_ALIAS_ON_COPY_FAILURE, Ogre::ID_BUFFERS, Ogre::ID_COLOUR, Ogre::ID_DEPTH,
  Ogre::ID_COLOUR_VALUE, Ogre::ID_DEPTH_VALUE, Ogre::ID_STENCIL_VALUE, Ogre::ID_DISCARD_ONLY,
  Ogre::ID_CHECK, Ogre::ID_REF_VALUE, Ogre::ID_MASK, Ogre::ID_READ_MASK,
  Ogre::ID_BOTH, Ogre::ID_FRONT, Ogre::ID_BACK, Ogre::ID_COMP_FUNC,
  Ogre::ID_FAIL_OP, Ogre::ID_KEEP, Ogre::ID_INCREMENT, Ogre::ID_DECREMENT,
  Ogre::ID_INCREMENT_WRAP, Ogre::ID_DECREMENT_WRAP, Ogre::ID_INVERT, Ogre::ID_DEPTH_FAIL_OP,
  Ogre::ID_PASS_OP, Ogre::ID_TWO_SIDED, Ogre::ID_UAV, Ogre::ID_UAV_EXTERNAL,
  Ogre::ID_UAV_BUFFER, Ogre::ID_STARTING_SLOT, Ogre::ID_KEEP_PREVIOUS_UAV, Ogre::ID_READ,
  Ogre::ID_WRITE, Ogre::ID_MIPMAP, Ogre::ID_JOB, Ogre::ID_MIPMAP_METHOD,
  Ogre::ID_API_DEFAULT, Ogre::ID_COMPUTE_HQ, Ogre::ID_KERNEL_RADIUS, Ogre::ID_GAUSS_DEVIATION,
  Ogre::ID_READ_BACK_AS_TEXTURE, Ogre::ID_SHADOW_NODE, Ogre::ID_NUM_SPLITS, Ogre::ID_PSSM_SPLIT_PADDING,
  Ogre::ID_PSSM_SPLIT_BLEND, Ogre::ID_PSSM_SPLIT_FADE, Ogre::ID_PSSM_LAMBDA, Ogre::ID_SHADOW_MAP_TARGET_TYPE,
  Ogre::ID_SHADOW_MAP_REPEAT, Ogre::ID_SHADOW_MAP, Ogre::ID_UV, Ogre::ID_ARRAY_INDEX,
  Ogre::ID_FSAA, Ogre::ID_LIGHT, Ogre::ID_SPLIT, Ogre::ID_HLMS,
  Ogre::ID_RT_SHADER_SYSTEM, Ogre::ID_TESSELLATION_HULL_PROGRAM, Ogre::ID_TESSELLATION_DOMAIN_PROGRAM, Ogre::ID_COMPUTE_PROGRAM,
  Ogre::ID_TESSELLATION_HULL_PROGRAM_REF, Ogre::ID_TESSELLATION_DOMAIN_PROGRAM_REF, Ogre::ID_COMPUTE_PROGRAM_REF, Ogre::ID_GEOMETRY,
  Ogre::ID_TESSELLATION_HULL, Ogre::ID_TESSELLATION_DOMAIN, Ogre::ID_COMPUTE, Ogre::ID_SUBROUTINE,
  Ogre::ID_END_BUILTIN_IDS
}
 This enum defines the integer ids for keywords this compiler handles. More...
 
enum  Ogre::AbstractNodeType {
  Ogre::ANT_UNKNOWN, Ogre::ANT_ATOM, Ogre::ANT_OBJECT, Ogre::ANT_PROPERTY,
  Ogre::ANT_IMPORT, Ogre::ANT_VARIABLE_SET, Ogre::ANT_VARIABLE_ACCESS
}
 This enum holds the types of the possible abstract nodes. More...
 
enum  Ogre::ConcreteNodeType {
  Ogre::CNT_VARIABLE, Ogre::CNT_VARIABLE_ASSIGN, Ogre::CNT_WORD, Ogre::CNT_IMPORT,
  Ogre::CNT_QUOTE, Ogre::CNT_LBRACE, Ogre::CNT_RBRACE, Ogre::CNT_COLON
}
 These enums hold the types of the concrete parsed nodes. More...