client_display_functions.zig (3485B)
1 extern fn wl_display_connect(name: ?[*:0]const u8) ?*Display; 2 pub inline fn connect(name: ?[*:0]const u8) error{ConnectFailed}!*Display { 3 return wl_display_connect(name) orelse return error.ConnectFailed; 4 } 5 6 extern fn wl_display_connect_to_fd(fd: c_int) ?*Display; 7 pub inline fn connectToFd(fd: c_int) error{ConnectFailed}!*Display { 8 return wl_display_connect_to_fd(fd) orelse return error.ConnectFailed; 9 } 10 11 extern fn wl_display_disconnect(display: *Display) void; 12 pub const disconnect = wl_display_disconnect; 13 14 extern fn wl_display_get_fd(display: *Display) c_int; 15 pub const getFd = wl_display_get_fd; 16 17 extern fn wl_display_dispatch(display: *Display) c_int; 18 pub inline fn dispatch(display: *Display) posix.E { 19 return posix.errno(wl_display_dispatch(display)); 20 } 21 22 extern fn wl_display_dispatch_queue(display: *Display, queue: *client.wl.EventQueue) c_int; 23 pub inline fn dispatchQueue(display: *Display, queue: *client.wl.EventQueue) posix.E { 24 return posix.errno(wl_display_dispatch_queue(display, queue)); 25 } 26 27 extern fn wl_display_dispatch_pending(display: *Display) c_int; 28 pub inline fn dispatchPending(display: *Display) posix.E { 29 return posix.errno(wl_display_dispatch_pending(display)); 30 } 31 32 extern fn wl_display_dispatch_queue_pending(display: *Display, queue: *client.wl.EventQueue) c_int; 33 pub inline fn dispatchQueuePending(display: *Display, queue: *client.wl.EventQueue) posix.E { 34 return posix.errno(wl_display_dispatch_queue_pending(display, queue)); 35 } 36 37 extern fn wl_display_roundtrip(display: *Display) c_int; 38 pub inline fn roundtrip(display: *Display) posix.E { 39 return posix.errno(wl_display_roundtrip(display)); 40 } 41 42 extern fn wl_display_roundtrip_queue(display: *Display, queue: *client.wl.EventQueue) c_int; 43 pub inline fn roundtripQueue(display: *Display, queue: *client.wl.EventQueue) posix.E { 44 return posix.errno(wl_display_roundtrip_queue(display, queue)); 45 } 46 47 extern fn wl_display_flush(display: *Display) c_int; 48 pub inline fn flush(display: *Display) posix.E { 49 return posix.errno(wl_display_flush(display)); 50 } 51 52 extern fn wl_display_create_queue(display: *Display) ?*client.wl.EventQueue; 53 pub inline fn createQueue(display: *Display) error{OutOfMemory}!*client.wl.EventQueue { 54 return wl_display_create_queue(display) orelse error.OutOfMemory; 55 } 56 57 extern fn wl_display_get_error(display: *Display) c_int; 58 pub const getError = wl_display_get_error; 59 60 extern fn wl_display_prepare_read_queue(display: *Display, queue: *client.wl.EventQueue) c_int; 61 /// Succeeds if the queue is empty and returns true. 62 /// Fails and returns false if the queue was not empty. 63 pub inline fn prepareReadQueue(display: *Display, queue: *client.wl.EventQueue) bool { 64 switch (wl_display_prepare_read_queue(display, queue)) { 65 0 => return true, 66 -1 => return false, 67 else => unreachable, 68 } 69 } 70 71 extern fn wl_display_prepare_read(display: *Display) c_int; 72 /// Succeeds if the queue is empty and returns true. 73 /// Fails and returns false if the queue was not empty. 74 pub inline fn prepareRead(display: *Display) bool { 75 switch (wl_display_prepare_read(display)) { 76 0 => return true, 77 -1 => return false, 78 else => unreachable, 79 } 80 } 81 82 extern fn wl_display_cancel_read(display: *Display) void; 83 pub const cancelRead = wl_display_cancel_read; 84 85 extern fn wl_display_read_events(display: *Display) c_int; 86 pub inline fn readEvents(display: *Display) posix.E { 87 return posix.errno(wl_display_read_events(display)); 88 }