summaryrefslogtreecommitdiff
path: root/libs/backends/dummy
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2014-05-01 09:14:25 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2014-05-01 09:14:25 -0400
commit66559cd795eb27c389e2dd2d973ec6b280ac2763 (patch)
treecd7ff769badf27c7842bdfe2e97682e7bc9cb922 /libs/backends/dummy
parent6544df039bf95899204c05c665bfec4d0d86e85b (diff)
Add AudioBackend::info() method to retrieve AudioBackendInfo object
Goal is to be able to call AudioBackendInfo::already_configured() from the right place.
Diffstat (limited to 'libs/backends/dummy')
-rw-r--r--libs/backends/dummy/dummy_audiobackend.cc27
-rw-r--r--libs/backends/dummy/dummy_audiobackend.h2
2 files changed, 17 insertions, 12 deletions
diff --git a/libs/backends/dummy/dummy_audiobackend.cc b/libs/backends/dummy/dummy_audiobackend.cc
index f0eeb8db12..7a3aa78513 100644
--- a/libs/backends/dummy/dummy_audiobackend.cc
+++ b/libs/backends/dummy/dummy_audiobackend.cc
@@ -29,8 +29,8 @@ using namespace ARDOUR;
static std::string s_instance_name;
size_t DummyAudioBackend::_max_buffer_size = 8192;
-DummyAudioBackend::DummyAudioBackend (AudioEngine& e)
- : AudioBackend (e)
+DummyAudioBackend::DummyAudioBackend (AudioEngine& e, AudioBackendInfo& info)
+ : AudioBackend (e, info)
, _running (false)
, _freewheeling (false)
, _samplerate (48000)
@@ -1017,11 +1017,24 @@ DummyAudioBackend::main_process_thread ()
static boost::shared_ptr<DummyAudioBackend> _instance;
+static boost::shared_ptr<AudioBackend> backend_factory (AudioEngine& e);
+static int instantiate (const std::string& arg1, const std::string& /* arg2 */);
+static int deinstantiate ();
+static bool already_configured ();
+
+static ARDOUR::AudioBackendInfo _descriptor = {
+ "Dummy",
+ instantiate,
+ deinstantiate,
+ backend_factory,
+ already_configured,
+};
+
static boost::shared_ptr<AudioBackend>
backend_factory (AudioEngine& e)
{
if (!_instance) {
- _instance.reset (new DummyAudioBackend (e));
+ _instance.reset (new DummyAudioBackend (e, _descriptor));
}
return _instance;
}
@@ -1046,14 +1059,6 @@ already_configured ()
return false;
}
-static ARDOUR::AudioBackendInfo _descriptor = {
- "Dummy",
- instantiate,
- deinstantiate,
- backend_factory,
- already_configured,
-};
-
extern "C" ARDOURBACKEND_API ARDOUR::AudioBackendInfo* descriptor ()
{
return &_descriptor;
diff --git a/libs/backends/dummy/dummy_audiobackend.h b/libs/backends/dummy/dummy_audiobackend.h
index 18d14cb867..7f97dd17f9 100644
--- a/libs/backends/dummy/dummy_audiobackend.h
+++ b/libs/backends/dummy/dummy_audiobackend.h
@@ -142,7 +142,7 @@ class DummyMidiPort : public DummyPort {
class DummyAudioBackend : public AudioBackend {
public:
- DummyAudioBackend (AudioEngine& e);
+ DummyAudioBackend (AudioEngine& e, AudioBackendInfo& info);
~DummyAudioBackend ();
/* AUDIOBACKEND API */