X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fbuffer.h;h=8293a22beb5dc475621c6095d3d970a735143558;hb=e973e39f06c81fc301c8b059c5240cc17c6671ad;hp=46a6d6266789c4e84a36fe08aa0135a0da9d24aa;hpb=bb9cc45cd22af67ac275a5e73accbe14fee664d8;p=ardour.git diff --git a/libs/ardour/ardour/buffer.h b/libs/ardour/ardour/buffer.h index 46a6d62667..8293a22beb 100644 --- a/libs/ardour/ardour/buffer.h +++ b/libs/ardour/ardour/buffer.h @@ -19,15 +19,13 @@ #ifndef __ardour_buffer_h__ #define __ardour_buffer_h__ -#include -#include -#include -#include +#include + #include +#include "ardour/libardour_visibility.h" #include "ardour/types.h" #include "ardour/data_type.h" -#include "ardour/runtime_functions.h" namespace ARDOUR { @@ -41,7 +39,7 @@ namespace ARDOUR { * * To actually read/write buffer contents, use the appropriate derived class. */ -class Buffer : public boost::noncopyable +class LIBARDOUR_API Buffer : public boost::noncopyable { public: virtual ~Buffer() {} @@ -49,13 +47,9 @@ public: /** Factory function */ static Buffer* create(DataType type, size_t capacity); - /** Maximum capacity of buffer. - * Note in some cases the entire buffer may not contain valid data, use size. */ + /** Maximum capacity of buffer. */ size_t capacity() const { return _capacity; } - /** Amount of valid data in buffer. Use this over capacity almost always. */ - size_t size() const { return _size; } - /** Type of this buffer. * Based on this you can static cast a Buffer* to the desired type. */ DataType type() const { return _type; } @@ -70,23 +64,22 @@ public: virtual void resize (size_t) = 0; /** Clear (eg zero, or empty) buffer */ - virtual void silence (nframes_t len, nframes_t offset = 0) = 0; + virtual void silence (framecnt_t len, framecnt_t offset = 0) = 0; /** Clear the entire buffer */ virtual void clear() { silence(_capacity, 0); } - virtual void read_from (const Buffer& src, nframes_t len, nframes_t dst_offset = 0, nframes_t src_offset = 0) = 0; - virtual void merge_from (const Buffer& src, nframes_t len, nframes_t dst_offset = 0, nframes_t src_offset = 0) = 0; + virtual void read_from (const Buffer& src, framecnt_t len, framecnt_t dst_offset = 0, framecnt_t src_offset = 0) = 0; + virtual void merge_from (const Buffer& src, framecnt_t len, framecnt_t dst_offset = 0, framecnt_t src_offset = 0) = 0; protected: - Buffer(DataType type, size_t capacity) - : _type(type), _capacity(capacity), _size(0), _silent(true) + Buffer(DataType type) + : _type(type), _capacity(0), _silent (true) {} - DataType _type; - size_t _capacity; - size_t _size; - bool _silent; + DataType _type; + pframes_t _capacity; + bool _silent; };