Tidy.
[ardour.git] / libs / ardour / ardour / crossfade.h
index 61a30f1c0f3c60391e320aeaa819de51a517d099..b0785a6e594e1d2d29acdf04a27131d43b0e290d 100644 (file)
@@ -30,9 +30,9 @@
 #include <pbd/statefuldestructible.h> 
 
 #include <ardour/ardour.h>
-#include <ardour/curve.h>
 #include <ardour/audioregion.h>
 #include <ardour/crossfade_compare.h>
+#include <evoral/Curve.hpp>
 
 namespace ARDOUR {
 
@@ -81,8 +81,10 @@ class Crossfade : public ARDOUR::AudioRegion
        boost::shared_ptr<ARDOUR::AudioRegion> out() const { return _out; }
        
        nframes_t read_at (Sample *buf, Sample *mixdown_buffer, 
-                          float *gain_buffer, nframes_t position, nframes_t cnt, 
-                          uint32_t chan_n) const;
+                               float *gain_buffer, nframes_t position, nframes_t cnt, 
+                               uint32_t chan_n,
+                               nframes_t read_frames = 0,
+                               nframes_t skip_frames = 0) const;
        
        bool refresh ();
 
@@ -124,8 +126,8 @@ class Crossfade : public ARDOUR::AudioRegion
        bool can_follow_overlap() const;
        void set_follow_overlap (bool yn);
 
-       Curve& fade_in() { return _fade_in; } 
-       Curve& fade_out() { return _fade_out; }
+       AutomationList& fade_in() { return _fade_in; } 
+       AutomationList& fade_out() { return _fade_out; }
 
        nframes_t set_length (nframes_t);
 
@@ -157,8 +159,8 @@ class Crossfade : public ARDOUR::AudioRegion
        int32_t               layer_relation;
 
 
-       mutable Curve _fade_in;
-       mutable Curve _fade_out;
+       mutable AutomationList _fade_in;
+       mutable AutomationList _fade_out;
 
        static Sample* crossfade_buffer_out;
        static Sample* crossfade_buffer_in;