Add polarity-invert processor
[ardour.git] / libs / ardour / ardour / click.h
index 783588c8ab636de8983f0f26a7028912b4e43627..498a18219d9f018492de6e9e28d90b17494a92ae 100644 (file)
 #include <list>
 
 #include "pbd/pool.h"
+#include "ardour/libardour_visibility.h"
 #include "ardour/types.h"
 #include "ardour/io.h"
 
 namespace ARDOUR {
 
-struct Click {
-       framepos_t start;
-       framecnt_t duration;
-       framecnt_t offset;
+class LIBARDOUR_API Click {
+public:
+       samplepos_t start;
+       samplecnt_t duration;
+       samplecnt_t offset;
        const Sample *data;
-       
-       Click (framepos_t s, framecnt_t d, const Sample *b) : start (s), duration (d), offset (0), data (b) {}
-    
+
+       Click (samplepos_t s, samplecnt_t d, const Sample *b) : start (s), duration (d), offset (0), data (b) {}
+
        void *operator new (size_t) {
                return pool.alloc ();
     };
-       
+
        void operator delete(void *ptr, size_t /*size*/) {
                pool.release (ptr);
        }
-       
+
 private:
        static Pool pool;
 };
 
-typedef std::list<Click*> Clicks;
-
-class ClickIO : public IO
+class LIBARDOUR_API ClickIO : public IO
 {
 public:
        ClickIO (Session& s, const std::string& name) : IO (s, name, IO::Output) {}
        ~ClickIO() {}
-       
+
 protected:
        uint32_t pans_required () const { return 1; }
 };