summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/midi_model.h
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2019-08-29 17:57:22 +0200
committerRobin Gareus <robin@gareus.org>2019-08-29 17:57:22 +0200
commit08644d8f2a35bfdd7d324bcd0c1ad74e5d868283 (patch)
tree6768e7012257447e3b26450229974149ac30b272 /libs/ardour/ardour/midi_model.h
parent7496a856c7785888327146c9934e5db23ba5f155 (diff)
No-OP: move doxygen doc into header files
Diffstat (limited to 'libs/ardour/ardour/midi_model.h')
-rw-r--r--libs/ardour/ardour/midi_model.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/libs/ardour/ardour/midi_model.h b/libs/ardour/ardour/midi_model.h
index 78a8e3189d..90375754e9 100644
--- a/libs/ardour/ardour/midi_model.h
+++ b/libs/ardour/ardour/midi_model.h
@@ -254,11 +254,33 @@ public:
PatchChangePtr unmarshal_patch_change (XMLNode *);
};
+ /** Start a new NoteDiff command.
+ *
+ * This has no side-effects on the model or Session, the returned command
+ * can be held on to for as long as the caller wishes, or discarded without
+ * formality, until apply_command is called and ownership is taken.
+ */
MidiModel::NoteDiffCommand* new_note_diff_command (const std::string& name = "midi edit");
+ /** Start a new SysExDiff command */
MidiModel::SysExDiffCommand* new_sysex_diff_command (const std::string& name = "midi edit");
+
+ /** Start a new PatchChangeDiff command */
MidiModel::PatchChangeDiffCommand* new_patch_change_diff_command (const std::string& name = "midi edit");
+
+ /** Apply a command.
+ *
+ * Ownership of cmd is taken, it must not be deleted by the caller.
+ * The command will constitute one item on the undo stack.
+ */
void apply_command (Session& session, Command* cmd);
+
void apply_command (Session* session, Command* cmd) { if (session) { apply_command (*session, cmd); } }
+
+ /** Apply a command as part of a larger reversible transaction
+ *
+ * Ownership of cmd is taken, it must not be deleted by the caller.
+ * The command will constitute one item on the undo stack.
+ */
void apply_command_as_subcommand (Session& session, Command* cmd);
bool sync_to_source (const Glib::Threads::Mutex::Lock& source_lock);