AuAnyEvent(3)
π AuAnyEvent β the manual page, but make it make sense π
okay so bestie, welcome to AuAnyEvent(3), straight out of the Library Functions Manual β¨ this is the little generic-event baddie of the Network Audio System, and honestly? she's the blueprint. every other event structure is out here copying her homework. let's get into it π«Ά
πΈ NAME πΈ
AuAnyEvent β any event structure π
like... any event. the it-girl of event structs. the one who shows up to every party because she contains the stuff literally every event type has in common π
π STRUCTURES π
first things first, you gotta pull in the header:
#include <audio/audiolib.h>
then there's this union situation, AuEvent, where auany is just one of the many flavors chilling inside it (there's more, but they're not this page's business):
typedef union _AuEvent
{
. . .
AuAnyEvent auany;
. . .
}AuEvent;
and here's the actual star of the show, the struct herself:
typedef struct _AuAnyEvent
{
int type;
AuUint32 serial;
AuBool send_event;
AuServer *server;
AuTime time;
AuID id;
}AuAnyEvent;
look at her. six little fields. iconic. no notes π
β¨ MEMBERS β¨
okay now the gossip on every single member, no skipping, we go through all of them:
typeβ the event type, aka what kind of event this even is. the event types that are currently defined areAuEventTypeElementNotify,AuEventTypeGrabNotify, andAuEventTypeMonitorNotify. that's the whole roster rn πserialβ the serial ID of the event. plot twist: it's expanded from the 16 bit value the server actually sent, so she's been through a glow-up on the way over β¨send_eventβ it'sAuTrueif the event came from aSendEventprotocol request. so basically, "did someone hand-deliver this? yes ma'am" πserverβ the connection to the audio server that the event was read from. this is the phone line the tea came in on βοΈtimeβ the server time in milliseconds for when the event was generated. timestamps, bestie. everything has receipts β°idβ the ID of the source of the event. who sent it? now you know π
π DESCRIPTION π
AuAnyEvent is a generic event structure containing members that are common to all event types.
that's it. that's the whole vibe. she's the base, the shared DNA, the group chat everyone's in. if you know her, you know a little bit about every event that could ever slide into your program π
π¦ SEE ALSO π¦
go read these too, they're all in the same friend group:
AuElementNotifyEventAuMonitorNotifyEventAuGrabNotifyEventAuErrorEventaudiolibβ Network Audio System C Language Interface
π friendly reminder bestie: this page isaudiolib - events, version1.9.4, and it answers to the nameAuAnyEvent(3). now go forth and handle your events, you absolute main character π πβ¨
π¦ where this page comes from
- debian bookworm: libaudio-dev 1.9.4-7
- debian trixie: libaudio-dev 1.9.4-9
- ubuntu jammy: libaudio-dev 1.9.4-7build1
- ubuntu noble: libaudio-dev 1.9.4-8
- ubuntu questing: libaudio-dev 1.9.4-9
- ubuntu resolute: libaudio-dev 1.9.4-9.2
- ubuntu stonking: libaudio-dev 1.9.4-9.2
- copyright 1994 Steven King
- Copyright 1993 Network Computing Devices, Inc
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms