summaryrefslogtreecommitdiff
path: root/libs/ardour
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2014-01-01 15:34:06 +0100
committerRobin Gareus <robin@gareus.org>2014-01-01 15:34:06 +0100
commit2644aaddb19eda57551129c4e6ca6ca02fdb066a (patch)
tree51f34cfbf5c7400a348777134eb51715981f9885 /libs/ardour
parent91ae2c0e81414789baf9ed43c46570f1a7bbc1c2 (diff)
visualize port connections in mixer/processor when in < out
Diffstat (limited to 'libs/ardour')
-rw-r--r--libs/ardour/ardour/plugin_insert.h3
-rw-r--r--libs/ardour/plugin_insert.cc11
2 files changed, 9 insertions, 5 deletions
diff --git a/libs/ardour/ardour/plugin_insert.h b/libs/ardour/ardour/plugin_insert.h
index a1b9c5a685..7d7e2e7269 100644
--- a/libs/ardour/ardour/plugin_insert.h
+++ b/libs/ardour/ardour/plugin_insert.h
@@ -122,8 +122,7 @@ class PluginInsert : public Processor
}
PBD::Signal2<void,BufferSet*, BufferSet*> AnalysisDataGathered;
- /** Emitted when the return value of splitting () has changed */
- PBD::Signal0<void> SplittingChanged;
+ PBD::Signal0<void> PluginIoReConfigure;
/** Enumeration of the ways in which we can match our insert's
* IO to that of the plugin(s).
diff --git a/libs/ardour/plugin_insert.cc b/libs/ardour/plugin_insert.cc
index 473040d812..c25f8962ac 100644
--- a/libs/ardour/plugin_insert.cc
+++ b/libs/ardour/plugin_insert.cc
@@ -650,6 +650,8 @@ bool
PluginInsert::configure_io (ChanCount in, ChanCount out)
{
Match old_match = _match;
+ ChanCount old_in = input_streams ();
+ ChanCount old_out = output_streams ();
/* set the matching method and number of plugins that we will use to meet this configuration */
_match = private_can_support_io_configuration (in, out);
@@ -657,9 +659,12 @@ PluginInsert::configure_io (ChanCount in, ChanCount out)
return false;
}
- /* a signal needs emitting if we start or stop splitting */
- if (old_match.method != _match.method && (old_match.method == Split || _match.method == Split)) {
- SplittingChanged (); /* EMIT SIGNAL */
+ if ( (old_match.method != _match.method && (old_match.method == Split || _match.method == Split))
+ || old_in != in
+ || old_out != out
+ )
+ {
+ PluginIoReConfigure (); /* EMIT SIGNAL */
}
/* configure plugins */