From 2dbd0cd81dff72aea42344188d20f7d7f6d20e1a Mon Sep 17 00:00:00 2001 From: David Robillard Date: Tue, 18 Jul 2006 05:46:24 +0000 Subject: Removed globals (Om.h) git-svn-id: http://svn.drobilla.net/lad/ingen@96 a436a847-0d15-0410-975c-d299462d15a1 --- src/libs/engine/TransportNode.cpp | 41 +++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 21 deletions(-) (limited to 'src/libs/engine/TransportNode.cpp') diff --git a/src/libs/engine/TransportNode.cpp b/src/libs/engine/TransportNode.cpp index 375bd4ea..40f531c9 100644 --- a/src/libs/engine/TransportNode.cpp +++ b/src/libs/engine/TransportNode.cpp @@ -22,56 +22,55 @@ #include "JackAudioDriver.h" #include "Port.h" #include "util.h" -#include "Om.h" -#include "OmApp.h" +//#include "Ingen.h" namespace Om { -TransportNode::TransportNode(const string& path, size_t poly, Patch* parent, samplerate srate, size_t buffer_size) +TransportNode::TransportNode(const string& path, size_t poly, Patch* parent, SampleRate srate, size_t buffer_size) : InternalNode(new Plugin(Plugin::Internal, "Om:TransportNode"), path, 1, parent, srate, buffer_size) { #if 0 _num_ports = 10; _ports.alloc(_num_ports); - OutputPort* spb_port = new OutputPort(this, "Seconds per Beat", 0, 1, + OutputPort* spb_port = new OutputPort(this, "Seconds per Beat", 0, 1, // new PortInfo("Seconds per Beat", CONTROL, OUTPUT, 0, 0, 1), 1); _ports.at(0) = spb_port; - OutputPort* bpb_port = new OutputPort(this, "Beats per Bar", 1, 1, + OutputPort* bpb_port = new OutputPort(this, "Beats per Bar", 1, 1, // new PortInfo("Beats per Bar", CONTROL, OUTPUT, 0, 0, 1), 1); _ports.at(1) = bpb_port; - OutputPort* bar_port = new OutputPort(this, "Bar", 3, 1, + OutputPort* bar_port = new OutputPort(this, "Bar", 3, 1, // new PortInfo("Bar", CONTROL, OUTPUT, 0, 0, 1), buffer_size); _ports.at(2) = bar_port; - OutputPort* beat_port = new OutputPort(this, "Beat", 3, 1, + OutputPort* beat_port = new OutputPort(this, "Beat", 3, 1, // new PortInfo("Beat", CONTROL, OUTPUT, 0, 0, 1), buffer_size); _ports.at(3) = beat_port; - OutputPort* frame_port = new OutputPort(this, "Frame", 3, 1, + OutputPort* frame_port = new OutputPort(this, "Frame", 3, 1, // new PortInfo("Frame", CONTROL, OUTPUT, 0, 0, 1), buffer_size); _ports.at(4) = frame_port; - OutputPort* hour_port = new OutputPort(this, "Hour", 3, 1, + OutputPort* hour_port = new OutputPort(this, "Hour", 3, 1, // new PortInfo("Hour", CONTROL, OUTPUT, 0, 0, 1), buffer_size); _ports.at(5) = hour_port; - OutputPort* minute_port = new OutputPort(this, "Minute", 3, 1, + OutputPort* minute_port = new OutputPort(this, "Minute", 3, 1, // new PortInfo("Minute", CONTROL, OUTPUT, 0, 0, 1), buffer_size); _ports.at(6) = minute_port; - OutputPort* second_port = new OutputPort(this, "Second", 3, 1, + OutputPort* second_port = new OutputPort(this, "Second", 3, 1, // new PortInfo("Second", CONTROL, OUTPUT, 0, 0, 1), buffer_size); _ports.at(7) = second_port; - OutputPort* trg_port = new OutputPort(this, "Beat Tick", 2, 1, + OutputPort* trg_port = new OutputPort(this, "Beat Tick", 2, 1, // new PortInfo("Beat Tick", AUDIO, OUTPUT, 0, 0, 1), buffer_size); _ports.at(8) = trg_port; - OutputPort* bar_trig_port = new OutputPort(this, "Bar Tick", 3, 1, + OutputPort* bar_trig_port = new OutputPort(this, "Bar Tick", 3, 1, // new PortInfo("Bar Tick", AUDIO, OUTPUT, 0, 0, 1), buffer_size); _ports.at(9) = bar_trig_port; #endif @@ -87,8 +86,8 @@ TransportNode::run(size_t nframes) #if 0 // FIXME: this will die horribly with any driver other than jack (in theory) - const jack_position_t* const position = ((JackAudioDriver*)om->audio_driver())->position(); - jack_transport_state_t state = ((JackAudioDriver*)om->audio_driver())->transport_state(); + const jack_position_t* const position = ((JackAudioDriver*)Ingen::instance().audio_driver())->position(); + jack_transport_state_t state = ((JackAudioDriver*)Ingen::instance().audio_driver())->transport_state(); double bpm = position->beats_per_minute; float bpb = position->beats_per_bar; float spb = 60.0 / bpm; @@ -122,12 +121,12 @@ TransportNode::run(size_t nframes) } - ((OutputPort*)m_ports.at(0))->buffer(0)->set(spb, 0, 0); - ((OutputPort*)m_ports.at(1))->buffer(0)->set(bpb, 0, 0); + ((OutputPort*)m_ports.at(0))->buffer(0)->set(spb, 0, 0); + ((OutputPort*)m_ports.at(1))->buffer(0)->set(bpb, 0, 0); // fill the trigger buffers with zeros - ((OutputPort*)m_ports.at(2))->buffer(0)->set(0.0f, 0, nframes - 1); - ((OutputPort*)m_ports.at(3))->buffer(0)->set(0.0f, 0, nframes - 1); + ((OutputPort*)m_ports.at(2))->buffer(0)->set(0.0f, 0, nframes - 1); + ((OutputPort*)m_ports.at(3))->buffer(0)->set(0.0f, 0, nframes - 1); // if the transport is rolling, add triggers at the right frame positions if ((position->valid & JackTransportBBT) && (state == JackTransportRolling)) { @@ -139,9 +138,9 @@ TransportNode::run(size_t nframes) --first_beat_no; } for ( ; first_beat < nframes; first_beat += frames_per_beat) { - ((OutputPort*)m_ports.at(2))->buffer(0)->set(1.0f, size_t(first_beat)); + ((OutputPort*)m_ports.at(2))->buffer(0)->set(1.0f, size_t(first_beat)); if (first_beat_no % int(bpb) == 0) { - ((OutputPort*)m_ports.at(3))->buffer(0)->set(1.0f, size_t(first_beat)); + ((OutputPort*)m_ports.at(3))->buffer(0)->set(1.0f, size_t(first_beat)); ++first_beat_no; } } -- cgit v1.2.1