when mingw is mingw64, it appears that we need to use __declspec() and not __attribut...
[ardour.git] / libs / evoral / evoral / ControlList.hpp
index 967e08d619909deefee28dda5eb6d3ceecaa89aa..0774cc528afdfbd2f8b690f50ed57edcfaa06ed6 100644 (file)
@@ -25,6 +25,8 @@
 #include <boost/pool/pool_alloc.hpp>
 #include <glibmm/threads.h>
 #include "pbd/signals.h"
+
+#include "evoral/visibility.h"
 #include "evoral/types.hpp"
 #include "evoral/Range.hpp"
 #include "evoral/Parameter.hpp"
@@ -35,7 +37,7 @@ class Curve;
 
 /** A single event (time-stamped value) for a control
  */
-class ControlEvent {
+class LIBEVORAL_API ControlEvent {
 public:
        ControlEvent (double w, double v)
                : when (w), value (v), coeff (0)
@@ -67,7 +69,7 @@ public:
 
 /** A list (sequence) of time-stamped values for a control
  */
-class ControlList
+class LIBEVORAL_API ControlList
 {
 public:
        typedef std::list<ControlEvent*> EventList;
@@ -115,7 +117,7 @@ public:
 
        virtual bool clamp_value (double& /*when*/, double& /*value*/) const { return true; }
 
-        virtual void add (double when, double value);
+        virtual void add (double when, double value, bool with_guards=true);
        void fast_simple_add (double when, double value);
 
        void erase_range (double start, double end);