openMSX
DeviceFactory.hh
Go to the documentation of this file.
1#ifndef DEVICEFACTORY_HH
2#define DEVICEFACTORY_HH
3
4#include <memory>
5
6namespace openmsx {
7
8class MSXDevice;
9class DeviceConfig;
10class HardwareConfig;
11class DummyDevice;
12class MSXDeviceSwitch;
13class MSXMapperIO;
14class VDPIODelay;
15class MSXCPUInterface;
16
18{
19public:
20 [[nodiscard]] static std::unique_ptr<MSXDevice> create(const DeviceConfig& conf);
21 [[nodiscard]] static std::unique_ptr<DummyDevice> createDummyDevice(
22 const HardwareConfig& hwConf);
23 [[nodiscard]] static std::unique_ptr<MSXDeviceSwitch> createDeviceSwitch(
24 const HardwareConfig& hwConf);
25 [[nodiscard]] static std::unique_ptr<MSXMapperIO> createMapperIO(
26 const HardwareConfig& hwConf);
27 [[nodiscard]] static std::unique_ptr<VDPIODelay> createVDPIODelay(
28 const HardwareConfig& hwConf, MSXCPUInterface& cpuInterface);
29};
30
31} // namespace openmsx
32
33#endif
static std::unique_ptr< MSXDevice > create(const DeviceConfig &conf)
static std::unique_ptr< DummyDevice > createDummyDevice(const HardwareConfig &hwConf)
static std::unique_ptr< MSXDeviceSwitch > createDeviceSwitch(const HardwareConfig &hwConf)
static std::unique_ptr< VDPIODelay > createVDPIODelay(const HardwareConfig &hwConf, MSXCPUInterface &cpuInterface)
static std::unique_ptr< MSXMapperIO > createMapperIO(const HardwareConfig &hwConf)
This file implemented 3 utility functions:
Definition Autofire.cc:9