summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2015-12-16 18:17:38 +0100
committerRobin Gareus <robin@gareus.org>2015-12-16 18:17:38 +0100
commit2f86d1b7dd6b0caf33c8f9879b3d8fe2d324629f (patch)
tree2da68b9e07deb309dc888346baaedbd0daabd7e4 /libs
parent13d704b25d51a79344d776d859829cc06ffea322 (diff)
properly namespace hacked OSC callbacks, add some notes.
Diffstat (limited to 'libs')
-rw-r--r--libs/surfaces/osc/osc.cc49
1 files changed, 29 insertions, 20 deletions
diff --git a/libs/surfaces/osc/osc.cc b/libs/surfaces/osc/osc.cc
index f29d7aafe7..13261feffa 100644
--- a/libs/surfaces/osc/osc.cc
+++ b/libs/surfaces/osc/osc.cc
@@ -349,30 +349,39 @@ OSC::register_callbacks()
REGISTER_CALLBACK (serv, "/ardour/toggle_punch_out", "", toggle_punch_out);
REGISTER_CALLBACK (serv, "/ardour/rec_enable_toggle", "", rec_enable_toggle);
REGISTER_CALLBACK (serv, "/ardour/toggle_all_rec_enables", "", toggle_all_rec_enables);
-
+
/*
* NOTE: these messages are provided for (arguably broken) apps
* that MUST send float args ( TouchOSC and Lemur ).
* Normally these ardour transport messages don't require an argument,
- * so we're providing redundant calls with vestigial "float" args.
- */
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_loop_toggle", "f", loop_toggle);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_add_marker", "f", add_marker);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_goto_start", "f", goto_start);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_goto_end", "f", goto_end);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_rewind", "f", rewind);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_ffwd", "f", ffwd);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_transport_stop", "f", transport_stop);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_transport_play", "f", transport_play);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_save_state", "f", save_state);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_prev_marker", "f", prev_marker);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_next_marker", "f", next_marker);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_undo", "f", undo);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_redo", "f", redo);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_toggle_punch_in", "f", toggle_punch_in);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_toggle_punch_out", "f", toggle_punch_out);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_rec_enable_toggle", "f", rec_enable_toggle);
- REGISTER_CALLBACK (serv, "/ardour/unused_argument_toggle_all_rec_enables", "f", toggle_all_rec_enables);
+ * so we're providing redundant calls with vestigial "float" args.
+ *
+ * Is it really useful to ignore the parameter?
+ * http://hexler.net/docs/touchosc-controls-reference suggests that
+ * push buttons do send 0,1. We will have to provide semantic equivalents
+ * rather than simply ignore the parameter.
+ * e.g push & release the button will send
+ * .../undo f 1
+ * .../undo f 0
+ * resulting in two undos.
+ */
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/loop_toggle", "f", loop_toggle);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/add_marker", "f", add_marker);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/goto_start", "f", goto_start);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/goto_end", "f", goto_end);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/rewind", "f", rewind);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/ffwd", "f", ffwd);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/transport_stop", "f", transport_stop);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/transport_play", "f", transport_play);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/save_state", "f", save_state);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/prev_marker", "f", prev_marker);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/next_marker", "f", next_marker);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/undo", "f", undo);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/redo", "f", redo);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/toggle_punch_in", "f", toggle_punch_in);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/toggle_punch_out", "f", toggle_punch_out);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/rec_enable_toggle", "f", rec_enable_toggle);
+ REGISTER_CALLBACK (serv, "/ardour/unused_argument/toggle_all_rec_enables", "f", toggle_all_rec_enables);
REGISTER_CALLBACK (serv, "/ardour/routes/mute", "ii", route_mute);
REGISTER_CALLBACK (serv, "/ardour/routes/solo", "ii", route_solo);