BsGLRenderWindowManager.h 971 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #pragma once
  2. #include "BsGLPrerequisites.h"
  3. #include "BsRenderWindowManager.h"
  4. namespace BansheeEngine
  5. {
  6. /**
  7. * @brief Manager that handles window creation for OpenGL.
  8. */
  9. class BS_RSGL_EXPORT GLRenderWindowManager : public RenderWindowManager
  10. {
  11. public:
  12. GLRenderWindowManager(GLRenderAPI* renderSystem);
  13. protected:
  14. /**
  15. * @copydoc RenderWindowManager::createImpl()
  16. */
  17. RenderWindowPtr createImpl(RENDER_WINDOW_DESC& desc, UINT32 windowId, const RenderWindowPtr& parentWindow);
  18. private:
  19. GLRenderAPI* mRenderSystem;
  20. };
  21. /**
  22. * @brief Manager that handles window creation for OpenGL.
  23. */
  24. class BS_RSGL_EXPORT GLRenderWindowCoreManager : public RenderWindowCoreManager
  25. {
  26. public:
  27. GLRenderWindowCoreManager(GLRenderAPI* renderSystem);
  28. protected:
  29. /**
  30. * @copydoc RenderWindowCoreManager::createInternal
  31. */
  32. SPtr<RenderWindowCore> createInternal(RENDER_WINDOW_DESC& desc, UINT32 windowId);
  33. private:
  34. GLRenderAPI* mRenderSystem;
  35. };
  36. }