From d10c4c651c38d9e0b0c2c288d543ed464e2f3594 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Wed, 25 Sep 2019 14:00:34 +0200 Subject: Consolidate and extend "well-known" controls: * Add new common strip controls (inspired from Mixbus) * Remove duplicate documentation, document virtual API only. * "azimuth" not "azi" --- libs/ardour/ardour/route.h | 51 +++++++++++++--------------------------------- 1 file changed, 14 insertions(+), 37 deletions(-) (limited to 'libs/ardour/ardour/route.h') diff --git a/libs/ardour/ardour/route.h b/libs/ardour/ardour/route.h index 48908efba4..72011a68d6 100644 --- a/libs/ardour/ardour/route.h +++ b/libs/ardour/ardour/route.h @@ -169,8 +169,7 @@ public: void set_trim (gain_t val, PBD::Controllable::GroupControlDisposition); - /* controls use set_solo() to modify this route's solo state - */ + /* controls use set_solo() to modify this route's solo state */ void clear_all_solo_state (); @@ -513,8 +512,9 @@ public: boost::shared_ptr the_instrument() const; InstrumentInfo& instrument_info() { return _instrument_info; } - /* "well-known" controls for panning. Any or all of these may return - * null. + + /* "well-known" controls. + * Any or all of these may return NULL. */ boost::shared_ptr pan_azimuth_control() const; @@ -523,11 +523,6 @@ public: boost::shared_ptr pan_frontback_control() const; boost::shared_ptr pan_lfe_control() const; - /* "well-known" controls for an EQ in this route. Any or all may - * be null. eq_band_cnt() must return 0 if there is no EQ present. - * Passing an @param band value >= eq_band_cnt() will guarantee the - * return of a null ptr (or an empty string for eq_band_name()). - */ uint32_t eq_band_cnt () const; std::string eq_band_name (uint32_t) const; boost::shared_ptr eq_enable_controllable () const; @@ -536,16 +531,13 @@ public: boost::shared_ptr eq_q_controllable (uint32_t band) const; boost::shared_ptr eq_shape_controllable (uint32_t band) const; - //additional HP/LP filters boost::shared_ptr filter_freq_controllable (bool hpf) const; boost::shared_ptr filter_slope_controllable (bool) const; boost::shared_ptr filter_enable_controllable (bool) const; boost::shared_ptr tape_drive_controllable () const; + boost::shared_ptr tape_drive_mtr_controllable () const; - /* "well-known" controls for a compressor in this route. Any or all may - * be null. - */ boost::shared_ptr comp_enable_controllable () const; boost::shared_ptr comp_threshold_controllable () const; boost::shared_ptr comp_speed_controllable () const; @@ -553,39 +545,24 @@ public: boost::shared_ptr comp_makeup_controllable () const; boost::shared_ptr comp_redux_controllable () const; - /* @param mode must be supplied by the comp_mode_controllable(). All other values - * result in undefined behaviour - */ std::string comp_mode_name (uint32_t mode) const; - /* @param mode - as for comp mode name. This returns the name for the - * parameter/control accessed via comp_speed_controllable(), which can - * be mode dependent. - */ std::string comp_speed_name (uint32_t mode) const; - /* "well-known" controls for sends to well-known busses in this route. Any or all may - * be null. - * - * In Mixbus, these are the sends that connect to the mixbusses. - * In Ardour, these are user-created sends that connect to user-created - * Aux busses. - */ boost::shared_ptr send_level_controllable (uint32_t n) const; boost::shared_ptr send_enable_controllable (uint32_t n) const; - boost::shared_ptr send_pan_azi_controllable (uint32_t n) const; - /* for the same value of @param n, this returns the name of the send - * associated with the pair of controllables returned by the above two methods. - */ + boost::shared_ptr send_pan_azimuth_controllable (uint32_t n) const; + boost::shared_ptr send_pan_azimuth_enable_controllable (uint32_t n) const; + std::string send_name (uint32_t n) const; - /* well known control that enables/disables sending to the master bus. - * - * In Ardour, this returns null. - * In Mixbus, it will return a suitable control, or null depending on - * the route. - */ boost::shared_ptr master_send_enable_controllable () const; + boost::shared_ptr master_correlation_mtr_controllable (bool) const; + + boost::shared_ptr master_limiter_enable_controllable () const; + boost::shared_ptr master_limiter_mtr_controllable () const; + boost::shared_ptr master_k_mtr_controllable () const; + void protect_automation (); bool has_external_redirects() const; -- cgit v1.2.3