2018-12-21 03:13:22 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#ifdef HAVE_PULSE
|
|
|
|
|
#include <pulse/simple.h>
|
|
|
|
|
#include "Emu/Audio/AudioBackend.h"
|
|
|
|
|
|
|
|
|
|
class PulseBackend : public AudioBackend
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
PulseBackend();
|
|
|
|
|
virtual ~PulseBackend() override;
|
|
|
|
|
|
2019-05-11 10:14:56 +02:00
|
|
|
virtual const char* GetName() const override { return "Pulse"; }
|
2018-12-21 03:13:22 +01:00
|
|
|
|
|
|
|
|
static const u32 capabilities = 0;
|
2019-05-11 10:14:56 +02:00
|
|
|
virtual u32 GetCapabilities() const override { return capabilities; }
|
2018-12-21 03:13:22 +01:00
|
|
|
|
|
|
|
|
virtual void Open(u32) override;
|
|
|
|
|
virtual void Close() override;
|
|
|
|
|
|
|
|
|
|
virtual bool AddData(const void* src, u32 num_samples) override;
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
pa_simple *connection = nullptr;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif
|