BsGLRenderWindowManager.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
  3. #pragma once
  4. #include "BsGLPrerequisites.h"
  5. #include "BsRenderWindowManager.h"
  6. namespace BansheeEngine
  7. {
  8. /** @addtogroup GL
  9. * @{
  10. */
  11. /** Manager that handles window creation for OpenGL. */
  12. class BS_RSGL_EXPORT GLRenderWindowManager : public RenderWindowManager
  13. {
  14. public:
  15. GLRenderWindowManager(GLRenderAPI* renderSystem);
  16. protected:
  17. /** @copydoc RenderWindowManager::createImpl() */
  18. SPtr<RenderWindow> createImpl(RENDER_WINDOW_DESC& desc, UINT32 windowId, const SPtr<RenderWindow>& parentWindow) override;
  19. private:
  20. GLRenderAPI* mRenderSystem;
  21. };
  22. /** Manager that handles window creation for OpenGL. */
  23. class BS_RSGL_EXPORT GLRenderWindowCoreManager : public RenderWindowCoreManager
  24. {
  25. public:
  26. GLRenderWindowCoreManager(GLRenderAPI* renderSystem);
  27. protected:
  28. /** @copydoc RenderWindowCoreManager::createInternal */
  29. SPtr<RenderWindowCore> createInternal(RENDER_WINDOW_DESC& desc, UINT32 windowId) override;
  30. private:
  31. GLRenderAPI* mRenderSystem;
  32. };
  33. /** @} */
  34. }