diff options
author | Ben Loftis <ben@harrisonconsoles.com> | 2017-05-10 11:31:03 -0500 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2017-05-12 15:44:01 +0200 |
commit | efc2660fec0d01c4c47d3fffcc5443025b33afc0 (patch) | |
tree | bd0788bdfb187508c4e179e2883431ff118370cb /libs/ardour | |
parent | 8ba868e9334548ab03cd517e6c79d9f13d8ba7f2 (diff) |
MCP: Mixbus32C: Restore missing filter controls to the Dyn page.
Diffstat (limited to 'libs/ardour')
-rw-r--r-- | libs/ardour/ardour/route.h | 5 | ||||
-rw-r--r-- | libs/ardour/ardour/stripable.h | 4 | ||||
-rw-r--r-- | libs/ardour/ardour/types.h | 4 | ||||
-rw-r--r-- | libs/ardour/ardour/vca.h | 4 | ||||
-rw-r--r-- | libs/ardour/route.cc | 32 |
5 files changed, 48 insertions, 1 deletions
diff --git a/libs/ardour/ardour/route.h b/libs/ardour/ardour/route.h index e916bc403e..038e750d01 100644 --- a/libs/ardour/ardour/route.h +++ b/libs/ardour/ardour/route.h @@ -511,6 +511,11 @@ public: boost::shared_ptr<AutomationControl> eq_enable_controllable () const; boost::shared_ptr<AutomationControl> eq_hpf_controllable () const; + //additional filter params (currently 32C only ) + boost::shared_ptr<AutomationControl> eq_lpf_controllable () const; + boost::shared_ptr<AutomationControl> filter_enable_controllable () const; + + /* "well-known" controls for a compressor in this route. Any or all may * be null. */ diff --git a/libs/ardour/ardour/stripable.h b/libs/ardour/ardour/stripable.h index 7298a4807e..dea2d55c89 100644 --- a/libs/ardour/ardour/stripable.h +++ b/libs/ardour/ardour/stripable.h @@ -142,6 +142,10 @@ class LIBARDOUR_API Stripable : public SessionObject, virtual boost::shared_ptr<AutomationControl> eq_enable_controllable () const = 0; virtual boost::shared_ptr<AutomationControl> eq_hpf_controllable () const = 0; + //additional filter params (currently 32C only ) + virtual boost::shared_ptr<AutomationControl> eq_lpf_controllable () const = 0; + virtual boost::shared_ptr<AutomationControl> filter_enable_controllable () const = 0; + /* "well-known" controls for a compressor in this route. Any or all may * be null. */ diff --git a/libs/ardour/ardour/types.h b/libs/ardour/ardour/types.h index 17a86fc6c5..0076a72a1f 100644 --- a/libs/ardour/ardour/types.h +++ b/libs/ardour/ardour/types.h @@ -160,8 +160,10 @@ namespace ARDOUR { EQFrequency, EQQ, EQShape, - EQHPF, EQEnable, + EQHPF, + EQLPF, + EQFilterEnable, CompThreshold, CompSpeed, CompMode, diff --git a/libs/ardour/ardour/vca.h b/libs/ardour/ardour/vca.h index 5cf06e4d69..8ef0b9d241 100644 --- a/libs/ardour/ardour/vca.h +++ b/libs/ardour/ardour/vca.h @@ -140,6 +140,10 @@ class LIBARDOUR_API VCA : public Stripable, boost::shared_ptr<MonitorProcessor> monitor_control() const { return boost::shared_ptr<MonitorProcessor>(); } boost::shared_ptr<MonitorControl> monitoring_control() const { return boost::shared_ptr<MonitorControl>(); } + //additional filter params (currently 32C only ) + boost::shared_ptr<AutomationControl> eq_lpf_controllable () const { return boost::shared_ptr<AutomationControl>(); } + boost::shared_ptr<AutomationControl> filter_enable_controllable () const { return boost::shared_ptr<AutomationControl>(); } + private: int32_t _number; diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc index c6e3f157b3..dba71584e2 100644 --- a/libs/ardour/route.cc +++ b/libs/ardour/route.cc @@ -5113,6 +5113,38 @@ Route::eq_hpf_controllable () const #endif } +boost::shared_ptr<AutomationControl> +Route::eq_lpf_controllable () const +{ +#ifdef MIXBUS32C + boost::shared_ptr<PluginInsert> eq = ch_eq(); + + if (!eq) { + return boost::shared_ptr<AutomationControl>(); + } + + return boost::dynamic_pointer_cast<ARDOUR::AutomationControl> (eq->control (Evoral::Parameter (ARDOUR::PluginAutomation, 0, 6))); +#else + return boost::shared_ptr<AutomationControl>(); +#endif +} + +boost::shared_ptr<AutomationControl> +Route::filter_enable_controllable () const +{ +#ifdef MIXBUS32C + boost::shared_ptr<PluginInsert> eq = ch_eq(); + + if (!eq) { + return boost::shared_ptr<AutomationControl>(); + } + + return boost::dynamic_pointer_cast<ARDOUR::AutomationControl> (eq->control (Evoral::Parameter (ARDOUR::PluginAutomation, 0, 2))); +#else + return boost::shared_ptr<AutomationControl>(); +#endif +} + string Route::eq_band_name (uint32_t band) const { |