X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fvst_plugin.h;h=e41d000f9cf0581abac9a1e71a9ba3f58d5ce289;hb=022818b4a796f52c0a91eea42e65aec0bc7bed43;hp=ee8e6e986b806e3e8bd7af83a62bd2e0c5890ddc;hpb=8b320ba5c6a234f288a3d6089aea18de7429c197;p=ardour.git diff --git a/libs/ardour/ardour/vst_plugin.h b/libs/ardour/ardour/vst_plugin.h index ee8e6e986b..e41d000f9c 100644 --- a/libs/ardour/ardour/vst_plugin.h +++ b/libs/ardour/ardour/vst_plugin.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_vst_plugin_h__ @@ -28,12 +27,9 @@ #include #include -#include #include - +#include #include -#include -#include #include using std::string; @@ -60,13 +56,13 @@ class VSTPlugin : public ARDOUR::Plugin /* 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); - jack_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; @@ -74,10 +70,8 @@ class VSTPlugin : public ARDOUR::Plugin uint32_t nth_parameter (uint32_t port, bool& ok) const; void activate (); void deactivate (); - void set_block_size (jack_nframes_t nframes); - int connect_and_run (vector& bufs, uint32_t maxbuf, int32_t& in, int32_t& out, jack_nframes_t nframes, jack_nframes_t offset); - void store_state (ARDOUR::PluginState&); - void restore_state (ARDOUR::PluginState&); + void set_block_size (nframes_t nframes); + int connect_and_run (BufferSet&, uint32_t& in, uint32_t& out, nframes_t nframes, nframes_t offset); string describe_parameter (uint32_t); string state_node_name() const { return "vst"; } void print_parameter (uint32_t, char*, uint32_t len) const; @@ -106,6 +100,17 @@ class VSTPlugin : public ARDOUR::Plugin bool been_resumed; }; -} +class VSTPluginInfo : public PluginInfo +{ + public: + VSTPluginInfo () {} + ~VSTPluginInfo () {} + + PluginPtr load (Session& session); +}; + +typedef boost::shared_ptr VSTPluginInfoPtr; + +} // namespace ARDOUR #endif /* __ardour_vst_plugin_h__ */