engine.h 846 B

12345678910111213141516171819202122232425262728293031323334
  1. #ifndef ENGINE_H
  2. #define ENGINE_H
  3. //Headers
  4. #include "displayManager.h"
  5. #include "renderManager.h"
  6. #include "inputManager.h"
  7. #include "sceneManager.h"
  8. //Minimal graphics engine application
  9. class Engine{
  10. public:
  11. //Dummy constructors / Destructors
  12. Engine();
  13. ~Engine();
  14. //I use these methods instead of constructors and destructors
  15. //because I want to be able to control initialization order.
  16. //You'll see the same idea applied to all subsystem level classes.
  17. bool startUp();
  18. void shutDown();
  19. //Contains the scene switching logic and the main application loop
  20. void run();
  21. private:
  22. DisplayManager gDisplayManager;
  23. RenderManager gRenderManager;
  24. InputManager gInputManager;
  25. SceneManager gSceneManager;
  26. };
  27. #endif