, _no_panner_reset (false)
{
if (pannable) {
- _panshell = boost::shared_ptr<PannerShell>(new PannerShell (_name, _session, pannable));
+ bool is_send = false;
+ if (r & (Delivery::Send|Delivery::Aux)) is_send = true;
+ _panshell = boost::shared_ptr<PannerShell>(new PannerShell (_name, _session, pannable, is_send));
}
_display_to_user = false;
, _no_panner_reset (false)
{
if (pannable) {
- _panshell = boost::shared_ptr<PannerShell>(new PannerShell (_name, _session, pannable));
+ bool is_send = false;
+ if (r & (Delivery::Send|Delivery::Aux)) is_send = true;
+ _panshell = boost::shared_ptr<PannerShell>(new PannerShell (_name, _session, pannable, is_send));
}
_display_to_user = false;
reset_panner ();
XMLNode* pannnode = node.child (X_("Pannable"));
- if (_panshell->panner() && pannnode) {
+ if (_panshell && _panshell->panner() && pannnode) {
_panshell->pannable()->set_state (*pannnode, version);
}
if (panners_legal) {
if (!_no_panner_reset) {
- if (_panshell) {
+ if (_panshell && _role != Insert && _role != Listen) {
_panshell->configure_io (ChanCount (DataType::AUDIO, pans_required()), ChanCount (DataType::AUDIO, pan_outs()));
-
- if (_role == Main || _role == Aux || _role == Send) {
- _panshell->pannable()->set_panner (_panshell->panner());
- }
}
}
void
Delivery::panners_became_legal ()
{
- if (_panshell) {
+ if (_panshell && _role != Insert) {
_panshell->configure_io (ChanCount (DataType::AUDIO, pans_required()), ChanCount (DataType::AUDIO, pan_outs()));
-
- if (_role == Main) {
- _panshell->pannable()->set_panner (_panshell->panner());
- }
}
panner_legal_c.disconnect ();