#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 {
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 ();
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);
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;