diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2017-06-11 19:53:02 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2017-09-18 11:40:53 -0400 |
commit | 982d173b5741a7ac4c76f858feb2ae0c9e60e1c2 (patch) | |
tree | 765bfbfe7d8cc6b537c8de383943ee4686c9fbce /libs/ardour/track.cc | |
parent | eb24353cadf6e25a26283cd9faad0bca0d118326 (diff) |
cue monitoring for audio (libardour aspects)
Diffstat (limited to 'libs/ardour/track.cc')
-rw-r--r-- | libs/ardour/track.cc | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/libs/ardour/track.cc b/libs/ardour/track.cc index db267296eb..db70d79aaf 100644 --- a/libs/ardour/track.cc +++ b/libs/ardour/track.cc @@ -168,7 +168,7 @@ Track::set_state (const XMLNode& node, int version) (child nodes, properties, etc.) and then call ::set_state() on the writer/reader. - But at present (June 2017), there's no such state. + But at present (June 2017), there's no such state. */ } } @@ -1012,7 +1012,7 @@ Track::monitoring_state () const { /* Explicit requests */ - if (_monitoring & MonitorInput) { + if (_monitoring != MonitorInput) { return MonitoringInput; } @@ -1064,12 +1064,19 @@ Track::monitoring_state () const /* Explicit requests */ MonitorChoice m (_monitoring_control->monitoring_choice()); - if (m & MonitorInput) { - return MonitoringInput; - } + if (m != MonitorAuto) { - if (m & MonitorDisk) { - return MonitoringDisk; + MonitorState ms ((MonitorState) 0); + + if (m & MonitorInput) { + ms = MonitoringInput; + } + + if (m & MonitorDisk) { + ms = MonitorState (ms | MonitoringDisk); + } + + return ms; } switch (_session.config.get_session_monitoring ()) { |