X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fevoral%2Fevoral%2FControlList.hpp;h=70488b60be6e1ade383d6e9038875ccc34d7bc46;hb=13bcd4342315eb20d5a27a06ba03f6890e20478a;hp=45519955c5ecef60443b48fcc79b2727728a4e1b;hpb=60f588f21d6ad62335d72e8dc682abf8859107ea;p=ardour.git diff --git a/libs/evoral/evoral/ControlList.hpp b/libs/evoral/evoral/ControlList.hpp index 45519955c5..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(); - - virtual boost::shared_ptr create(Parameter id); - ControlList (const ControlList&); ControlList (const ControlList&, double start, double end); + virtual ~ControlList(); + + virtual boost::shared_ptr create(Parameter id); + 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 ();