From 1976c49f835267d33ef88bd3fc20d18363e12c0b Mon Sep 17 00:00:00 2001
From: Chris Xiong <chirs241097@gmail.com>
Date: Wed, 8 Feb 2017 23:45:18 +0800
Subject: Add API version verification. This breaks compatibility with old
 versions of plugins. Add RIFF MIDI support to the SMF reader. Documentation.

---
 include/qmpcorepublic.hpp | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

(limited to 'include')

diff --git a/include/qmpcorepublic.hpp b/include/qmpcorepublic.hpp
index 6e56310..f42d42a 100644
--- a/include/qmpcorepublic.hpp
+++ b/include/qmpcorepublic.hpp
@@ -1,6 +1,5 @@
-#ifndef QMPCOREPUBLIC_H
-#define QMPCOREPUBLIC_H
-#include <cstring>
+#ifndef QMPCOREPUBLIC_HPP
+#define QMPCOREPUBLIC_HPP
 #include <cstdint>
 #include <vector>
 #include <string>
@@ -9,6 +8,7 @@
 #else
 #define EXPORTSYM __attribute__ ((visibility ("default")))
 #endif
+#define QMP_PLUGIN_API_REV "1+indev"
 //MIDI Event structure
 struct SEvent
 {
@@ -162,4 +162,6 @@ class qmpPluginAPI
 //through the parameter. This function should return a pointer to a class
 //that implementes the plugin pinterface (qmpPluginIntf).
 typedef qmpPluginIntf*(*qmpPluginEntry)(qmpPluginAPI*);
-#endif // QMPCOREPUBLIC_H
+//The following symbol only presents in plugins. Its purpose is to help the core reject incompatible plugins.
+typedef const char*(*qmpPluginAPIRevEntry)();
+#endif // QMPCOREPUBLIC_HPP
-- 
cgit v1.2.3