snes9x/gtk/src/gtk_sound_driver_pulse.h

38 lines
1.0 KiB
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;
};
#endif /* __GTK_SOUND_DRIVER_PULSE_H */