AuElementNotifyEvent(3)AuElementNotifyEvent(3)Name
AuElementNotifyEvent - element notify event structure
Structures
#include <audio/audiolib.h>
typedef union _AuEvent
{
. . .
AuElementNotifyEvent auelementnotify;
. . .
}AuEvent;
typedef struct _AuElementNotifyEvent
{
int type;
AuUint32 serial;
AuBool send_event;
AuServer *server;
AuTime time;
AuFlowID flow;
unsigned char element_num;
unsigned char kind;
unsigned char prev_state;
unsigned char cur_state;
unsigned char reason;
AuUint32 num_bytes;
}AuElementNotifyEvent;
Members
type The event type. ElementNotify events are type
AuEventTypeElementNotify.
serial The serial ID of the event expanded from the 16
bit value sent by the server.
send_event
AuTrue if the event came from a SendEvent proto
col request.
server The connection to the audio server that the
event was read from.
time The server time in milliseconds when the event
was generated.
flow The ID of the flow that caused the event.
element_num
The index of the element that caused the event
or AuElementAll to indicate the flow.
kind The kind of notify event. This will be one of
these constants: AuElementNotifyKindLowWater,
audiolib - events 1.2 1
AuElementNotifyEvent(3)AuElementNotifyEvent(3)
AuElementNotifyKindHighWater, or AuElementNoti
fyKindState.
prev_state
The previous state of the element indexed by
element_num. This will be one of these con
stants: AuStateStop, AuStateStart, or AuS
tatePause.
cur_state The current state of the element indexed by ele_
ment_num. This will be one of these constants:
AuStateStop, AuStateStart, or AuStatePause.
reason The reason for the notify event. This will be
one of these constants: AuReasonUser, AuReaso
nUnderrun, AuReasonOverrun, AuReasonEOF, AuRea
sonWatermark, or AuReasonHardware.
num_bytes The number of bytes to send or receive. Only
valid if the the element indexed by element_num
is an ImportClient or ExportClient.
Description
ElementNotify events are sent to client applications to
notify them of a watermark condition or state change. If
kind is AuElementNotifyKindLowWater, the ImportClient ele
ment indexed by element_num in flow is ready to receive
num_bytes of audio data from the client application. If
kind is AuElementNotifyKindHighWater, the ExportClient
element indexed by element_num in flow is ready to send
num_bytes of audio data to the client application. If
kind is AuElementNotifyKindState, the element indexed by
element_num (or flow if element_num is AuElementAll) has
made a state transition from prev_state to cur_state trig
gering the event. Reguardless of kind, prev_state and
cur_state contain the old and new states and reason con
tains the reason for the event.
See Also
AuAnyEvent, AuErrorEvent, AuGrabNotifyEvent, AuMakeSendNo
tifyAction, AuMonitorNotifyEvent.
audiolib - Network Audio System C Language Interface
audiolib - events 1.2 2