2015-07-07 09:55:32 +00:00
|
|
|
/*
|
|
|
|
* Copyright (c) 2015 Andrew Kelley
|
|
|
|
*
|
|
|
|
* This file is part of libsoundio, which is MIT licensed.
|
|
|
|
* See http://opensource.org/licenses/MIT
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef SOUNDIO_ALSA_HPP
|
|
|
|
#define SOUNDIO_ALSA_HPP
|
|
|
|
|
2015-07-27 23:37:45 +00:00
|
|
|
#include "os.hpp"
|
|
|
|
#include "atomics.hpp"
|
|
|
|
|
2015-07-13 16:17:20 +00:00
|
|
|
int soundio_alsa_init(struct SoundIoPrivate *si);
|
2015-07-07 09:55:32 +00:00
|
|
|
|
2015-07-27 23:37:45 +00:00
|
|
|
struct SoundIoDeviceAlsa {
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
struct SoundIoAlsa {
|
|
|
|
SoundIoOsMutex *mutex;
|
|
|
|
SoundIoOsCond *cond;
|
2015-07-07 09:55:32 +00:00
|
|
|
|
2015-07-27 23:37:45 +00:00
|
|
|
struct SoundIoOsThread *thread;
|
|
|
|
atomic_flag abort_flag;
|
|
|
|
int notify_fd;
|
|
|
|
int notify_wd;
|
|
|
|
atomic_bool have_devices_flag;
|
|
|
|
int notify_pipe_fd[2];
|
|
|
|
|
|
|
|
// this one is ready to be read with flush_events. protected by mutex
|
|
|
|
struct SoundIoDevicesInfo *ready_devices_info;
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|