diff options
Diffstat (limited to 'src/server/PortImpl.hpp')
-rw-r--r-- | src/server/PortImpl.hpp | 41 |
1 files changed, 21 insertions, 20 deletions
diff --git a/src/server/PortImpl.hpp b/src/server/PortImpl.hpp index 2c106f32..ddbaa087 100644 --- a/src/server/PortImpl.hpp +++ b/src/server/PortImpl.hpp @@ -26,6 +26,7 @@ #include "ingen/Port.hpp" #include "Buffer.hpp" +#include "BufferRef.hpp" #include "Context.hpp" #include "GraphObjectImpl.hpp" #include "PortType.hpp" @@ -60,7 +61,7 @@ public: * Audio thread. Returned value must be freed by caller. * \a buffers must be poly() long */ - Raul::Array<Buffer::Ref>* set_buffers(Raul::Array<Buffer::Ref>* buffers); + Raul::Array<BufferRef>* set_buffers(Raul::Array<BufferRef>* buffers); /** Prepare for a new (external) polyphony value. * @@ -90,10 +91,10 @@ public: void set_minimum(const Raul::Atom& min) { _min = min; } void set_maximum(const Raul::Atom& max) { _max = max; } - inline Buffer::Ref buffer(uint32_t voice) const { + inline BufferRef buffer(uint32_t voice) const { return _buffers->at((_poly == 1) ? 0 : voice); } - inline Buffer::Ref prepared_buffer(uint32_t voice) const { + inline BufferRef prepared_buffer(uint32_t voice) const { return _prepared_buffers->at(voice); } @@ -104,9 +105,9 @@ public: /** Empty buffer contents completely (ie silence) */ virtual void clear_buffers(); - virtual bool get_buffers(BufferFactory& bufs, - Raul::Array<Buffer::Ref>* buffers, - uint32_t poly) const = 0; + virtual bool get_buffers(BufferFactory& bufs, + Raul::Array<BufferRef>* buffers, + uint32_t poly) const = 0; void setup_buffers(BufferFactory& bufs, uint32_t poly) { get_buffers(bufs, _buffers, poly); @@ -158,20 +159,20 @@ protected: const Raul::Atom& value, size_t buffer_size); - BufferFactory& _bufs; - uint32_t _index; - uint32_t _poly; - uint32_t _buffer_size; - PortType _type; - LV2_URID _buffer_type; - Raul::Atom _value; - Raul::Atom _min; - Raul::Atom _max; - Raul::Atom _last_broadcasted_value; - Raul::Array<Buffer::Ref>* _buffers; - Raul::Array<Buffer::Ref>* _prepared_buffers; - bool _broadcast; - bool _set_by_user; + BufferFactory& _bufs; + uint32_t _index; + uint32_t _poly; + uint32_t _buffer_size; + PortType _type; + LV2_URID _buffer_type; + Raul::Atom _value; + Raul::Atom _min; + Raul::Atom _max; + Raul::Atom _last_broadcasted_value; + Raul::Array<BufferRef>* _buffers; + Raul::Array<BufferRef>* _prepared_buffers; + bool _broadcast; + bool _set_by_user; }; } // namespace Server |