Do not try to restore Route solo state after clearing all solo state
[ardour.git] / gtk2_ardour / automation_streamview.h
index 37f13774a4d4a8841ea1421977fb33307b0cf20f..67f720dc5ff8792a73505ccd5be589622d9e9fbd 100644 (file)
@@ -24,7 +24,6 @@
 
 #include "ardour/location.h"
 #include "enums.h"
-#include "simplerect.h"
 #include "streamview.h"
 #include "time_axis_view_item.h"
 #include "route_time_axis.h"
@@ -46,6 +45,7 @@ class AutomationStreamView : public StreamView
        ~AutomationStreamView ();
 
        void set_automation_state (ARDOUR::AutoState state);
+       ARDOUR::AutoState automation_state () const;
 
        void redisplay_track ();
 
@@ -53,6 +53,23 @@ class AutomationStreamView : public StreamView
                return (_trackview.current_height() - TimeAxisViewItem::NAME_HIGHLIGHT_SIZE - 2);
        }
 
+       bool has_automation () const;
+
+       void set_interpolation (ARDOUR::AutomationList::InterpolationStyle);
+       ARDOUR::AutomationList::InterpolationStyle interpolation () const;
+
+       void clear ();
+
+       void get_selectables (ARDOUR::framepos_t, ARDOUR::framepos_t, double, double, std::list<Selectable*> &, bool within = false);
+       void set_selected_points (PointSelection &);
+
+       std::list<boost::shared_ptr<AutomationLine> > get_lines () const;
+
+       bool paste (framepos_t                                pos,
+                   unsigned                                  paste_count,
+                   float                                     times,
+                   boost::shared_ptr<ARDOUR::AutomationList> list);
+
   private:
        void setup_rec_box ();
 
@@ -61,9 +78,9 @@ class AutomationStreamView : public StreamView
 
        void color_handler ();
 
-       boost::shared_ptr<AutomationController> _controller;
-
        AutomationTimeAxisView& _automation_view;
+       /** automation state that should be applied when this view gets its first RegionView */
+       ARDOUR::AutoState _pending_automation_state;
 };
 
 #endif /* __ardour_automation_streamview_h__ */