+ /* This is a bit nasty to expose :/ */
+ struct RouteAutomationNode {
+ Evoral::Parameter param;
+ Gtk::CheckMenuItem* menu_item;
+ boost::shared_ptr<AutomationTimeAxisView> track;
+
+ RouteAutomationNode (Evoral::Parameter par, Gtk::CheckMenuItem* mi, boost::shared_ptr<AutomationTimeAxisView> tr)
+ : param (par), menu_item (mi), track (tr) {}
+ };
+
+ 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;