Context.pkg 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. $#include "Audio.h"
  2. $#include "Console.h"
  3. $#include "Context.h"
  4. $#include "DebugHud.h"
  5. $#include "DebugRenderer.h"
  6. $#include "Engine.h"
  7. $#include "FileSystem.h"
  8. $#include "Graphics.h"
  9. $#include "Input.h"
  10. $#include "Log.h"
  11. $#include "Network.h"
  12. $#include "LuaScript.h"
  13. $#include "PhysicsWorld.h"
  14. $#include "Renderer.h"
  15. $#include "ResourceCache.h"
  16. $#include "Timer.h"
  17. $#include "UI.h"
  18. class Context
  19. {
  20. Object* GetEventSender() const;
  21. EventHandler* GetEventHandler() const;
  22. const String GetTypeName(ShortStringHash type) const;
  23. };
  24. Context* GetContext();
  25. Object* GetEventSender();
  26. EventHandler* GetEventHandler() const;
  27. Audio* GetAudio();
  28. Console* GetConsole();
  29. DebugHud* GetDebugHud();
  30. DebugRenderer* GetDebugRenderer();
  31. Engine* GetEngine();
  32. FileSystem* GetFileSystem();
  33. Graphics* GetGraphics();
  34. Input* GetInput();
  35. Log* GetLog();
  36. Network* GetNetwork();
  37. PhysicsWorld* GetPhysicsWorld();
  38. Renderer* GetRenderer();
  39. ResourceCache* GetCache();
  40. Time* GetTime();
  41. UI* GetUI();
  42. ${
  43. static Object* GetEventSender()
  44. {
  45. return GetContext()->GetEventSender();
  46. }
  47. static EventHandler* GetEventHandler()
  48. {
  49. return GetContext()->GetEventHandler();
  50. }
  51. static Audio* GetAudio()
  52. {
  53. return GetContext()->GetSubsystem<Audio>();
  54. }
  55. static Console* GetConsole()
  56. {
  57. return GetContext()->GetSubsystem<Console>();
  58. }
  59. static DebugHud* GetDebugHud()
  60. {
  61. return GetContext()->GetSubsystem<DebugHud>();
  62. }
  63. static DebugRenderer* GetDebugRenderer()
  64. {
  65. return GetContext()->GetSubsystem<DebugRenderer>();
  66. }
  67. static Engine* GetEngine()
  68. {
  69. return GetContext()->GetSubsystem<Engine>();
  70. }
  71. static FileSystem* GetFileSystem()
  72. {
  73. return GetContext()->GetSubsystem<FileSystem>();
  74. }
  75. static Graphics* GetGraphics()
  76. {
  77. return GetContext()->GetSubsystem<Graphics>();
  78. }
  79. static Input* GetInput()
  80. {
  81. return GetContext()->GetSubsystem<Input>();
  82. }
  83. static Log* GetLog()
  84. {
  85. return GetContext()->GetSubsystem<Log>();
  86. }
  87. static Network* GetNetwork()
  88. {
  89. return GetContext()->GetSubsystem<Network>();
  90. }
  91. static PhysicsWorld* GetPhysicsWorld()
  92. {
  93. return GetContext()->GetSubsystem<PhysicsWorld>();
  94. }
  95. static Renderer* GetRenderer()
  96. {
  97. return GetContext()->GetSubsystem<Renderer>();
  98. }
  99. static ResourceCache* GetCache()
  100. {
  101. return GetContext()->GetSubsystem<ResourceCache>();
  102. }
  103. static Time* GetTime()
  104. {
  105. return GetContext()->GetSubsystem<Time>();
  106. }
  107. static UI* GetUI()
  108. {
  109. return GetContext()->GetSubsystem<UI>();
  110. }
  111. $}