aboutsummaryrefslogtreecommitdiffstats
path: root/src/engine/JackDriver.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2007-02-25 06:08:54 +0000
committerDavid Robillard <d@drobilla.net>2007-02-25 06:08:54 +0000
commitd288ce4b8180e4c79f61bed85f0fa5d4cd36acc3 (patch)
treecc3ce435309750f3539efade34aa2655271e79ed /src/engine/JackDriver.cpp
parent9d657891ea68ab979bb8c1877bfea656db0bdb1e (diff)
downloadmachina-d288ce4b8180e4c79f61bed85f0fa5d4cd36acc3.tar.gz
machina-d288ce4b8180e4c79f61bed85f0fa5d4cd36acc3.tar.bz2
machina-d288ce4b8180e4c79f61bed85f0fa5d4cd36acc3.zip
Command line app loads again.
Loading fixes, works now (except init is messed up). git-svn-id: http://svn.drobilla.net/lad/machina@339 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/engine/JackDriver.cpp')
-rw-r--r--src/engine/JackDriver.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/engine/JackDriver.cpp b/src/engine/JackDriver.cpp
index 1056820..a52cd91 100644
--- a/src/engine/JackDriver.cpp
+++ b/src/engine/JackDriver.cpp
@@ -25,13 +25,16 @@ using namespace Raul;
namespace Machina {
-JackDriver::JackDriver()
- : _input_port(NULL)
+JackDriver::JackDriver(SharedPtr<Machine> machine)
+ : _machine(machine)
+ , _input_port(NULL)
, _output_port(NULL)
, _cycle_time(1/48000.0, 120.0)
, _bpm(120.0)
, _quantization(120.0)
{
+ if (!_machine)
+ _machine = SharedPtr<Machine>(new Machine());
}
@@ -59,6 +62,8 @@ JackDriver::attach(const std::string& client_name)
if (!_output_port)
std::cerr << "WARNING: Failed to create MIDI output port." << std::endl;
+
+ _machine->activate();
}
}
@@ -66,6 +71,8 @@ JackDriver::attach(const std::string& client_name)
void
JackDriver::detach()
{
+ _machine->deactivate();
+
if (_input_port) {
jack_port_unregister(jack_client(), _input_port);
_input_port = NULL;