Aux-Send Latency compensation, part 2 & code-consolidation
[ardour.git] / libs / ardour / ardour / buffer.h
index 87f7a90fc30a72ba6e3e55be93cf2bb14dabc70b..349dfbd4b266ac6897a1b528660f5ec355458bb2 100644 (file)
@@ -23,6 +23,7 @@
 
 #include <boost/utility.hpp>
 
+#include "ardour/libardour_visibility.h"
 #include "ardour/types.h"
 #include "ardour/data_type.h"
 
@@ -38,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() {}
@@ -63,13 +64,13 @@ public:
        virtual void resize (size_t) = 0;
 
        /** Clear (eg zero, or empty) buffer */
-       virtual void silence (framecnt_t len, framecnt_t offset = 0) = 0;
+       virtual void silence (samplecnt_t len, samplecnt_t offset = 0) = 0;
 
        /** Clear the entire buffer */
        virtual void clear() { silence(_capacity, 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;
+       virtual void read_from (const Buffer& src, samplecnt_t len, sampleoffset_t dst_offset = 0, sampleoffset_t src_offset = 0) = 0;
+       virtual void merge_from (const Buffer& src, samplecnt_t len, sampleoffset_t dst_offset = 0, sampleoffset_t src_offset = 0) = 0;
 
   protected:
        Buffer(DataType type)