diff options
Diffstat (limited to 'src/plugins/Input/wildmidi/wildmidihelper.cpp')
| -rw-r--r-- | src/plugins/Input/wildmidi/wildmidihelper.cpp | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/plugins/Input/wildmidi/wildmidihelper.cpp b/src/plugins/Input/wildmidi/wildmidihelper.cpp new file mode 100644 index 000000000..7a9ec94b6 --- /dev/null +++ b/src/plugins/Input/wildmidi/wildmidihelper.cpp @@ -0,0 +1,41 @@ +#include <QApplication> +extern "C"{ +#include <wildmidi_lib.h> +} +#include "wildmidihelper.h" + +WildMidiHelper *WildMidiHelper::m_instance = 0; + +WildMidiHelper::WildMidiHelper(QObject *parent) : + QObject(parent) +{ + m_inited = false; +} + +WildMidiHelper::~WildMidiHelper() +{ + if(m_inited) + WildMidi_Shutdown(); + m_instance = 0; +} + +bool WildMidiHelper::initialize() +{ + if(m_inited) + return true; + if (WildMidi_Init ("/etc/timidity/timidity.cfg", 48000, 0) < 0) + { + qWarning("WildMidiHelper: unable to initialize WildMidi library"); + return false; + } + m_inited = true; + return true; +} + + +WildMidiHelper *WildMidiHelper::instance() +{ + if(!m_instance) + m_instance = new WildMidiHelper(qApp); + return m_instance; +} |
