From 34373c30f3bdb8436d9f002b6cb9e1363346d6b5 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Mon, 9 Jan 2012 16:43:30 +0000 Subject: add MIDITrack specific ::monitoring_state() method git-svn-id: svn://localhost/ardour2/branches/3.0@11207 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/midi_track.cc | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'libs/ardour/midi_track.cc') diff --git a/libs/ardour/midi_track.cc b/libs/ardour/midi_track.cc index 1b327ae70d..1b40cb5f56 100644 --- a/libs/ardour/midi_track.cc +++ b/libs/ardour/midi_track.cc @@ -748,3 +748,29 @@ MidiTrack::set_monitoring (MonitorChoice mc) md->reset_tracker (); } } + +MonitorState +MidiTrack::monitoring_state () const +{ + /* Explicit requests */ + + if (_monitoring & MonitorInput) { + return MonitoringInput; + } + + if (_monitoring & MonitorDisk) { + return MonitoringDisk; + } + + if (_session.transport_rolling()) { + return MonitoringDisk; + } + + /* the return value here doesn't mean that we're actually monitoring + * input, let alone input *audio*. but it means that we are NOT + * monitoring silence. this allows us to still hear any audio generated + * by using internal generation techniques + */ + + return MonitoringInput; +} -- cgit v1.2.3