44 #include "worldmanager.h"
49 class AreaEffectManager;
53 class WorldManagerFactory;
65 class ManagerConstructionInfo;
107 Boole VerifyManagerInitializations();
115 World(
const String& WorldName,
const WorldManagerContainer& Managers);
138 const String& GetName()
const;
141 void PauseWorld(
const Boole Pause);
158 void PreMainLoopInit();
181 void DestroyAllManagers();
196 void RemoveManager(
const Whole ToBeRemoved);
198 void RemoveAllManagers();
202 WorldManagerContainer& GetWorldManagers();
215 static void RemoveManagerFactory(
const String& ImplName);
221 static void DestroyManagerFactory(
const String& ImplName);
224 static void DestroyAllManagerFactories();
226 static void AddAllEngineDefaultManagerFactories();
233 virtual void ProtoSerialize(
XML::Node& ParentNode)
const;
236 virtual void ProtoSerializeProperties(
XML::Node& SelfRoot)
const;
240 virtual void ProtoDeSerialize(
const XML::Node& SelfRoot);
243 virtual void ProtoDeSerializeProperties(
const XML::Node& SelfRoot);
248 virtual String GetDerivedSerializableName()
const;
251 static String GetSerializableName();
static ManagerFactoryMap ManagerFactories
A global container for registered factories for WorldManagers.
WorldManagerContainer::const_iterator ConstWorldManagerIterator
Const Iterator type for WorldManager instances stored by this class.
bool Boole
Generally acts a single bit, true or false.
WorldManagerContainer WorldManagers
A container storing all the managers belonging to this world.
ManagerFactoryMap::const_iterator ConstManagerFactoryIterator
Const Iterator type for manager factories stored by this class.
WorldManagerContainer::iterator WorldManagerIterator
Iterator type for WorldManager instances stored by this class.
String Name
Unique string identifier for world.
std::map< String, WorldManagerFactory * > ManagerFactoryMap
Basic container type for factories that construct known manager types.
ManagerFactoryMap::iterator ManagerFactoryIterator
Iterator type for manager factories stored by this class.
A light-weight handle for manipulating nodes in DOM tree.
std::list< NameValuePair > NameValuePairList
This is a datatype mostly used for describing settings or parameters that can't be declared in advanc...
This is the base class for all managers that belong to a single world instance.
std::vector< WorldManager * > WorldManagerContainer
Basic container type for WorldManager storage by this class.
The bulk of the engine components go in this namspace.
unsigned long Whole
Whole is an unsigned integer, it will be at least 32bits in size.
This class represents a world for objects to interact within.
This is a base class for factories that construct managers used by the World class.
std::string String
A datatype used to a series of characters.
This is the base manager class for audio being played in a 3D environment.
This is a helper class storing information needed for the construction of a PhysicsManager.