aboutsummaryrefslogtreecommitdiff
path: root/jack_transport/jack_transport.c
diff options
context:
space:
mode:
authorTim Blechmann <timblech@users.sourceforge.net>2005-05-05 19:31:39 +0000
committerIOhannes m zmölnig <zmoelnig@iem.at>2015-10-14 15:11:59 +0200
commitccfab7528a3acb2703eabb59e05b10de9a0026c8 (patch)
tree5ec546bfb232cfef1d612e4401948966a6c88f1a /jack_transport/jack_transport.c
parent47761b1ad9fbf6eaca7faaa5fe2c8bbcbdcf4cd6 (diff)
setting jack transport frame
svn path=/trunk/externals/tb/; revision=2903
Diffstat (limited to 'jack_transport/jack_transport.c')
-rw-r--r--jack_transport/jack_transport.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/jack_transport/jack_transport.c b/jack_transport/jack_transport.c
index 053e75b..84b269e 100644
--- a/jack_transport/jack_transport.c
+++ b/jack_transport/jack_transport.c
@@ -92,14 +92,20 @@ static void jack_transport_bang(jack_transport_t * x)
float f;
if (!x->x_jack_client)
return;
-
- jack_transport_query(x->x_jack_client,x->x_pos);
- f = x->x_pos->frame;
+ f = (float)jack_get_current_transport_frame(x->x_jack_client);
outlet_float(x->x_outlet, f);
}
+static void jack_transport_float(jack_transport_t * x, float f)
+{
+ if (!x->x_jack_client)
+ return;
+
+ jack_transport_locate(x->x_jack_client, (jack_nframes_t)f);
+}
+
void jack_transport_setup(void)
{
@@ -112,5 +118,6 @@ void jack_transport_setup(void)
class_addmethod(jack_transport_class, (t_method)jack_transport_stoper,
gensym("stop"),0,0);
class_addbang(jack_transport_class, (t_method)jack_transport_bang);
+ class_addfloat(jack_transport_class, (t_method)jack_transport_float);
}