From f240b08a1799b3aa6a29701c90388d51c0c1b2ce Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sat, 18 Feb 2017 18:32:02 +0100 Subject: Add experimental PortAudio driver --- ingen/EngineBase.hpp | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'ingen/EngineBase.hpp') diff --git a/ingen/EngineBase.hpp b/ingen/EngineBase.hpp index 087189e4..a0a20cd9 100644 --- a/ingen/EngineBase.hpp +++ b/ingen/EngineBase.hpp @@ -1,6 +1,6 @@ /* This file is part of Ingen. - Copyright 2007-2015 David Robillard + Copyright 2007-2017 David Robillard Ingen is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free @@ -17,9 +17,10 @@ #ifndef INGEN_ENGINEBASE_HPP #define INGEN_ENGINEBASE_HPP -#include +#include +#include +#include -#include "raul/URI.hpp" #include "ingen/ingen.h" #include "ingen/types.hpp" @@ -67,6 +68,16 @@ public: */ virtual bool pending_events() = 0; + /** + Flush any pending events. + + This function is only safe to call in sequential contexts, and runs both + process thread and main iterations in lock-step. + + @param Interval in milliseconds to sleep between each block. + */ + virtual void flush_events(const std::chrono::milliseconds& sleep_ms) = 0; + /** Locate to a given cycle. */ @@ -113,7 +124,6 @@ public: Unregister a client. */ virtual bool unregister_client(SPtr client) = 0; - }; } // namespace Ingen -- cgit v1.2.1