# Ogre::ScriptLoader Class Reference
General

Abstract class defining the interface used by classes which wish to perform script loading to define instances of whatever they manage. More...

`#include <OgreScriptLoader.h>`

Inheritance diagram for Ogre::ScriptLoader:
[legend]

List of all members.

## Public Member Functions

virtual | ~ScriptLoader ()
virtual const StringVector & | getScriptPatterns (void) const =0
| Gets the file patterns which should be used to find scripts for this class.
virtual void | parseScript (DataStreamPtr &stream, const String &groupName)=0
| Parse a script file.
virtual Real | getLoadingOrder (void) const =0
| Gets the relative loading order of scripts of this type.

## Detailed Description

Abstract class defining the interface used by classes which wish to perform script loading to define instances of whatever they manage.

Remarks:
  Typically classes of this type wish to either parse individual script files on demand, or be called with a group of files matching a certain pattern at the appropriate time. Normally this will coincide with resource loading, although the script use does not necessarily have to be a ResourceManager (which subclasses from this class), it may be simply a script loader which manages non-resources but needs to be synchronised at the same loading points.

  Subclasses should add themselves to the ResourceGroupManager as a script loader if they wish to be called at the point a resource group is loaded, at which point the parseScript method will be called with each file which matches a the pattern returned from getScriptPatterns.

Definition at line 58 of file OgreScriptLoader.h.

## Constructor & Destructor Documentation

virtual Ogre::ScriptLoader::~ScriptLoader | ( |  | ) | `[virtual]`

## Member Function Documentation

virtual Real Ogre::ScriptLoader::getLoadingOrder | ( | void |  | ) | const`[pure virtual]`

Gets the relative loading order of scripts of this type.

Remarks:
  There are dependencies between some kinds of scripts, and to enforce this all implementors of this interface must define a loading order.

Returns:
  A value representing the relative loading order of these scripts compared to other script users, where higher values load later.

Implemented in Ogre::OverlayManager, Ogre::ParticleSystemManager, Ogre::ResourceManager, and Ogre::ScriptCompilerManager.

virtual const StringVector& Ogre::ScriptLoader::getScriptPatterns | ( | void |  | ) | const`[pure virtual]`

Gets the file patterns which should be used to find scripts for this class.

Remarks:
  This method is called when a resource group is loaded if you use ResourceGroupManager::_registerScriptLoader.

Returns:
  A list of file patterns, in the order they should be searched in.

Implemented in Ogre::OverlayManager, Ogre::ParticleSystemManager, Ogre::ResourceManager, and Ogre::ScriptCompilerManager.

virtual void Ogre::ScriptLoader::parseScript | ( | DataStreamPtr & | stream,
|  | const String & | groupName
| ) |  | `[pure virtual]`

Parse a script file.

Parameters:

  stream | Weak reference to a data stream which is the source of the script
  groupName | The name of a resource group which should be used if any resources are created during the parse of this script.

Implemented in Ogre::CompositorManager, Ogre::FontManager, Ogre::MaterialManager, Ogre::OverlayManager, Ogre::ParticleSystemManager, Ogre::ResourceManager, and Ogre::ScriptCompilerManager.

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

- OgreScriptLoader.h

Copyright © 2008 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Sun May 8 2011 20:28:17