1#ifndef SDLVIDEOSYSTEM_HH
2#define SDLVIDEOSYSTEM_HH
17class SDLVisibleSurfaceBase;
38#if COMPONENT_LASERDISC
43 void flush()
override;
44 void takeScreenShot(
const std::string& filename,
bool withOsd)
override;
56 int signalEvent(
const Event& event)
override;
58 void update(
const Setting& subject)
noexcept override;
67 std::unique_ptr<SDLVisibleSurfaceBase> screen;
68 std::unique_ptr<Layer> consoleLayer;
69 std::unique_ptr<Layer> snowLayer;
70 std::unique_ptr<Layer> iconLayer;
71 std::unique_ptr<Layer> osdGuiLayer;
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.
Class containing all settings for renderers.
bool getCursorEnabled() override
SDLVideoSystem(Reactor &reactor, CommandConsole &console)
Activates this video system.
void repaint() override
Requests a repaint of the output surface.
void setClipboardText(zstring_view text) override
void showCursor(bool show) override
gl::ivec2 getMouseCoord() override
Returns the current mouse pointer coordinates.
std::unique_ptr< V9990Rasterizer > createV9990Rasterizer(V9990 &vdp) override
Create the V9990 rasterizer selected by the current renderer setting.
~SDLVideoSystem() override
Deactivates this video system.
bool checkSettings() override
Requests that this renderer checks its settings against the current RenderSettings.
OutputSurface * getOutputSurface() override
TODO.
void takeScreenShot(const std::string &filename, bool withOsd) override
Take a screenshot.
std::unique_ptr< LDRasterizer > createLDRasterizer(LaserdiscPlayer &ld) override
void updateWindowTitle() override
Called when the window title string has changed.
std::string getClipboardText() override
void flush() override
Finish pending drawing operations and make them visible to the user.
std::unique_ptr< Rasterizer > createRasterizer(VDP &vdp) override
Create the rasterizer selected by the current renderer setting.
Implementation of the Yamaha V9990 VDP as used in the GFX9000 cartridge by Sunrise.
Unified implementation of MSX Video Display Processors (VDPs).
Like std::string_view, but with the extra guarantee that it refers to a zero-terminated string.
This file implemented 3 utility functions: