- struct InsertAutomationNode {
- ARDOUR::ParamID what;
- Gtk::CheckMenuItem* menu_item;
- AutomationTimeAxisView* view;
- RouteTimeAxisView& parent;
+ virtual void create_automation_child (const Evoral::Parameter& param, bool show) = 0;
+
+ /* make sure we get the right version of this */
+
+ XMLNode* get_automation_child_xml_node (Evoral::Parameter param) { return RouteUI::get_automation_child_xml_node (param); }
+
+ typedef std::map<Evoral::Parameter, RouteAutomationNode*> AutomationTracks;
+ AutomationTracks automation_tracks() { return _automation_tracks; }
+
+ boost::shared_ptr<AutomationTimeAxisView> automation_child(Evoral::Parameter param);
+
+ std::string name() const;
+ StreamView* view() const { return _view; }
+ ARDOUR::RouteGroup* route_group() const;
+ boost::shared_ptr<ARDOUR::Playlist> playlist() const;
+
+ void fast_update ();
+ void hide_meter ();
+ void show_meter ();
+ void reset_meter ();
+ void clear_meter ();
+ void io_changed (ARDOUR::IOChange, void *);
+ void meter_changed (void *);
+ void effective_gain_display () { gm.effective_gain_display(); }
+
+ static void setup_slider_pix ();
+
+protected:
+ friend class StreamView;