ALgetfd(3dm)ALgetfd(3dm)NAMEALgetfd - (obsolete) get the file descriptor for an audio port
SYNOPSIS
#include <dmedia/audio.h>
int ALgetfd(ALport port)
PARAMETER
port expects the ALport structure whose file descriptor you desire.
This structure is the returned value of an ALopenport(3dm) call.
DESCRIPTIONALgetfd is obsolete and is provided for backward compatibility. The
preferred function is alGetFD(3dm).
ALgetfd() returns a file descriptor that you can use to construct the
arguments to a select(2) or poll(2) call. These calls are used when you
want to give up control of the CPU (letting other processes use the CPU)
until the device fills/empties the audio port buffer past the fillpoint.
At that time, select(2) and poll(2) return, and your code can continue
processing the audio ports. If the device has already filled/emptied the
audio port buffer past the fillpoint when you make the call, control
returns to your program immediately.
When using select(2), an input port's file descriptor is used in a read
fdset and an output port's file descriptor is used in a write fdset.
When using poll(2), an input port's file descriptor is used with the
POLLIN event flag and an output port's file descriptor is used with a
POLLOUT event flag.
Several AL functions implicitly change the current fillpoint value.
Therefore, ALsetfillpoint(3dm) must be called immediately before a
select(2) or poll(2) call which uses an audio file descriptor.
ALgetfd(3dm) can fail for the following reason:
AL_BAD_PORT port is either invalid or null.
DIAGNOSTICS
Upon successful completion, ALgetfd(3dm) returns a valid file descriptor.
Otherwise, ALgetfd(3dm) returns -1 and sets an error number which can be
retrieved with oserror(3C).
SEE ALSOALsetfillpoint(3dm), ALgetfillpoint(3dm), ALopenport(3dm), select(2),
poll(2), oserror(3C)
Page 1