1#ifndef SDLGLVISIBLESURFACE_HH
2#define SDLGLVISIBLESURFACE_HH
23 const std::string& filename);
38 void setViewPort(
gl::ivec2 logicalSize,
bool fullScreen);
45 SDL_GLContext glContext;
Represents the output window/screen of openMSX.
Generic Gang-of-Four Observer class, templatized edition.
A frame buffer where pixels can be written to.
Contains the main loop of openMSX.
Visible surface for SDL openGL renderers.
~SDLGLVisibleSurface() override
void fullScreenUpdated(bool fullScreen) override
void saveScreenshot(const std::string &filename) override
Save the content of this OutputSurface to a PNG file.
std::unique_ptr< Layer > createSnowLayer() override
std::unique_ptr< OutputSurface > createOffScreenSurface() override
Create an off-screen OutputSurface which has similar properties as this VisibleSurface.
std::unique_ptr< Layer > createConsoleLayer(Reactor &reactor, CommandConsole &console) override
std::unique_ptr< Layer > createOSDGUILayer(OSDGUI &gui) override
void finish() override
When a complete frame is finished, call this method.
static void saveScreenshotGL(const OutputSurface &output, const std::string &filename)
SDLGLVisibleSurface(int width, int height, Display &display, RTScheduler &rtScheduler, EventDistributor &eventDistributor, InputEventGenerator &inputEventGenerator, CliComm &cliComm, VideoSystem &videoSystem)
Common functionality for the plain SDL and SDLGL VisibleSurface classes.
This file implemented 3 utility functions: