AuElementNotifyEvent3nas
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
-
AuTrueif the event came from aSendEventprotocol 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
AuElementAllto indicate the flow.
- kind
-
The kind of notify event. This will be one of these constants:
AuElementNotifyKindLowWater,AuElementNotifyKindHighWater, orAuElementNotifyKindState.
- prev_state
-
The previous state of the element indexed by element_num. This will be one of these constants:
AuStateStop,AuStateStart, orAuStatePause.
- cur_state
-
The current state of the element indexed by element_num. This will be one of these constants:
AuStateStop,AuStateStart, orAuStatePause.
- reason
-
The reason for the notify event. This will be one of these constants:
AuReasonUser,AuReasonUnderrun,AuReasonOverrun,AuReasonEOF,AuReasonWatermark, orAuReasonHardware.
- 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.
Overview
ElementNotify events are sent to client applications to notify them of a watermark condition or state change. If kind is AuElementNotifyKindLowWater, the ImportClient element 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 triggering the event. Reguardless of kind, prev_state and cur_state contain the old and new states and reason contains the reason for the event.
Releases
14 releases since Debian 2.1 (Slink); the text changed 6 times.