IGameObjectEngine

The interface of the IGameObject engine.  The IGameObjectEngine maintans a database of IGameObjects that have been provided by the loaded RuleSets.  The purpose of keeping track of all of the IGameObjects is related entirely to serialization of the Game and PlayerGame data.  Since IGameObjects are entirely pluggable, it would be impossible to know which objects to create and load when reading in data from the disk unless there was some method of creating the right object at the right time.  The IGameObjectEngine provides a way by storing IGameObjects with an associated key.  When an IGameObject needs to be created from the disk, the serialization function can call the CreateGameObject function to request the right IGameObject for the key that it requires.

Project

ModelCore

Include

IGameObjectEngine.h

Summary
The interface of the IGameObject engine.
Creates a new IGameObject that matches the given name.
The IGameObjectEngine destructor.

Public

Summary
Creates a new IGameObject that matches the given name.

Pure Virtual Functions

CreateGameObject

virtual IGameObject *CreateGameObject(const wxString &name) const=0

Creates a new IGameObject that matches the given name.

Parameters

nameThe name of the IGameObject to create.

Returns

A newly cloned IGameObject.  May be NULL if no object was found to match the name.

Protected

Summary
The IGameObjectEngine destructor.

Destructor

~IGameObjectEngine

virtual ~IGameObjectEngine()=0

The IGameObjectEngine destructor.  It is pure virtual because this class must be derived from in order to be used.

An interface for all game objects.
virtual IGameObject *CreateGameObject(const wxString &name) const=0
Creates a new IGameObject that matches the given name.
virtual ~IGameObjectEngine()=0
The IGameObjectEngine destructor.
The interface of the IGameObject engine.
A repository of all things rules-related.
Still volatile.
Still volatile.
ModelCore provides all of the data classes and associated helper classes and functions required to represent a complete game.