openMSX
SG1000Pause.hh
Go to the documentation of this file.
1#ifndef SG1000PAUSE_HH
2#define SG1000PAUSE_HH
3
4#include "MSXDevice.hh"
5#include "MSXEventListener.hh"
6#include "Schedulable.hh"
7
8namespace openmsx {
9
14class SG1000Pause final : public MSXDevice,
15 private MSXEventListener, private Schedulable
16{
17public:
18 explicit SG1000Pause(const DeviceConfig& config);
19 ~SG1000Pause() override;
20
21 template<typename Archive>
22 void serialize(Archive& ar, unsigned version);
23
24private:
25 // MSXEventListener
26 void signalMSXEvent(const Event& event,
27 EmuTime::param time) noexcept override;
28
29 // Schedulable
30 void executeUntil(EmuTime::param time) override;
31};
32
33} // namespace openmsx
34
35#endif
An MSXDevice is an emulated hardware component connected to the bus of the emulated MSX.
Definition MSXDevice.hh:36
This button is labeled "hold" on SG-1000, "pause" on SG-1000 mk 2 and "reset" on SC-3000.
~SG1000Pause() override
void serialize(Archive &ar, unsigned version)
Every class that wants to get scheduled at some point must inherit from this class.
This file implemented 3 utility functions:
Definition Autofire.cc:11
std::variant< KeyUpEvent, KeyDownEvent, MouseMotionEvent, MouseButtonUpEvent, MouseButtonDownEvent, MouseWheelEvent, JoystickAxisMotionEvent, JoystickHatEvent, JoystickButtonUpEvent, JoystickButtonDownEvent, OsdControlReleaseEvent, OsdControlPressEvent, WindowEvent, TextEvent, FileDropEvent, QuitEvent, FinishFrameEvent, CliCommandEvent, GroupEvent, BootEvent, FrameDrawnEvent, BreakEvent, SwitchRendererEvent, TakeReverseSnapshotEvent, AfterTimedEvent, MachineLoadedEvent, MachineActivatedEvent, MachineDeactivatedEvent, MidiInReaderEvent, MidiInWindowsEvent, MidiInCoreMidiEvent, MidiInCoreMidiVirtualEvent, MidiInALSAEvent, Rs232TesterEvent, Rs232NetEvent, ImGuiDelayedActionEvent, ImGuiActiveEvent > Event
Definition Event.hh:445