Added snd_pcm_nonblock_mode...

This commit is contained in:
Jaroslav Kysela 1999-11-07 16:43:13 +00:00
parent 85e2cde036
commit 8abf9370b5
2 changed files with 18 additions and 0 deletions

View file

@ -24,6 +24,7 @@ int snd_pcm_open(snd_pcm_t **handle, int card, int device, int mode);
int snd_pcm_open_subdevice(snd_pcm_t **handle, int card, int device, int subdevice, int mode);
int snd_pcm_close(snd_pcm_t *handle);
int snd_pcm_file_descriptor(snd_pcm_t *handle);
int snd_pcm_nonblock_mode(snd_pcm_t *handle, int nonblock);
int snd_pcm_info(snd_pcm_t *handle, snd_pcm_info_t * info);
int snd_pcm_channel_info(snd_pcm_t *handle, snd_pcm_channel_info_t * info);
int snd_pcm_channel_params(snd_pcm_t *handle, snd_pcm_channel_params_t * params);

View file

@ -159,6 +159,23 @@ int snd_pcm_file_descriptor(snd_pcm_t *pcm)
return pcm->fd;
}
int snd_pcm_nonblock_mode(snd_pcm_t *pcm, int nonblock)
{
long flags;
if (!pcm)
return -EINVAL;
if ((flags = fcntl(pcm->fd, F_GETFL)) < 0)
return -errno;
if (nonblock)
flags |= O_NONBLOCK;
else
flags &= ~O_NONBLOCK;
if (fcntl(pcm->fd, F_SETFL, flags) < 0)
return -errno;
return 0;
}
int snd_pcm_info(snd_pcm_t *pcm, snd_pcm_info_t * info)
{
if (!pcm || !info)