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 | |
parent | 6141b832946006a6ec3c1a3a70bd729c0404771e (diff) | |
download | ingen-f240b08a1799b3aa6a29701c90388d51c0c1b2ce.tar.gz ingen-f240b08a1799b3aa6a29701c90388d51c0c1b2ce.tar.bz2 ingen-f240b08a1799b3aa6a29701c90388d51c0c1b2ce.zip |
Add experimental PortAudio driver
Diffstat (limited to 'ingen')
-rw-r--r-- | ingen/EngineBase.hpp | 18 | ||||
-rw-r--r-- | ingen/ingen.h | 10 |
2 files changed, 15 insertions, 13 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 diff --git a/ingen/ingen.h b/ingen/ingen.h index 11fd592a..ba56ae52 100644 --- a/ingen/ingen.h +++ b/ingen/ingen.h @@ -1,6 +1,6 @@ /* This file is part of Ingen. - Copyright 2014-2016 David Robillard <http://drobilla.net/> + Copyright 2014-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 @@ -34,14 +34,6 @@ # define INGEN_API #endif -#ifndef INGEN_WARN_UNUSED_RESULT -# if __GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ >= 4 -# define INGEN_WARN_UNUSED_RESULT __attribute__((warn_unused_result)) -# else -# define INGEN_WARN_UNUSED_RESULT -# endif -#endif - #define INGEN_NS "http://drobilla.net/ns/ingen#" #define INGEN__Arc INGEN_NS "Arc" |