there is no remote model choice anymore - ordering is determined by the GUI
[ardour.git] / libs / ardour / ardour / click.h
index 5ee1d5019410ef2e6c99dce77e5d7f71a91a7742..7fc6d21f7396d19926efc9a096cafbd87484cee1 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 {
-    nframes_t start;
-    nframes_t duration;
-    nframes_t offset;
-    const Sample *data;
+class LIBARDOUR_API Click {
+public:
+       framepos_t start;
+       framecnt_t duration;
+       framecnt_t offset;
+       const Sample *data;
 
-    Click (nframes_t s, nframes_t d, const Sample *b) : start (s), duration (d), offset (0), data (b) {}
-    
-    void *operator new (size_t) {
-           return pool.alloc ();
+       Click (framepos_t s, framecnt_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);
-    }
-    
+
+       void operator delete(void *ptr, size_t /*size*/) {
+               pool.release (ptr);
+       }
+
 private:
-    static Pool pool;
+       static Pool pool;
 };
 
-typedef std::list<Click*> Clicks;
-
-class ClickIO : public IO
+class LIBARDOUR_API ClickIO : public IO
 {
-  public:
+public:
        ClickIO (Session& s, const std::string& name) : IO (s, name, IO::Output) {}
        ~ClickIO() {}
-       
-  protected:
+
+protected:
        uint32_t pans_required () const { return 1; }
 };