Support LV2 with MSVC (#5730)

This commit is contained in:
Dominic Clark
2020-10-31 13:28:18 +00:00
committed by GitHub
parent 6a78d8d535
commit 615d36b08b
7 changed files with 37 additions and 11 deletions

View File

@@ -33,6 +33,7 @@
#include "DataFile.h"
#include "LinkedModelGroups.h"
#include "lmms_export.h"
#include "Plugin.h"
class Lv2Proc;
@@ -65,7 +66,7 @@ class PluginIssue;
* this class can not override virtuals of Instrument or EffectControls, so
it will offer functions that must be called by virtuals in its child class
*/
class Lv2ControlBase : public LinkedModelGroups
class LMMS_EXPORT Lv2ControlBase : public LinkedModelGroups
{
public:
static Plugin::PluginTypes check(const LilvPlugin* m_plugin,
@@ -87,7 +88,11 @@ protected:
//! this is the same pointer as this, but a different type
//! @param uri the Lv2 URI telling this class what plugin to construct
Lv2ControlBase(class Model *that, const QString& uri);
Lv2ControlBase(const Lv2ControlBase&) = delete;
~Lv2ControlBase() override;
Lv2ControlBase& operator=(const Lv2ControlBase&) = delete;
//! Must be checked after ctor or reload
bool isValid() const { return m_valid; }

View File

@@ -33,9 +33,10 @@
#include <lilv/lilv.h>
#include "lmms_export.h"
#include "Plugin.h"
class Lv2SubPluginFeatures : public Plugin::Descriptor::SubPluginFeatures
class LMMS_EXPORT Lv2SubPluginFeatures : public Plugin::Descriptor::SubPluginFeatures
{
private:
static const LilvPlugin *getPlugin(const Key &k);

View File

@@ -34,6 +34,7 @@
#include <QVector>
#include "LinkedModelGroupViews.h"
#include "lmms_export.h"
#include "Lv2Basics.h"
class Lv2Proc;
@@ -54,7 +55,7 @@ private:
//! Base class for view for one Lv2 plugin
class Lv2ViewBase : public LinkedModelGroupsView
class LMMS_EXPORT Lv2ViewBase : public LinkedModelGroupsView
{
protected:
//! @param pluginWidget A child class which inherits QWidget