13class PluggingController;
28 [[nodiscard]] std::string_view
getName()
const override;
34 [[nodiscard]] uint8_t
read(EmuTime::param time)
override;
35 void write(uint8_t value, EmuTime::param time)
override;
37 template<
typename Archive>
38 void serialize(Archive& ar,
unsigned version);
41 void createPorts(std::string_view description, EmuTime::param time);
44 std::array<std::optional<JoystickPort>, 4>
slaves;
48 const std::string name;
Represents something you can plug devices into.
This device is plugged in into the joy-ports and consolidates several other joysticks plugged into it...
void unplugHelper(EmuTime::param time) override
void plugHelper(Connector &connector, EmuTime::param time) override
uint8_t read(EmuTime::param time) override
Read from the joystick device.
std::string_view getDescription() const override
Description for this pluggable.
void serialize(Archive &ar, unsigned version)
void write(uint8_t value, EmuTime::param time) override
Write a value to the joystick device.
std::string_view getName() const override
Name used to identify this pluggable.
void createPorts(std::string_view description, EmuTime::param time)
std::array< std::optional< JoystickPort >, 4 > slaves
PluggingController & pluggingController
Central administration of Connectors and Pluggables.
This file implemented 3 utility functions: