13class MSXEventDistributor;
14class StateChangeDistributor;
16class CommandController;
30 template<
typename Archive>
31 void serialize(Archive& ar,
unsigned version);
34 void createTouchpadStateChange(EmuTime::param time,
35 uint8_t x, uint8_t y,
bool touch,
bool button);
40 [[nodiscard]] std::string_view getName()
const override;
41 [[nodiscard]] std::string_view getDescription()
const override;
42 void plugHelper(
Connector& connector, EmuTime::param time)
override;
43 void unplugHelper(EmuTime::param time)
override;
46 [[nodiscard]] uint8_t read(EmuTime::param time)
override;
47 void write(uint8_t value, EmuTime::param time)
override;
50 void signalMSXEvent(
const Event& event,
51 EmuTime::param time)
noexcept override;
53 void signalStateChange(
const StateChange& event)
override;
54 void stopReplay(EmuTime::param time)
noexcept override;
64 EmuTime start = EmuTime::zero();
66 uint8_t hostButtons = 0;
68 bool touch =
false, button =
false;
Represents something you can plug devices into.
Represents the output window/screen of openMSX.
Base class for all external MSX state changing events.
void serialize(Archive &ar, unsigned version)
Touchpad(MSXEventDistributor &eventDistributor, StateChangeDistributor &stateChangeDistributor, Display &display, CommandController &commandController)
This file implemented 3 utility functions: