RendererSystem.cpp 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. #include "ErrorHandlerLocator.h"
  2. #include "RendererScene.h"
  3. #include "RendererSystem.h"
  4. RendererSystem::RendererSystem()
  5. {
  6. m_rendererScene = nullptr;
  7. }
  8. RendererSystem::~RendererSystem()
  9. {
  10. }
  11. ErrorCode RendererSystem::init()
  12. {
  13. ErrorCode returnCode = ErrorCode::Success;
  14. // Initialize the renderer
  15. returnCode = m_renderer.init();
  16. // Check if the renderer initialization was successful
  17. if(returnCode == ErrorCode::Success)
  18. {
  19. ErrHandlerLoc::get().log(ErrorType::Info, ErrorSource::Source_Renderer, "Renderer has been initialized");
  20. }
  21. return returnCode;
  22. }
  23. ErrorCode RendererSystem::setup(const PropertySet &p_properties)
  24. {
  25. return ErrorCode::Success;
  26. }
  27. ErrorCode RendererSystem::preload()
  28. {
  29. if(m_rendererScene != nullptr)
  30. return m_rendererScene->preload();
  31. else
  32. return ErrorCode::Failure;
  33. }
  34. void RendererSystem::loadInBackground()
  35. {
  36. if(m_rendererScene != nullptr)
  37. return m_rendererScene->loadInBackground();
  38. }
  39. std::string RendererSystem::getName()
  40. {
  41. return "";
  42. }
  43. SystemScene *RendererSystem::createScene(SceneLoader *p_sceneLoader)
  44. {
  45. if(m_rendererScene == nullptr)
  46. {
  47. // Create new scene
  48. m_rendererScene = new RendererScene(this, p_sceneLoader);
  49. ErrorCode sceneError = m_rendererScene->init();
  50. // Check if it initialized correctly (cannot continue without the scene)
  51. if(sceneError != ErrorCode::Success)
  52. {
  53. ErrHandlerLoc::get().log(sceneError);
  54. }
  55. else
  56. {
  57. // Check for errors
  58. GLenum glError = glGetError();
  59. }
  60. }
  61. return m_rendererScene;
  62. }
  63. SystemScene *RendererSystem::getScene()
  64. {
  65. return m_rendererScene;
  66. }