mirror of
https://github.com/Ardour/ardour.git
synced 2026-01-30 08:53:08 +01:00
Console1: Expose Mixbus SSL-EQ Q Control
This commit is contained in:
parent
4efee6b97d
commit
710d01a63f
6 changed files with 241 additions and 33 deletions
|
|
@ -57,8 +57,9 @@ class ControllerButton : public Controller
|
|||
|
||||
ControllerType get_type () { return CONTROLLER_BUTTON; }
|
||||
|
||||
void set_plugin_action (std::function<void (uint32_t)> action) { plugin_action = action; }
|
||||
void set_plugin_shift_action (std::function<void (uint32_t)> action) { plugin_shift_action = action; }
|
||||
void set_action (std::function<void (uint32_t)> new_action) { action = new_action; }
|
||||
void set_plugin_action (std::function<void (uint32_t)> new_action) { plugin_action = new_action; }
|
||||
void set_plugin_shift_action (std::function<void (uint32_t)> new_action) { plugin_shift_action = new_action; }
|
||||
|
||||
virtual void set_led_state (bool onoff)
|
||||
{
|
||||
|
|
@ -122,8 +123,9 @@ class MultiStateButton : public Controller
|
|||
console1->write (buf, 3);
|
||||
}
|
||||
|
||||
void set_plugin_action (std::function<void (uint32_t)> action) { plugin_action = action; }
|
||||
void set_plugin_shift_action (std::function<void (uint32_t)> action) { plugin_shift_action = action; }
|
||||
void set_action (std::function<void (uint32_t)> new_action) { action = new_action; }
|
||||
void set_plugin_action (std::function<void (uint32_t)> new_action) { plugin_action = new_action; }
|
||||
void set_plugin_shift_action (std::function<void (uint32_t)> new_action) { plugin_shift_action = new_action; }
|
||||
|
||||
uint32_t state_count () { return state_values.size (); }
|
||||
|
||||
|
|
@ -185,8 +187,9 @@ class Encoder : public Controller
|
|||
|
||||
ControllerType get_type () { return ENCODER; }
|
||||
|
||||
void set_plugin_action (std::function<void (uint32_t)> action) { plugin_action = action; }
|
||||
void set_plugin_shift_action (std::function<void (uint32_t)> action) { plugin_shift_action = action; }
|
||||
void set_action (std::function<void (uint32_t)> new_action) { action = new_action; }
|
||||
void set_plugin_action (std::function<void (uint32_t)> new_action) { plugin_action = new_action; }
|
||||
void set_plugin_shift_action (std::function<void (uint32_t)> new_action) { plugin_shift_action = new_action; }
|
||||
|
||||
virtual void set_value (uint32_t value)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -79,6 +79,7 @@ C1GUI::C1GUI (Console1& p)
|
|||
: c1 (p)
|
||||
, table (6, 4)
|
||||
, swap_solo_mute_cb ()
|
||||
, band_q_as_send_cb ()
|
||||
, create_plugin_stubs_btn ()
|
||||
, ignore_active_change (false)
|
||||
{
|
||||
|
|
@ -116,6 +117,13 @@ C1GUI::C1GUI (Console1& p)
|
|||
swap_solo_mute_cb.set_active (p.swap_solo_mute);
|
||||
swap_solo_mute_cb.signal_toggled ().connect (sigc::mem_fun (*this, &C1GUI::set_swap_solo_mute));
|
||||
|
||||
#ifdef MIXBUS
|
||||
// before the ssl strips, the q knobs for low- and high mids where alwas used as sends, now this can be toggled
|
||||
band_q_as_send_cb.set_tooltip_text (
|
||||
_ ("If checked Ardour the Q-Factor knobs for Low and High are used as sends for Send 11 and send 12."));
|
||||
band_q_as_send_cb.set_active (p.band_q_as_send);
|
||||
band_q_as_send_cb.signal_toggled ().connect (sigc::mem_fun (*this, &C1GUI::set_band_q_as_send));
|
||||
#endif
|
||||
// create_plugin_stubs (_ ("Create Plugin Mapping Stubs"));
|
||||
create_plugin_stubs_btn.set_tooltip_text (_ ("If checked a mapping stub is created for every unknown plugin."));
|
||||
create_plugin_stubs_btn.set_active (p.create_mapping_stubs);
|
||||
|
|
@ -142,6 +150,15 @@ C1GUI::C1GUI (Console1& p)
|
|||
table.attach (swap_solo_mute_cb, 1, 2, row, row + 1);
|
||||
row++;
|
||||
|
||||
#ifdef MIXBUS
|
||||
l = manage (new Gtk::Label);
|
||||
l->set_markup (string_compose ("<span weight=\"bold\">%1</span>", _ ("Use Mid-Q Buttons as send 11/12:")));
|
||||
l->set_alignment (1.0, 0.5);
|
||||
table.attach (*l, 0, 1, row, row + 1, AttachOptions (FILL | EXPAND), AttachOptions (0));
|
||||
table.attach (band_q_as_send_cb, 1, 2, row, row + 1);
|
||||
row++;
|
||||
#endif
|
||||
|
||||
l = manage (new Gtk::Label);
|
||||
l->set_markup (string_compose ("<span weight=\"bold\">%1</span>", _ ("Create Plugin Mapping Stubs:")));
|
||||
l->set_alignment (1.0, 0.5);
|
||||
|
|
@ -177,6 +194,16 @@ C1GUI::set_swap_solo_mute ()
|
|||
c1.swap_solo_mute = !c1.swap_solo_mute;
|
||||
}
|
||||
|
||||
void
|
||||
C1GUI::set_band_q_as_send ()
|
||||
{
|
||||
c1.band_q_as_send = !c1.band_q_as_send;
|
||||
if(!c1.in_use()) {
|
||||
return;
|
||||
}
|
||||
c1.EQBandQBindingChange();
|
||||
}
|
||||
|
||||
void
|
||||
C1GUI::set_create_mapping_stubs ()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -57,6 +57,7 @@ private:
|
|||
Gtk::ComboBox output_combo;
|
||||
Gtk::Image image;
|
||||
Gtk::CheckButton swap_solo_mute_cb;
|
||||
Gtk::CheckButton band_q_as_send_cb;
|
||||
Gtk::CheckButton create_plugin_stubs_btn;
|
||||
|
||||
void update_port_combos ();
|
||||
|
|
@ -80,8 +81,8 @@ private:
|
|||
void active_port_changed (Gtk::ComboBox*,bool for_input);
|
||||
|
||||
void set_swap_solo_mute ();
|
||||
void set_create_mapping_stubs ();
|
||||
|
||||
void set_band_q_as_send();
|
||||
void set_create_mapping_stubs();
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -406,6 +406,17 @@ Console1::eq_gain (const uint32_t band, uint32_t value)
|
|||
session->set_control (control, gain, PBD::Controllable::UseGroup);
|
||||
}
|
||||
|
||||
void
|
||||
Console1::eq_band_q (const uint32_t band, uint32_t value)
|
||||
{
|
||||
if (!_current_stripable || !_current_stripable->mapped_control (EQ_BandQ, band)) {
|
||||
return;
|
||||
}
|
||||
std::shared_ptr<AutomationControl> control = _current_stripable->mapped_control (EQ_BandQ, band);
|
||||
double freq = midi_to_control (control, value);
|
||||
session->set_control (control, freq, PBD::Controllable::UseGroup);
|
||||
}
|
||||
|
||||
// The Mixbus-Sends are in the EQ section
|
||||
// Without Shift:
|
||||
// LowMid Shape is Send 11
|
||||
|
|
@ -909,6 +920,42 @@ Console1::map_eq ()
|
|||
}
|
||||
}
|
||||
|
||||
void
|
||||
Console1::map_eq_mode (){
|
||||
#ifdef MIXBUS
|
||||
DEBUG_TRACE (DEBUG::Console1, "Enter map_eq_mode()\n");
|
||||
if (!_current_stripable) {
|
||||
return;
|
||||
}
|
||||
std::shared_ptr<ARDOUR::Route> rt = std::dynamic_pointer_cast<ARDOUR::Route>( _current_stripable );
|
||||
if (!rt) {
|
||||
return;
|
||||
}
|
||||
EQ_MODE current_eq_mode = EQ_MODE (rt->eq_mode_control() ? rt->eq_mode_control()->get_value() : -1);
|
||||
DEBUG_TRACE (DEBUG::Console1, string_compose ("map_eq_mode() - mode: %1\n", current_eq_mode));
|
||||
if (current_eq_mode != strip_eq_mode) {
|
||||
strip_eq_mode = current_eq_mode;
|
||||
EQBandQBindingChange();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void
|
||||
Console1::map_eq_band_q (const uint32_t band)
|
||||
{
|
||||
DEBUG_TRACE (DEBUG::Console1, string_compose( "map_eq_band_q band: %1 \n", band));
|
||||
if (shift_state || switch_eq_q_dials) {
|
||||
DEBUG_TRACE (DEBUG::Console1, "Exit map_eq_band_q 1\n");
|
||||
return;
|
||||
}
|
||||
ControllerID controllerID = eq_q_controller_for_band (band);
|
||||
if (map_encoder (controllerID)) {
|
||||
std::shared_ptr<AutomationControl> control = _current_stripable->mapped_control (EQ_BandQ, band);
|
||||
map_encoder (controllerID, control);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
Console1::map_eq_freq (const uint32_t band)
|
||||
{
|
||||
|
|
@ -1000,8 +1047,11 @@ Console1::map_mb_send_level (const uint32_t n)
|
|||
// Theese two sends are available in non-shift state
|
||||
if (n_offset > 9 && shift_state) {
|
||||
return;
|
||||
} else if (n_offset < 10 && !shift_state) // while the rest needs the shift state
|
||||
{
|
||||
}
|
||||
else if (n_offset < 10 && !shift_state) { // while the rest needs the shift state
|
||||
return;
|
||||
}
|
||||
else if(!shift_state && !switch_eq_q_dials) {
|
||||
return;
|
||||
}
|
||||
ControllerID controllerID = get_send_controllerid (n_offset);
|
||||
|
|
@ -1036,7 +1086,7 @@ Console1::map_comp_mode ()
|
|||
double value = _current_stripable->mapped_control (Comp_Mode)
|
||||
? _current_stripable->mapped_control (Comp_Mode)->get_value ()
|
||||
: false;
|
||||
DEBUG_TRACE (DEBUG::Console1, string_compose ("****value from comp-type %1\n", value));
|
||||
DEBUG_TRACE (DEBUG::Console1, string_compose ("value from comp-type %1\n", value));
|
||||
get_mbutton (ControllerID::ORDER)->set_led_state (value);
|
||||
} catch (ControlNotFoundException const&) {
|
||||
DEBUG_TRACE (DEBUG::Console1, "Button not found\n");
|
||||
|
|
@ -1103,6 +1153,33 @@ Console1::map_comp_emph ()
|
|||
}
|
||||
}
|
||||
|
||||
void Console1::eqBandQChangeMapping()
|
||||
{
|
||||
DEBUG_TRACE(DEBUG::Console1, string_compose("eqBandQChangeMapping(): band_q_as_send = %1, strip_eq_mode = %2\n", band_q_as_send, strip_eq_mode));
|
||||
Encoder* lme = get_encoder (LOW_MID_SHAPE);
|
||||
Encoder* hme = get_encoder (HIGH_MID_SHAPE);
|
||||
switch_eq_q_dials = band_q_as_send || (strip_eq_mode == EQM_HARRISON );
|
||||
|
||||
if (!lme || !hme) {
|
||||
DEBUG_TRACE (DEBUG::Console1, "eqBandQChangeMapping: Controller not found \n");
|
||||
return;
|
||||
}
|
||||
|
||||
if (switch_eq_q_dials) {
|
||||
DEBUG_TRACE (DEBUG::Console1, "eqBandQChangeMapping() set harrison or send mode\n");
|
||||
lme->set_action(std::function<void (uint32_t)> (std::bind (&Console1::mb_send_level, this, 10, _1)));
|
||||
hme->set_action(std::function<void (uint32_t)> (std::bind (&Console1::mb_send_level, this, 11, _1)));
|
||||
map_mb_send_level (10);
|
||||
map_mb_send_level (11);
|
||||
} else {
|
||||
DEBUG_TRACE (DEBUG::Console1, "eqBandQChangeMapping() set ssl q mode\n");
|
||||
lme->set_action(std::function<void (uint32_t)> (std::bind (&Console1::eq_band_q, this, 1, _1)));
|
||||
hme->set_action(std::function<void (uint32_t)> (std::bind (&Console1::eq_band_q, this, 2, _1)));
|
||||
map_eq_band_q (1);
|
||||
map_eq_band_q (2);
|
||||
}
|
||||
}
|
||||
|
||||
bool
|
||||
Console1::map_encoder (ControllerID controllerID)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -120,8 +120,9 @@ Console1::get_state () const
|
|||
{
|
||||
XMLNode& node = MIDISurface::get_state ();
|
||||
node.set_property ("swap-solo-mute", swap_solo_mute);
|
||||
node.set_property ("create-mapping-stubs", create_mapping_stubs);
|
||||
return node;
|
||||
node.set_property ("band-q-as-send", band_q_as_send);
|
||||
node.set_property ("create-mapping-stubs", create_mapping_stubs);
|
||||
return node;
|
||||
}
|
||||
|
||||
int
|
||||
|
|
@ -131,8 +132,13 @@ Console1::set_state (const XMLNode& node, int version)
|
|||
std::string tmp;
|
||||
node.get_property ("swap-solo-mute", tmp);
|
||||
swap_solo_mute = (tmp == "1");
|
||||
node.get_property ("create-mapping-stubs", tmp);
|
||||
create_mapping_stubs = (tmp == "1");
|
||||
if (node.property("band-q-as-send"))
|
||||
node.get_property("band-q-as-send", tmp);
|
||||
else
|
||||
tmp = "1";
|
||||
band_q_as_send = (tmp == "1");
|
||||
node.get_property("create-mapping-stubs", tmp);
|
||||
create_mapping_stubs = (tmp == "1");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -250,9 +256,10 @@ Console1::connect_internal_signals ()
|
|||
DEBUG_TRACE (DEBUG::Console1, "connect_internal_signals\n");
|
||||
BankChange.connect (console1_connections, MISSING_INVALIDATOR, std::bind (&Console1::map_bank, this), this);
|
||||
ShiftChange.connect (console1_connections, MISSING_INVALIDATOR, std::bind (&Console1::map_shift, this, _1), this);
|
||||
PluginStateChange.connect (
|
||||
console1_connections, MISSING_INVALIDATOR, std::bind (&Console1::map_plugin_state, this, _1), this);
|
||||
GotoView.connect (
|
||||
EQBandQBindingChange.connect (console1_connections, MISSING_INVALIDATOR, std::bind(&Console1::eqBandQChangeMapping, this), this);
|
||||
PluginStateChange.connect(
|
||||
console1_connections, MISSING_INVALIDATOR, std::bind(&Console1::map_plugin_state, this, _1), this);
|
||||
GotoView.connect (
|
||||
console1_connections,
|
||||
MISSING_INVALIDATOR,
|
||||
[] (uint32_t val) { DEBUG_TRACE (DEBUG::Console1, string_compose ("GotooView: %1\n", val)); },
|
||||
|
|
@ -261,6 +268,7 @@ Console1::connect_internal_signals ()
|
|||
console1_connections, MISSING_INVALIDATOR, [] () { DEBUG_TRACE (DEBUG::Console1, "VerticalZoomIn\n"); }, this);
|
||||
VerticalZoomOutSelected.connect (
|
||||
console1_connections, MISSING_INVALIDATOR, [] () { DEBUG_TRACE (DEBUG::Console1, "VerticalZoomOut\n"); }, this);
|
||||
|
||||
}
|
||||
|
||||
void
|
||||
|
|
@ -367,14 +375,27 @@ Console1::setup_controls ()
|
|||
std::function<void (uint32_t)> (std::bind (&Console1::eq_gain, this, i, _1)),
|
||||
std::function<void (uint32_t)> (std::bind (&Console1::mb_send_level, this, i + 4, _1)));
|
||||
}
|
||||
new Encoder (this,
|
||||
ControllerID::LOW_MID_SHAPE,
|
||||
std::function<void (uint32_t)> (std::bind (&Console1::mb_send_level, this, 10, _1)),
|
||||
std::function<void (uint32_t)> (std::bind (&Console1::mb_send_level, this, 8, _1)));
|
||||
new Encoder (this,
|
||||
ControllerID::HIGH_MID_SHAPE,
|
||||
std::function<void (uint32_t)> (std::bind (&Console1::mb_send_level, this, 11, _1)),
|
||||
std::function<void (uint32_t)> (std::bind (&Console1::mb_send_level, this, 9, _1)));
|
||||
|
||||
|
||||
if (band_q_as_send) {
|
||||
new Encoder (this,
|
||||
ControllerID::LOW_MID_SHAPE,
|
||||
std::function<void (uint32_t)> (std::bind (&Console1::mb_send_level, this, 10, _1)),
|
||||
std::function<void (uint32_t)> (std::bind (&Console1::mb_send_level, this, 8, _1)));
|
||||
new Encoder (this,
|
||||
ControllerID::HIGH_MID_SHAPE,
|
||||
std::function<void (uint32_t)> (std::bind (&Console1::mb_send_level, this, 11, _1)),
|
||||
std::function<void (uint32_t)> (std::bind (&Console1::mb_send_level, this, 9, _1)));
|
||||
} else {
|
||||
new Encoder (this,
|
||||
ControllerID::LOW_MID_SHAPE,
|
||||
std::function<void (uint32_t)> (std::bind (&Console1::eq_band_q, this, 1, _1)),
|
||||
std::function<void (uint32_t)> (std::bind (&Console1::mb_send_level, this, 8, _1)));
|
||||
new Encoder (this,
|
||||
ControllerID::HIGH_MID_SHAPE,
|
||||
std::function<void (uint32_t)> (std::bind (&Console1::eq_band_q, this, 2, _1)),
|
||||
std::function<void (uint32_t)> (std::bind (&Console1::mb_send_level, this, 9, _1)));
|
||||
}
|
||||
|
||||
new ControllerButton (this,
|
||||
ControllerID::LOW_SHAPE,
|
||||
|
|
@ -493,6 +514,13 @@ Console1::notify_solo_active_changed (bool state)
|
|||
}
|
||||
}
|
||||
|
||||
void
|
||||
Console1::band_q_usage_changed( )
|
||||
{
|
||||
Encoder *e = get_encoder (ControllerID (EQ_BandQ) );
|
||||
DEBUG_TRACE (DEBUG::Console1, string_compose ("notify_parameter_changed: %1\n", e->id()));
|
||||
}
|
||||
|
||||
void
|
||||
Console1::notify_parameter_changed (std::string s)
|
||||
{
|
||||
|
|
@ -697,7 +725,19 @@ Console1::set_current_stripable (std::shared_ptr<Stripable> r)
|
|||
_current_stripable->mapped_control (EQ_Enable)->Changed.connect (
|
||||
stripable_connections, MISSING_INVALIDATOR, std::bind (&Console1::map_eq, this), this);
|
||||
}
|
||||
|
||||
#ifdef MIXBUS
|
||||
std::shared_ptr<ARDOUR::Route> rt = std::dynamic_pointer_cast<ARDOUR::Route>( _current_stripable );
|
||||
if (rt)
|
||||
{
|
||||
DEBUG_TRACE(DEBUG::Console1, "Cast to Route ok \n");
|
||||
if( rt->eq_mode_control() )
|
||||
{
|
||||
DEBUG_TRACE(DEBUG::Console1, "Control EQ_Mode available \n");
|
||||
rt->eq_mode_control()->Changed.connect(
|
||||
stripable_connections, MISSING_INVALIDATOR, std::bind(&Console1::map_eq_mode, this), this);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
for (uint32_t i = 0; i < _current_stripable->eq_band_cnt (); ++i) {
|
||||
if (_current_stripable->mapped_control (EQ_BandFreq, i)) {
|
||||
_current_stripable->mapped_control (EQ_BandFreq, i)->Changed.connect (
|
||||
|
|
@ -709,6 +749,16 @@ Console1::set_current_stripable (std::shared_ptr<Stripable> r)
|
|||
}
|
||||
}
|
||||
|
||||
if (_current_stripable->mapped_control (EQ_BandQ, 1) && !band_q_as_send ) {
|
||||
_current_stripable->mapped_control (EQ_BandQ, 1)->Changed.connect (
|
||||
stripable_connections, MISSING_INVALIDATOR, std::bind (&Console1::map_eq_band_q, this, 1), this);
|
||||
}
|
||||
|
||||
if (_current_stripable->mapped_control (EQ_BandQ, 2) && !band_q_as_send) {
|
||||
_current_stripable->mapped_control (EQ_BandQ, 2)->Changed.connect (
|
||||
stripable_connections, MISSING_INVALIDATOR, std::bind (&Console1::map_eq_band_q, this, 2), this);
|
||||
}
|
||||
|
||||
if (_current_stripable->mapped_control (EQ_BandShape, 0)) {
|
||||
_current_stripable->mapped_control (EQ_BandShape, 0)->Changed.connect (
|
||||
stripable_connections, MISSING_INVALIDATOR, std::bind (&Console1::map_eq_low_shape, this), this);
|
||||
|
|
@ -726,7 +776,7 @@ Console1::set_current_stripable (std::shared_ptr<Stripable> r)
|
|||
}
|
||||
|
||||
// Mixbus Sends
|
||||
for (uint32_t i = 0; i < 12; ++i) {
|
||||
for (uint32_t i = 0; i < (band_q_as_send ? 12 : 10); ++i) {
|
||||
if (_current_stripable->send_level_controllable (i)) {
|
||||
_current_stripable->send_level_controllable (i)->Changed.connect (
|
||||
stripable_connections,
|
||||
|
|
@ -836,9 +886,13 @@ Console1::map_stripable_state ()
|
|||
|
||||
// EQ Section
|
||||
map_eq ();
|
||||
for (uint32_t i = 0; i < _current_stripable->eq_band_cnt (); ++i) {
|
||||
map_eq_mode();
|
||||
for (uint32_t i = 0; i < _current_stripable->eq_band_cnt(); ++i) {
|
||||
map_eq_freq (i);
|
||||
map_eq_gain (i);
|
||||
if( (!switch_eq_q_dials) && i > 0 && i < 3 ) {
|
||||
map_eq_band_q (i);
|
||||
}
|
||||
}
|
||||
map_eq_low_shape ();
|
||||
map_eq_high_shape ();
|
||||
|
|
|
|||
|
|
@ -114,7 +114,13 @@ public:
|
|||
int set_state (const XMLNode&, int version) override;
|
||||
|
||||
bool swap_solo_mute;
|
||||
bool band_q_as_send = true;
|
||||
bool create_mapping_stubs;
|
||||
bool switch_eq_q_dials = true;
|
||||
|
||||
bool in_use(){
|
||||
return _in_use;
|
||||
}
|
||||
|
||||
PBD::Signal<void()> ConnectionChange;
|
||||
|
||||
|
|
@ -126,6 +132,7 @@ public:
|
|||
PBD::Signal<void()> BankChange;
|
||||
PBD::Signal<void(bool)> ShiftChange;
|
||||
PBD::Signal<void(bool)> PluginStateChange;
|
||||
PBD::Signal<void()> EQBandQBindingChange;
|
||||
|
||||
enum ControllerID
|
||||
{
|
||||
|
|
@ -204,6 +211,13 @@ public:
|
|||
|
||||
};
|
||||
|
||||
enum EQ_MODE
|
||||
{
|
||||
EQM_UNDEFINED = -1,
|
||||
EQM_HARRISON = 0,
|
||||
EQM_SSL = 1
|
||||
};
|
||||
|
||||
using ControllerMap = std::map<std::string, ControllerID>;
|
||||
|
||||
ControllerMap controllerMap{ { "CONTROLLER_NONE", ControllerID::CONTROLLER_NONE },
|
||||
|
|
@ -290,8 +304,13 @@ private:
|
|||
|
||||
// Shift button
|
||||
bool shift_state = false;
|
||||
|
||||
// Plugin state
|
||||
bool in_plugin_state = false;
|
||||
|
||||
// Selected EQ
|
||||
EQ_MODE strip_eq_mode = EQM_UNDEFINED;
|
||||
|
||||
bool rolling = false;
|
||||
uint32_t current_bank = 0;
|
||||
uint32_t current_strippable_index = 0;
|
||||
|
|
@ -420,6 +439,7 @@ private:
|
|||
void map_stripable_state ();
|
||||
|
||||
void notify_parameter_changed (std::string) override;
|
||||
void band_q_usage_changed ();
|
||||
|
||||
/* operations (defined in c1_operations.cc) */
|
||||
|
||||
|
|
@ -457,8 +477,9 @@ private:
|
|||
|
||||
// EQ section
|
||||
void eq (const uint32_t);
|
||||
void eq_freq (const uint32_t band, uint32_t value);
|
||||
void eq_gain (const uint32_t band, uint32_t value);
|
||||
void eq_freq (const uint32_t band, uint32_t value);
|
||||
void eq_gain (const uint32_t band, uint32_t value);
|
||||
void eq_band_q (const uint32_t band, uint32_t value);
|
||||
void eq_high_shape (const uint32_t value);
|
||||
void eq_low_shape (const uint32_t value);
|
||||
|
||||
|
|
@ -502,6 +523,27 @@ private:
|
|||
return eq_gain_id;
|
||||
}
|
||||
|
||||
ControllerID eq_q_controller_for_band (const uint32_t band)
|
||||
{
|
||||
if( band_q_as_send )
|
||||
return ControllerID::CONTROLLER_NONE;
|
||||
ControllerID eq_gain_id = ControllerID::CONTROLLER_NONE;
|
||||
switch (band)
|
||||
{
|
||||
case 0:
|
||||
break;
|
||||
case 1:
|
||||
eq_gain_id = ControllerID::LOW_MID_SHAPE;
|
||||
break;
|
||||
case 2:
|
||||
eq_gain_id = ControllerID::HIGH_MID_SHAPE;
|
||||
break;
|
||||
case 3:
|
||||
break;
|
||||
}
|
||||
return eq_gain_id;
|
||||
}
|
||||
|
||||
// Mixbus sends
|
||||
void mb_send_level (const uint32_t n, const uint32_t value);
|
||||
|
||||
|
|
@ -551,8 +593,10 @@ private:
|
|||
|
||||
// EQ section
|
||||
void map_eq ();
|
||||
void map_eq_freq (const uint32_t band);
|
||||
void map_eq_mode ();
|
||||
void map_eq_freq(const uint32_t band);
|
||||
void map_eq_gain (const uint32_t band);
|
||||
void map_eq_band_q (const uint32_t band);
|
||||
void map_eq_low_shape ();
|
||||
void map_eq_high_shape ();
|
||||
|
||||
|
|
@ -608,7 +652,9 @@ private:
|
|||
|
||||
bool map_select_plugin (const int32_t plugin_index);
|
||||
|
||||
using PluginMappingMap = std::map<std::string, PluginMapping>;
|
||||
void eqBandQChangeMapping();
|
||||
|
||||
using PluginMappingMap = std::map<std::string, PluginMapping>;
|
||||
PluginMappingMap pluginMappingMap;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue