summaryrefslogtreecommitdiff
path: root/libs/ardour/track.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2017-06-11 19:53:02 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2017-09-18 11:40:53 -0400
commit982d173b5741a7ac4c76f858feb2ae0c9e60e1c2 (patch)
tree765bfbfe7d8cc6b537c8de383943ee4686c9fbce /libs/ardour/track.cc
parenteb24353cadf6e25a26283cd9faad0bca0d118326 (diff)
cue monitoring for audio (libardour aspects)
Diffstat (limited to 'libs/ardour/track.cc')
-rw-r--r--libs/ardour/track.cc21
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 ()) {