X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fvst_plugin.h;h=753d94294f4ba55a968a6760c2bf4641dd18cf82;hb=be8a2e20dcacfc980c8de0341165b0be67ce35fd;hp=fb03a75bb83c1b43b8c135bba97206721afb5796;hpb=45d3ec1437cf661533bc7750c623865def4424df;p=ardour.git diff --git a/libs/ardour/ardour/vst_plugin.h b/libs/ardour/ardour/vst_plugin.h index fb03a75bb8..753d94294f 100644 --- a/libs/ardour/ardour/vst_plugin.h +++ b/libs/ardour/ardour/vst_plugin.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2004 Paul Davis + Copyright (C) 2004 Paul Davis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -27,15 +27,9 @@ #include #include -#include -#include +#include "pbd/stateful.h" #include -#include - -using std::string; -using std::vector; -using std::list; -using std::map; +#include "ardour/plugin.h" struct _FSTHandle; struct _FST; @@ -55,25 +49,29 @@ class VSTPlugin : public ARDOUR::Plugin ~VSTPlugin (); /* Plugin interface */ - - uint32_t unique_id() const; + + std::string unique_id() const; const char * label() const; const char * name() const; const char * maker() const; uint32_t parameter_count() const; float default_value (uint32_t port); - nframes_t latency() const; + nframes_t signal_latency() const; void set_parameter (uint32_t port, float val); float get_parameter (uint32_t port) const; int get_parameter_descriptor (uint32_t which, ParameterDescriptor&) const; - std::set automatable() const; + std::set automatable() const; uint32_t nth_parameter (uint32_t port, bool& ok) const; void activate (); void deactivate (); void set_block_size (nframes_t nframes); - int connect_and_run (vector& bufs, uint32_t maxbuf, int32_t& in, int32_t& out, nframes_t nframes, nframes_t offset); - string describe_parameter (uint32_t); - string state_node_name() const { return "vst"; } + + int connect_and_run (BufferSet&, + ChanMapping in, ChanMapping out, + nframes_t nframes, nframes_t offset); + + std::string describe_parameter (Evoral::Parameter); + std::string state_node_name() const { return "vst"; } void print_parameter (uint32_t, char*, uint32_t len) const; bool parameter_is_audio(uint32_t i) const { return false; } @@ -81,8 +79,8 @@ class VSTPlugin : public ARDOUR::Plugin bool parameter_is_input(uint32_t i) const { return true; } bool parameter_is_output(uint32_t i) const { return false; } - bool load_preset (const string preset_label ); - bool save_preset(string name); + bool load_preset (const std::string preset_label ); + bool save_preset (std::string name); bool has_editor () const; @@ -105,7 +103,7 @@ class VSTPluginInfo : public PluginInfo public: VSTPluginInfo () {} ~VSTPluginInfo () {} - + PluginPtr load (Session& session); };