context.h 732 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #pragma once
  2. struct SDL_Renderer;
  3. struct SDL_Window;
  4. namespace testbed {
  5. struct context {
  6. context();
  7. ~context();
  8. context(const context &) = delete;
  9. context(context &&) = delete;
  10. context &operator=(const context &) = delete;
  11. context &operator=(context &&) = delete;
  12. static constexpr auto logical_width() noexcept {
  13. return 1920;
  14. }
  15. static constexpr auto logical_height() noexcept {
  16. return 1080;
  17. }
  18. SDL_Window *window() const noexcept;
  19. SDL_Renderer *renderer() const noexcept;
  20. operator SDL_Window *() const noexcept;
  21. operator SDL_Renderer *() const noexcept;
  22. private:
  23. SDL_Window *sdl_window;
  24. SDL_Renderer *sdl_renderer;
  25. };
  26. } // namespace testbed