1 #ifndef VISIBLESURFACE_HH
2 #define VISIBLESURFACE_HH
15 class EventDistributor;
16 class InputEventGenerator;
66 void update(
const Setting& setting) noexcept
override;
68 int signalEvent(
const std::shared_ptr<const Event>& event) noexcept
override;
70 void executeRT()
override;
Represents the output window/screen of openMSX.
Generic Gang-of-Four Observer class, templatized edition.
Contains the main loop of openMSX.
An OutputSurface which is visible to the user, such as a window or a full screen display.
virtual void updateWindowTitle()=0
Display & getDisplay() const
virtual std::unique_ptr< Layer > createOSDGUILayer(OSDGUI &gui)=0
virtual bool setFullScreen(bool fullscreen)=0
VisibleSurface(Display &display, RTScheduler &rtScheduler, EventDistributor &eventDistributor, InputEventGenerator &inputEventGenerator, CliComm &cliComm, VideoSystem &videoSystem)
virtual ~VisibleSurface()
virtual std::unique_ptr< Layer > createSnowLayer()=0
virtual std::unique_ptr< Layer > createConsoleLayer(Reactor &reactor, CommandConsole &console)=0
virtual void finish()=0
When a complete frame is finished, call this method.
virtual std::unique_ptr< OutputSurface > createOffScreenSurface()=0
Create an off-screen OutputSurface which has similar properties as this VisibleSurface.
CliComm & getCliComm() const
This file implemented 3 utility functions: