diff options
author | David Robillard <d@drobilla.net> | 2017-02-18 18:32:02 +0100 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2017-02-18 19:38:13 +0100 |
commit | f240b08a1799b3aa6a29701c90388d51c0c1b2ce (patch) | |
tree | 28ec7429aa10f28710023fdcc43d07a4f0b4ebc9 /ingen/EngineBase.hpp | |
parent | 6141b832946006a6ec3c1a3a70bd729c0404771e (diff) | |
download | ingen-f240b08a1799b3aa6a29701c90388d51c0c1b2ce.tar.gz ingen-f240b08a1799b3aa6a29701c90388d51c0c1b2ce.tar.bz2 ingen-f240b08a1799b3aa6a29701c90388d51c0c1b2ce.zip |
Add experimental PortAudio driver
Diffstat (limited to 'ingen/EngineBase.hpp')
-rw-r--r-- | ingen/EngineBase.hpp | 18 |
1 files changed, 14 insertions, 4 deletions
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 <http://drobilla.net/> + Copyright 2007-2017 David Robillard <http://drobilla.net/> 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 <stdint.h> +#include <chrono> +#include <cstddef> +#include <cstdint> -#include "raul/URI.hpp" #include "ingen/ingen.h" #include "ingen/types.hpp" @@ -68,6 +69,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. */ virtual void locate(uint32_t start, uint32_t sample_count) = 0; @@ -113,7 +124,6 @@ public: Unregister a client. */ virtual bool unregister_client(SPtr<Interface> client) = 0; - }; } // namespace Ingen |