blob: f6284ddc9907c868bd1100cde2e5b9c383eecebb (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
#ifndef MIDIFMTPLUGIN_HPP
#define MIDIFMTPLUGIN_HPP
#include <cstdio>
#include "../include/qmpcorepublic.hpp"
class CMidiStreamReader:public IMidiFileReader
{
private:
CMidiFile* ret;
FILE* f;
int eventdiscarded,fmt;
uint32_t readDWLE();
bool RIFFHeaderReader();
bool midsBodyReader();
public:
CMidiStreamReader();
~CMidiStreamReader();
CMidiFile* readFile(const char *fn);
void discardCurrentEvent();
void commitEventChange(SEventCallBackData d);
};
class qmpMidiFmtPlugin:public qmpPluginIntf
{
private:
CMidiStreamReader* mdsreader;
public:
static qmpPluginAPI* api;
qmpMidiFmtPlugin(qmpPluginAPI* _api);
~qmpMidiFmtPlugin();
void init();
void deinit();
const char* pluginGetName();
const char* pluginGetVersion();
};
extern "C"{
EXPORTSYM qmpPluginIntf* qmpPluginGetInterface(qmpPluginAPI* api)
{return new qmpMidiFmtPlugin(api);}
EXPORTSYM const char* qmpPluginGetAPIRev()
{return QMP_PLUGIN_API_REV;}
}
#endif // MIDIFMTPLUGIN_HPP
|