From 60978b5bc49906abae490383a609f907c85a36fa Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Mon, 24 Oct 2011 22:54:25 +0000 Subject: Move some code up from {Midi,Audio}Track to Track. git-svn-id: svn://localhost/ardour2/branches/3.0@10303 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/midi_track.cc | 36 +++++------------------------------- 1 file changed, 5 insertions(+), 31 deletions(-) (limited to 'libs/ardour/midi_track.cc') diff --git a/libs/ardour/midi_track.cc b/libs/ardour/midi_track.cc index 6821d9fec3..469d994768 100644 --- a/libs/ardour/midi_track.cc +++ b/libs/ardour/midi_track.cc @@ -143,7 +143,6 @@ int MidiTrack::_set_state (const XMLNode& node, int version) { const XMLProperty *prop; - XMLNodeConstIterator iter; if (Track::_set_state (node, version)) { return -1; @@ -166,34 +165,6 @@ MidiTrack::_set_state (const XMLNode& node, int version) set_input_active (string_is_affirmative (prop->value())); } - XMLNodeList nlist; - XMLNodeConstIterator niter; - XMLNode *child; - - nlist = node.children(); - - if (version >= 3000) { - if ((child = find_named_node (node, X_("Diskstream"))) != 0) { - boost::shared_ptr ds (new MidiDiskstream (_session, *child)); - ds->do_refill_with_alloc (); - set_diskstream (ds); - } - } - - /* set rec-enable control *AFTER* setting up diskstream, because it may - want to operate on the diskstream as it sets its own state - */ - - for (niter = nlist.begin(); niter != nlist.end(); ++niter){ - child = *niter; - - if (child->name() == Controllable::xml_node_name && (prop = child->property ("name")) != 0) { - if (prop->value() == X_("recenable")) { - _rec_enable_control->set_state (*child, version); - } - } - } - pending_state = const_cast (&node); if (_session.state_of_the_state() & Session::Loading) { @@ -233,8 +204,6 @@ MidiTrack::state(bool full_state) } root.add_property (X_("note-mode"), enum_2_string (_note_mode)); - root.add_child_nocopy (_rec_enable_control->get_state()); - root.add_child_nocopy (_diskstream->get_state ()); root.add_property ("step-editing", (_step_editing ? "yes" : "no")); root.add_property ("note-mode", enum_2_string (_note_mode)); @@ -736,3 +705,8 @@ MidiTrack::track_input_active (IOChange change, void* /* src */) } } +boost::shared_ptr +MidiTrack::diskstream_factory (XMLNode const & node) +{ + return boost::shared_ptr (new MidiDiskstream (_session, node)); +} -- cgit v1.2.3