snes9x/gtk/src/gtk_sound_driver_pulse.h

37 lines
962 B
C
Raw Normal View History

/*****************************************************************************\
Snes9x - Portable Super Nintendo Entertainment System (TM) emulator.
This file is licensed under the Snes9x License.
For further information, consult the LICENSE file in the root directory.
\*****************************************************************************/
2010-09-25 17:46:12 +02:00
#ifndef __GTK_SOUND_DRIVER_PULSE_H
#define __GTK_SOUND_DRIVER_PULSE_H
#include "gtk_sound.h"
#include "gtk_sound_driver.h"
2017-11-23 01:14:49 +01:00
#include "pulse/pulseaudio.h"
2010-09-25 17:46:12 +02:00
class S9xPulseSoundDriver : public S9xSoundDriver
{
public:
S9xPulseSoundDriver();
void init();
void terminate();
bool open_device();
void start();
void stop();
void samples_available();
void lock();
void unlock();
void wait();
2017-11-23 01:14:49 +01:00
pa_threaded_mainloop *mainloop;
pa_context *context;
pa_stream *stream;
2010-09-25 17:46:12 +02:00
private:
int buffer_size;
2010-09-25 17:46:12 +02:00
};
#endif /* __GTK_SOUND_DRIVER_PULSE_H */