#include <string>
#include <dlfcn.h>
-#include <sigc++/signal.h>
-#include "pbd/stateful.h"
+#include "pbd/stateful.h"
#include <jack/types.h>
#include <slv2/slv2.h>
~LV2Plugin ();
/* Plugin interface */
-
+
std::string unique_id() const;
const char* label() const { return slv2_value_as_string(_name); }
const char* name() const { return slv2_value_as_string(_name); }
SLV2Port slv2_port(uint32_t i) { return slv2_plugin_get_port_by_index(_plugin, i); }
const char* port_symbol(uint32_t port);
-
+
const LV2_Feature* const* features() { return _features; }
std::set<Evoral::Parameter> automatable() const;
- void activate () {
+ void activate () {
if (!_was_activated) {
slv2_instance_activate(_instance);
_was_activated = true;
}
void set_block_size (nframes_t /*nframes*/) {}
-
+
int connect_and_run (BufferSet& bufs,
ChanMapping in, ChanMapping out,
nframes_t nframes, nframes_t offset);
static uint32_t midi_event_type() { return _midi_event_type; }
XMLNode& get_state();
- int set_state(const XMLNode& node);
+ int set_state(const XMLNode& node, int version);
bool save_preset(std::string uri);
- bool load_preset(const std::string uri);
+ bool load_preset(const std::string& uri);
virtual std::vector<Plugin::PresetRecord> get_presets();
bool has_editor() const;
SLV2Value srate;
SLV2Value gtk_gui;
SLV2Value external_gui;
+ SLV2Value logarithmic;
};
class LV2PluginInfo : public PluginInfo {
-public:
+public:
LV2PluginInfo (void* slv2_world, void* slv2_plugin);;
~LV2PluginInfo ();;
- static PluginInfoList discover (void* slv2_world);
+ static PluginInfoList* discover (void* slv2_world);
PluginPtr load (Session& session);