assert() to help find some possible causes of #2991. Fix some confusion with GTK...
[ardour.git] / libs / ardour / ardour / ladspa_plugin.h
index 1e7a53a65a0ef65858c5fa3b2baa8fea83f4b917..00f00c99b6dd7737f305b74913cd7eb93e22952c 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2000-2006 Paul Davis 
+    Copyright (C) 2000-2006 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
 #include <string>
 #include <dlfcn.h>
 
-#include <sigc++/signal.h>
 
-#include <pbd/stateful.h> 
+#include "pbd/stateful.h"
 
 #include <jack/types.h>
-#include <ardour/ladspa.h>
-#include <ardour/plugin.h>
+#include "ardour/ladspa.h"
+#include "ardour/plugin.h"
 
 namespace ARDOUR {
 class AudioEngine;
@@ -45,7 +44,7 @@ class LadspaPlugin : public ARDOUR::Plugin
        ~LadspaPlugin ();
 
        /* Plugin interface */
-       
+
        std::string unique_id() const;
        const char* label() const           { return _descriptor->Label; }
        const char* name() const            { return _descriptor->Name; }
@@ -57,10 +56,10 @@ class LadspaPlugin : public ARDOUR::Plugin
        float       get_parameter (uint32_t port) const;
        int         get_parameter_descriptor (uint32_t which, ParameterDescriptor&) const;
        uint32_t    nth_parameter (uint32_t port, bool& ok) const;
-       
+
        std::set<Evoral::Parameter> automatable() const;
 
-       void activate () { 
+       void activate () {
                if (!_was_activated && _descriptor->activate)
                        _descriptor->activate (_handle);
 
@@ -82,9 +81,12 @@ class LadspaPlugin : public ARDOUR::Plugin
                        _descriptor->cleanup (_handle);
        }
 
-       void set_block_size (nframes_t nframes) {}
-       
-       int         connect_and_run (BufferSet& bufs, uint32_t& in, uint32_t& out, nframes_t nframes, nframes_t offset);
+       void set_block_size (nframes_t /*nframes*/) {}
+
+       int connect_and_run (BufferSet& bufs,
+                       ChanMapping in, ChanMapping out,
+                       nframes_t nframes, nframes_t offset);
+
        std::string describe_parameter (Evoral::Parameter);
        std::string state_node_name() const { return "ladspa"; }
        void        print_parameter (uint32_t, char*, uint32_t len) const;
@@ -96,13 +98,13 @@ class LadspaPlugin : public ARDOUR::Plugin
        bool parameter_is_toggled(uint32_t) const;
 
        XMLNode& get_state();
-       int      set_state(const XMLNode& node);
+       int      set_state (const XMLNode&, int version);
        bool     save_preset(std::string name);
 
        bool has_editor() const { return false; }
 
        int require_output_streams (uint32_t);
-       
+
        /* LADSPA extras */
 
        LADSPA_Properties           properties() const                { return _descriptor->Properties; }
@@ -111,7 +113,7 @@ class LadspaPlugin : public ARDOUR::Plugin
        LADSPA_PortDescriptor       port_descriptor(uint32_t i) const { return _descriptor->PortDescriptors[i]; }
        const LADSPA_PortRangeHint* port_range_hints() const          { return _descriptor->PortRangeHints; }
        const char * const *        port_names() const                { return _descriptor->PortNames; }
-       
+
        void set_gain (float gain)                    { _descriptor->set_run_adding_gain (_handle, gain); }
        void run_adding (uint32_t nsamples)           { _descriptor->run_adding (_handle, nsamples); }
        void connect_port (uint32_t port, float *ptr) { _descriptor->connect_port (_handle, port, ptr); }
@@ -130,10 +132,11 @@ class LadspaPlugin : public ARDOUR::Plugin
        void init (void *mod, uint32_t index, nframes_t rate);
        void run_in_place (nframes_t nsamples);
        void latency_compute_run ();
+       int set_state_2X (const XMLNode&, int version);
 };
 
 class LadspaPluginInfo : public PluginInfo {
-  public:      
+  public:
        LadspaPluginInfo () { };
        ~LadspaPluginInfo () { };