summaryrefslogtreecommitdiff
path: root/src/screen/drm/event.zig
blob: 57bbb235c37e597190373d29c18b10b69761405c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
pub const Kind = 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 {
	kind: Kind,
	length: u32,
	payload: EventPayload,
};