$#include "Audio.h" $#include "Console.h" $#include "Context.h" $#include "DebugHud.h" $#include "DebugRenderer.h" $#include "Engine.h" $#include "FileSystem.h" $#include "Graphics.h" $#include "Input.h" $#include "Log.h" $#include "Network.h" $#include "LuaScript.h" $#include "PhysicsWorld.h" $#include "Renderer.h" $#include "ResourceCache.h" $#include "Timer.h" $#include "UI.h" class Context { Object* GetEventSender() const; EventHandler* GetEventHandler() const; const String GetTypeName(ShortStringHash type) const; }; Context* GetContext(); Object* GetEventSender(); EventHandler* GetEventHandler() const; Audio* GetAudio(); Console* GetConsole(); DebugHud* GetDebugHud(); DebugRenderer* GetDebugRenderer(); Engine* GetEngine(); FileSystem* GetFileSystem(); Graphics* GetGraphics(); Input* GetInput(); Log* GetLog(); Network* GetNetwork(); PhysicsWorld* GetPhysicsWorld(); Renderer* GetRenderer(); ResourceCache* GetCache(); Time* GetTime(); UI* GetUI(); ${ static Object* GetEventSender() { return GetContext()->GetEventSender(); } static EventHandler* GetEventHandler() { return GetContext()->GetEventHandler(); } static Audio* GetAudio() { return GetContext()->GetSubsystem