when looking up controllables via descriptors (e.g. generic MIDI control) use the new "well-known" route controllables

This commit is contained in:
Paul Davis 2016-02-02 16:42:32 -05:00
parent 99a53ed7f0
commit 2cb3343eec

View File

@ -3373,22 +3373,16 @@ Session::controllable_by_descriptor (const ControllableDescriptor& desc)
} }
case ControllableDescriptor::PanDirection: case ControllableDescriptor::PanDirection:
{ c = r->pan_azimuth_control();
c = r->pannable()->pan_azimuth_control;
break; break;
}
case ControllableDescriptor::PanWidth: case ControllableDescriptor::PanWidth:
{ c = r->pan_width_control();
c = r->pannable()->pan_width_control;
break; break;
}
case ControllableDescriptor::PanElevation: case ControllableDescriptor::PanElevation:
{ c = r->pan_elevation_control();
c = r->pannable()->pan_elevation_control;
break; break;
}
case ControllableDescriptor::Balance: case ControllableDescriptor::Balance:
/* XXX simple pan control */ /* XXX simple pan control */
@ -3418,26 +3412,12 @@ Session::controllable_by_descriptor (const ControllableDescriptor& desc)
break; break;
} }
case ControllableDescriptor::SendGain: case ControllableDescriptor::SendGain: {
{
uint32_t send = desc.target (0); uint32_t send = desc.target (0);
/* revert to zero-based counting */
if (send > 0) { if (send > 0) {
--send; --send;
} }
c = r->send_level_controllable (send);
boost::shared_ptr<Processor> p = r->nth_send (send);
if (p) {
boost::shared_ptr<Send> s = boost::dynamic_pointer_cast<Send>(p);
boost::shared_ptr<Amp> a = s->amp();
if (a) {
c = s->amp()->gain_control();
}
}
break; break;
} }