openMSX
MidiSessionALSA.hh
Go to the documentation of this file.
1#ifndef MIDISESSIONALSA_HH
2#define MIDISESSIONALSA_HH
3
4#include <alsa/asoundlib.h>
5#include <memory>
6
7
8namespace openmsx {
9
10class CliComm;
11class EventDistributor;
12class Scheduler;
13class PluggingController;
14
15
18class MidiSessionALSA final
19{
20public:
21 static void registerAll(PluggingController& controller, CliComm& cliComm,
22 EventDistributor& eventDistributor, Scheduler& scheduler);
23
29
30private:
31 static std::unique_ptr<MidiSessionALSA> instance;
32
33 explicit MidiSessionALSA(snd_seq_t& seq);
34 void scanClients(PluggingController& controller,
35 EventDistributor& eventDistributor,
36 Scheduler& scheduler);
37
38 snd_seq_t& seq;
39};
40
41} // namespace openmsx
42
43#endif // MIDISESSIONALSA_HH
Lists ALSA MIDI ports we can connect to.
MidiSessionALSA(const MidiSessionALSA &)=delete
static void registerAll(PluggingController &controller, CliComm &cliComm, EventDistributor &eventDistributor, Scheduler &scheduler)
MidiSessionALSA & operator=(const MidiSessionALSA &)=delete
MidiSessionALSA(MidiSessionALSA &&)=delete
MidiSessionALSA & operator=(MidiSessionALSA &&)=delete
Central administration of Connectors and Pluggables.
This file implemented 3 utility functions:
Definition Autofire.cc:11