From 65a8bde4e4beca860a13491e94631dc16b5e71af Mon Sep 17 00:00:00 2001 From: Chris Xiong Date: Wed, 29 Apr 2020 11:25:58 +0800 Subject: Decouple CMidiPlayer and qmpMidiOutFluid. Visualization renderer should no longer depend on the fluidsynth library. Reworked the "wait voice" option: now it only takes effect if an automatic track switch happens. Actually process events while waiting for async operation to finish. --- qmidiplayer-desktop/qmpmainwindow.hpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'qmidiplayer-desktop/qmpmainwindow.hpp') diff --git a/qmidiplayer-desktop/qmpmainwindow.hpp b/qmidiplayer-desktop/qmpmainwindow.hpp index 700b501..d98029d 100644 --- a/qmidiplayer-desktop/qmpmainwindow.hpp +++ b/qmidiplayer-desktop/qmpmainwindow.hpp @@ -20,7 +20,8 @@ #include #include #include -#include "../core/qmpmidiplay.hpp" +#include "qmpmidioutfluid.hpp" +#include "qmpmidiplay.hpp" #include "qmpplugin.hpp" #include "qmpplistwindow.hpp" #include "qmpchannelswindow.hpp" @@ -141,11 +142,12 @@ class qmpMainWindow:public QMainWindow void dragEnterEvent(QDragEnterEvent *event); ~qmpMainWindow(); CMidiPlayer* getPlayer(){return player;} + qmpMidiOutFluid* getFluid(){return internalfluid;} qmpSettings* getSettings(){return settings.get();} QTimer* getTimer(){return timer;} bool isFinalizing(){return fin;} QString getFileName(); - void switchTrack(QString s); + void switchTrack(QString s,bool interrupt=true); std::string getTitle(); std::wstring getWTitle(); uint32_t getPlaybackPercentage(); @@ -193,6 +195,7 @@ class qmpMainWindow:public QMainWindow std::chrono::steady_clock::time_point st; double offset; CMidiPlayer *player; + qmpMidiOutFluid *internalfluid; qmpFileRendererFluid *fluidrenderer; qmpPluginManager *pmgr; QPointer plistw; -- cgit v1.2.3