summaryrefslogtreecommitdiff
path: root/libs/backends
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2016-07-08 20:43:24 +0200
committerRobin Gareus <robin@gareus.org>2016-07-08 20:44:21 +0200
commitf84a7605d8781df6f4d2214c636d9f438c93ae33 (patch)
tree66d91bbd7de1c1deb8301f569e83411186875104 /libs/backends
parentbda5a4a4e685e31025d6659802a2135b72489274 (diff)
pre-sort port-names
Diffstat (limited to 'libs/backends')
-rw-r--r--libs/backends/alsa/alsa_audiobackend.h10
-rw-r--r--libs/backends/coreaudio/coreaudio_backend.h10
-rw-r--r--libs/backends/dummy/dummy_audiobackend.h10
3 files changed, 27 insertions, 3 deletions
diff --git a/libs/backends/alsa/alsa_audiobackend.h b/libs/backends/alsa/alsa_audiobackend.h
index 48115f9f05..2a2cc94046 100644
--- a/libs/backends/alsa/alsa_audiobackend.h
+++ b/libs/backends/alsa/alsa_audiobackend.h
@@ -409,8 +409,16 @@ class AlsaAudioBackend : public AudioBackend {
std::vector<AlsaPort *> _system_midi_in;
std::vector<AlsaPort *> _system_midi_out;
+ struct SortByPortName
+ {
+ bool operator ()(const AlsaPort* lhs, const AlsaPort* rhs) const
+ {
+ return lhs->name () < rhs->name ();
+ }
+ };
+
typedef std::map<std::string, AlsaPort *> PortMap; // fast lookup in _ports
- typedef std::set<AlsaPort *> PortIndex; // fast lookup in _ports
+ typedef std::set<AlsaPort *, SortByPortName> PortIndex; // fast lookup in _ports
PortMap _portmap;
PortIndex _ports;
diff --git a/libs/backends/coreaudio/coreaudio_backend.h b/libs/backends/coreaudio/coreaudio_backend.h
index 6153b12e10..58e81342c1 100644
--- a/libs/backends/coreaudio/coreaudio_backend.h
+++ b/libs/backends/coreaudio/coreaudio_backend.h
@@ -466,8 +466,16 @@ class CoreAudioBackend : public AudioBackend {
std::vector<CoreBackendPort *> _system_midi_in;
std::vector<CoreBackendPort *> _system_midi_out;
+ struct SortByPortName
+ {
+ bool operator ()(const CoreBackendPort* lhs, const CoreBackendPort* rhs) const
+ {
+ return lhs->name () < rhs->name ();
+ }
+ };
+
typedef std::map<std::string, CoreBackendPort *> PortMap; // fast lookup in _ports
- typedef std::set<CoreBackendPort *> PortIndex; // fast lookup in _ports
+ typedef std::set<CoreBackendPort *, SortByPortName> PortIndex; // fast lookup in _ports
PortMap _portmap;
PortIndex _ports;
diff --git a/libs/backends/dummy/dummy_audiobackend.h b/libs/backends/dummy/dummy_audiobackend.h
index 5caf8bafd9..12abe7be92 100644
--- a/libs/backends/dummy/dummy_audiobackend.h
+++ b/libs/backends/dummy/dummy_audiobackend.h
@@ -451,8 +451,16 @@ class DummyAudioBackend : public AudioBackend {
std::vector<DummyMidiPort *> _system_midi_in;
std::vector<DummyMidiPort *> _system_midi_out;
+ struct SortByPortName
+ {
+ bool operator ()(const DummyPort* lhs, const DummyPort* rhs) const
+ {
+ return lhs->name () < rhs->name ();
+ }
+ };
+
typedef std::map<std::string, DummyPort *> PortMap; // fast lookup in _ports
- typedef std::set<DummyPort *> PortIndex; // fast lookup in _ports
+ typedef std::set<DummyPort *, SortByPortName> PortIndex; // fast lookup in _ports
PortMap _portmap;
PortIndex _ports;