From 8cf35c5ceb10d5c54e933127fb60c5034ef8a149 Mon Sep 17 00:00:00 2001 From: Chris Xiong Date: Sat, 5 Oct 2019 23:04:53 +0800 Subject: Replaced the option "default output device" with a more powerful one. Old code for default output device completely removed. --- core/qmpmidioutrtmidi.cpp | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) (limited to 'core/qmpmidioutrtmidi.cpp') diff --git a/core/qmpmidioutrtmidi.cpp b/core/qmpmidioutrtmidi.cpp index c37fadc..fba8e03 100644 --- a/core/qmpmidioutrtmidi.cpp +++ b/core/qmpmidioutrtmidi.cpp @@ -312,26 +312,19 @@ void qmpMidiOutRtMidi::setInitializerFile(const char* path) devinit=qmpDeviceInitializer::parse(path); } -RtMidiOut* qmpRtMidiManager::dummy=nullptr; -void qmpRtMidiManager::createDevices() +std::vector> qmpRtMidiManager::devices; +std::vector> qmpRtMidiManager::getDevices() { + if(devices.size())return devices; + RtMidiOut *dummy; try{dummy=new RtMidiOut();} catch(RtMidiError &e) { printf("Failed to initialize the dummy device: %s\n",e.what()); - dummy=nullptr;return; + return{}; } for(unsigned i=0;igetPortCount();++i) devices.push_back(std::make_pair(new qmpMidiOutRtMidi(i),dummy->getPortName(i))); -} -void qmpRtMidiManager::deleteDevices() -{ - for(size_t i=0;i> qmpRtMidiManager::getDevices() -{ return devices; } -- cgit v1.2.3