summaryrefslogtreecommitdiff
path: root/libs/backends/jack/jack_api.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/backends/jack/jack_api.cc')
-rw-r--r--libs/backends/jack/jack_api.cc23
1 files changed, 14 insertions, 9 deletions
diff --git a/libs/backends/jack/jack_api.cc b/libs/backends/jack/jack_api.cc
index c8859a1fc9..abf733d0f5 100644
--- a/libs/backends/jack/jack_api.cc
+++ b/libs/backends/jack/jack_api.cc
@@ -25,6 +25,19 @@ using namespace ARDOUR;
static boost::shared_ptr<JACKAudioBackend> backend;
static boost::shared_ptr<JackConnection> jack_connection;
+static boost::shared_ptr<AudioBackend> backend_factory (AudioEngine& ae);
+static int instantiate (const std::string& arg1, const std::string& arg2);
+static int deinstantiate ();
+static bool already_configured ();
+
+static ARDOUR::AudioBackendInfo _descriptor = {
+ "JACK",
+ instantiate,
+ deinstantiate,
+ backend_factory,
+ already_configured,
+};
+
static boost::shared_ptr<AudioBackend>
backend_factory (AudioEngine& ae)
{
@@ -33,7 +46,7 @@ backend_factory (AudioEngine& ae)
}
if (!backend) {
- backend.reset (new JACKAudioBackend (ae, jack_connection));
+ backend.reset (new JACKAudioBackend (ae, _descriptor, jack_connection));
}
return backend;
@@ -66,13 +79,5 @@ already_configured ()
return !JackConnection::in_control ();
}
-static ARDOUR::AudioBackendInfo _descriptor = {
- "JACK",
- instantiate,
- deinstantiate,
- backend_factory,
- already_configured,
-};
-
extern "C" ARDOURBACKEND_API ARDOUR::AudioBackendInfo* descriptor() { return &_descriptor; }