diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2016-04-08 16:49:47 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2016-05-31 15:30:40 -0400 |
commit | 653ae4acd639fef149314fe6f8c7a0d862afae40 (patch) | |
tree | ba32ff0efd9b105c207ad7e3b2e89d73e76b4355 /libs/ardour/audio_track.cc | |
parent | c107f1ab56270f4485ca2a787d575c2b5b53cfcf (diff) |
universal change in the design of the way Route/Track controls are designed and used. The controls now own their own state, rather than proxy for state in their owners.
Massive changes all over the code to accomodate this. Many things are not finished. Consider this a backup safety commit
Diffstat (limited to 'libs/ardour/audio_track.cc')
-rw-r--r-- | libs/ardour/audio_track.cc | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/libs/ardour/audio_track.cc b/libs/ardour/audio_track.cc index 579b0064bc..2ed200d6f6 100644 --- a/libs/ardour/audio_track.cc +++ b/libs/ardour/audio_track.cc @@ -33,6 +33,7 @@ #include "ardour/buffer_set.h" #include "ardour/delivery.h" #include "ardour/meter.h" +#include "ardour/monitor_control.h" #include "ardour/playlist_factory.h" #include "ardour/processor.h" #include "ardour/profile.h" @@ -349,7 +350,7 @@ AudioTrack::roll (pframes_t nframes, framepos_t start_frame, framepos_t end_fram if (!_active) { silence (nframes); - if (_meter_point == MeterInput && (_monitoring & MonitorInput || _diskstream->record_enabled())) { + if (_meter_point == MeterInput && ((_monitoring_control->monitoring_choice() & MonitorInput) || _diskstream->record_enabled())) { _meter->reset(); } return 0; @@ -391,7 +392,7 @@ AudioTrack::roll (pframes_t nframes, framepos_t start_frame, framepos_t end_fram fill_buffers_with_input (bufs, _input, nframes); - if (_meter_point == MeterInput && (_monitoring & MonitorInput || _diskstream->record_enabled())) { + if (_meter_point == MeterInput && ((_monitoring_control->monitoring_choice() & MonitorInput) || _diskstream->record_enabled())) { _meter->run (bufs, start_frame, end_frame, nframes, true); } @@ -629,8 +630,9 @@ AudioTrack::freeze_me (InterThreadInfo& itt) /* reset stuff that has already been accounted for in the freeze process */ - set_gain (GAIN_COEFF_UNITY, Controllable::NoGroup); - _amp->gain_control()->set_automation_state (Off); + gain_control()->set_value (GAIN_COEFF_UNITY, Controllable::NoGroup); + gain_control()->set_automation_state (Off); + /* XXX need to use _main_outs _panner->set_automation_state (Off); */ _freeze_record.state = Frozen; |