X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fevoral%2Fevoral%2FControlList.hpp;h=70488b60be6e1ade383d6e9038875ccc34d7bc46;hb=13bcd4342315eb20d5a27a06ba03f6890e20478a;hp=1b2b46b10bfb959dcbd2e6b24ec6a4865470fe0d;hpb=fa4bca989b18259456ec713b8f02e061ec8bc8e2;p=ardour.git diff --git a/libs/evoral/evoral/ControlList.hpp b/libs/evoral/evoral/ControlList.hpp index 1b2b46b10b..70488b60be 100644 --- a/libs/evoral/evoral/ControlList.hpp +++ b/libs/evoral/evoral/ControlList.hpp @@ -23,9 +23,9 @@ #include #include #include -#include -#include -#include +#include "evoral/types.hpp" +#include "evoral/Parameter.hpp" +#include "evoral/Curve.hpp" namespace Evoral { @@ -84,13 +84,12 @@ public: typedef EventList::const_iterator const_iterator; ControlList (const Parameter& id); - //ControlList (const XMLNode&, Parameter id); + ControlList (const ControlList&); + ControlList (const ControlList&, double start, double end); virtual ~ControlList(); virtual boost::shared_ptr create(Parameter id); - - ControlList (const ControlList&); - ControlList (const ControlList&, double start, double end); + ControlList& operator= (const ControlList&); bool operator== (const ControlList&); @@ -121,7 +120,7 @@ public: void erase_range (double start, double end); void erase (iterator); void erase (iterator, iterator); - void move_range (iterator start, iterator end, double, double); + void move_ranges (std::list< RangeMove > const &); void modify (iterator, double, double); boost::shared_ptr cut (double, double); @@ -242,6 +241,7 @@ protected: bool rt_safe_earliest_event_linear_unlocked (double start, double end, double& x, double& y, bool inclusive) const; boost::shared_ptr cut_copy_clear (double, double, int op); + bool erase_range_internal (double start, double end, EventList &); virtual void maybe_signal_changed ();