openMSX
MidiOutWindows.hh
Go to the documentation of this file.
1 #ifndef MIDIOUTWINDOWS_HH
2 #define MIDIOUTWINDOWS_HH
3 
4 #if defined(_WIN32)
5 #include "MidiOutDevice.hh"
6 #include "serialize_meta.hh"
7 
8 namespace openmsx {
9 
10 class PluggingController;
11 
12 class MidiOutWindows final : public MidiOutDevice
13 {
14 public:
15  static void registerAll(PluggingController& controller);
16 
17  explicit MidiOutWindows(unsigned num);
18  ~MidiOutWindows();
19 
20  // Pluggable
21  void plugHelper(Connector& connector, EmuTime::param time) override;
22  void unplugHelper(EmuTime::param time) override;
23  [[nodiscard]] const std::string& getName() const override;
24  [[nodiscard]] std::string_view getDescription() const override;
25 
26  // SerialDataInterface (part)
27  void recvMessage(const std::vector<uint8_t>& message, EmuTime::param time) override;
28 
29  template<typename Archive>
30  void serialize(Archive& ar, unsigned version);
31 
32 private:
33  unsigned devidx;
34  std::string name;
35  std::string desc;
36 };
37 
38 } // namespace openmsx
39 
40 #endif // defined(_WIN32)
41 #endif // MIDIOUTWINDOWS_HH
serialize_meta.hh
openmsx::Keys::getName
string getName(KeyCode keyCode)
Translate key code to key name.
Definition: Keys.cc:742
openmsx::serialize
void serialize(Archive &ar, T &t, unsigned version)
Definition: serialize_core.hh:41
MidiOutDevice.hh
openmsx
This file implemented 3 utility functions:
Definition: Autofire.cc:5
openmsx::Connector
Connector
Definition: Connector.cc:83