pub const EventType = enum(u32) { vblank = 1, page_flip_complete = 2, crtc_sequence = 3, }; pub const VBlankEvent = extern struct { user_data: u64, tv_sec: u32, tv_usec: u32, sequence: u32, crtc_id: u32, }; pub const CrtcSequenceEvent = extern struct { user_data: u64, time_ns: i64, sequence: u64, }; pub const EventPayload = extern union { vblank: VBlankEvent, crtc_sequence: CrtcSequenceEvent, }; pub const Event = extern struct { type: EventType, length: u32, payload: EventPayload, };