diff options
author | Robin Gareus <robin@gareus.org> | 2014-06-08 11:18:18 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2014-06-08 11:18:18 +0200 |
commit | 81182b5bf69e06f67b3ccbca46860ac8e6387d2f (patch) | |
tree | 23c2165f66167a0ffbafcb5de3367a5ae2266755 /libs/ardour/ardour/audioengine.h | |
parent | 6416a429a888fcb18b9aa5a4aed1d6d8c9a6da1f (diff) |
prepare MIDI latency measurement (backend)
Diffstat (limited to 'libs/ardour/ardour/audioengine.h')
-rw-r--r-- | libs/ardour/ardour/audioengine.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/libs/ardour/ardour/audioengine.h b/libs/ardour/ardour/audioengine.h index dd57f81e90..7eeae8f205 100644 --- a/libs/ardour/ardour/audioengine.h +++ b/libs/ardour/ardour/audioengine.h @@ -54,6 +54,7 @@ namespace ARDOUR { class InternalPort; class MidiPort; +class MIDIDM; class Port; class Session; class ProcessThread; @@ -191,14 +192,24 @@ public: /* latency measurement */ - MTDM* mtdm(); + MTDM* mtdm() { return _mtdm; } + MIDIDM* mididm() { return _mididm; } + int prepare_for_latency_measurement (); - int start_latency_detection (); + int start_latency_detection (bool); void stop_latency_detection (); void set_latency_input_port (const std::string&); void set_latency_output_port (const std::string&); uint32_t latency_signal_delay () const { return _latency_signal_latency; } + enum LatencyMeasurement { + MeasureNone, + MeasureAudio, + MeasureMIDI + }; + + LatencyMeasurement measuring_latency () const { return _measuring_latency; } + private: AudioEngine (); @@ -221,7 +232,8 @@ public: Glib::Threads::Thread* m_meter_thread; ProcessThread* _main_thread; MTDM* _mtdm; - bool _measuring_latency; + MIDIDM* _mididm; + LatencyMeasurement _measuring_latency; PortEngine::PortHandle _latency_input_port; PortEngine::PortHandle _latency_output_port; framecnt_t _latency_flush_frames; |