summaryrefslogtreecommitdiff
path: root/libs/ardour/audio_track.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2006-10-05 01:49:32 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2006-10-05 01:49:32 +0000
commitffdf5ada616d285fafb58f45c2e3d37b212a328a (patch)
treeeb4fa2dcd1db72bcbeffebf86fc40a3cf30cf4be /libs/ardour/audio_track.cc
parent5ad68cf2c5a7df68b7cc3a3d5a4f76f03a54c32e (diff)
Generic MIDI control now saves+restores its state; PBD::ID now requires a buffer size for its print() method
git-svn-id: svn://localhost/ardour2/trunk@949 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/audio_track.cc')
-rw-r--r--libs/ardour/audio_track.cc10
1 files changed, 8 insertions, 2 deletions
diff --git a/libs/ardour/audio_track.cc b/libs/ardour/audio_track.cc
index 2860470abd..171f2d7c6b 100644
--- a/libs/ardour/audio_track.cc
+++ b/libs/ardour/audio_track.cc
@@ -246,6 +246,10 @@ AudioTrack::set_state (const XMLNode& node)
sscanf (prop->value().c_str(), "%d", &x);
set_remote_control_id (x);
}
+
+ } else if (child->name() == X_("recenable")) {
+ _rec_enable_control.set_state (*child);
+ _session.add_controllable (&_rec_enable_control);
}
}
@@ -273,7 +277,7 @@ AudioTrack::state(bool full_state)
for (vector<FreezeRecordInsertInfo*>::iterator i = _freeze_record.insert_info.begin(); i != _freeze_record.insert_info.end(); ++i) {
inode = new XMLNode (X_("insert"));
- (*i)->id.print (buf);
+ (*i)->id.print (buf, sizeof (buf));
inode->add_property (X_("id"), buf);
inode->add_child_copy ((*i)->state);
@@ -317,9 +321,11 @@ AudioTrack::state(bool full_state)
diskstream.
*/
- _diskstream->id().print (buf);
+ _diskstream->id().print (buf, sizeof (buf));
root.add_property ("diskstream-id", buf);
+ root.add_child_nocopy (_rec_enable_control.get_state());
+
return root;
}