diff options
author | David Robillard <d@drobilla.net> | 2016-12-13 20:53:58 -0500 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2016-12-14 14:47:13 -0500 |
commit | e7b2f7ee286350bc3bb56b44ed98e4d8bf49af82 (patch) | |
tree | 8e5a4e42b36bb5c321f24cdd492cd3dc0a941222 /src/server/Buffer.hpp | |
parent | 05c55a5be68318d2b7ca861a3012bf4893bcb82d (diff) | |
download | ingen-e7b2f7ee286350bc3bb56b44ed98e4d8bf49af82.tar.gz ingen-e7b2f7ee286350bc3bb56b44ed98e4d8bf49af82.tar.bz2 ingen-e7b2f7ee286350bc3bb56b44ed98e4d8bf49af82.zip |
Fix real-time issues with buffer allocation
Diffstat (limited to 'src/server/Buffer.hpp')
-rw-r--r-- | src/server/Buffer.hpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/server/Buffer.hpp b/src/server/Buffer.hpp index d60365f2..6404479b 100644 --- a/src/server/Buffer.hpp +++ b/src/server/Buffer.hpp @@ -64,7 +64,12 @@ public: return is_audio() ? _capacity : sizeof(LV2_Atom) + get<LV2_Atom>()->size; } - void set_type(LV2_URID type, LV2_URID value_type); + typedef BufferRef (BufferFactory::*GetFn)(LV2_URID, LV2_URID, uint32_t); + + /** Set the buffer type and optional value type for this buffer. + * @param get Called to get auxiliary buffers if necessary. + */ + void set_type(GetFn get, LV2_URID type, LV2_URID value_type); inline bool is_audio() const { return _type == _factory.uris().atom_Sound; |