From 3f4375a14218796cbd7bfff1c8cfff0f7bb1f6df Mon Sep 17 00:00:00 2001 From: Nathan Reiner Date: Sun, 2 Feb 2025 19:58:26 +0100 Subject: change .editorconfig --- src/screen/drm/card.zig | 130 ++++++++++++++++++++++++------------------------ 1 file changed, 65 insertions(+), 65 deletions(-) (limited to 'src/screen/drm/card.zig') diff --git a/src/screen/drm/card.zig b/src/screen/drm/card.zig index 6147cf2..f1674bb 100644 --- a/src/screen/drm/card.zig +++ b/src/screen/drm/card.zig @@ -12,69 +12,69 @@ const Event = @import("event.zig").Event; pub const Card = struct { - const Self = @This(); - - file: std.fs.File, - allocator: std.mem.Allocator, - - pub fn open(name: []const u8, allocator: std.mem.Allocator) !Self { - var dri_dir = try std.fs.openDirAbsolute("/dev/dri", .{}); - defer dri_dir.close(); - - return .{ - .file = try dri_dir.openFile(name, .{ - .mode = .read_write, - .lock_nonblocking = true, - }), - - .allocator = allocator, - }; - } - - pub fn close(self: *Card) void { - self.file.close(); - } - - pub fn is_kms(self: *Card) !bool { - const raw_info = Resources.raw_without_ids(self); - return raw_info.count_crtcs > 0 and raw_info.count_connectors > 0 and raw_info.count_encoders > 0; - } - - pub fn resources(self: *Card) !Resources { - return Resources.init(self); - } - - pub fn connector(self: *Card, id: u32) !Connector { - return Connector.init(self, id); - } - - pub fn encoder(self: *Card, id: u32) !Encoder { - return Encoder.init(self, id); - } - - pub fn crtc(self: *Card, id: u32) !Crtc { - return Crtc.init(self, id); - } - - pub fn create_double_buffer(self: *Card, width: u32, height: u32, bpp: u32) !DoubleBuffer { - return DoubleBuffer.init(self, width, height, bpp); - } - - pub fn poll_event(self: *Card, timeout: i32) !?Event { - var pollfd = os.pollfd { - .fd = self.file.handle, - .events = os.POLL.IN, - .revents = 0 - }; - - try cerror.from_usize(os.poll(@ptrCast(&pollfd), 1, timeout)); - - if ((pollfd.revents & os.POLL.IN) != 0) { - var event = std.mem.zeroes(Event); - try cerror.from_usize(os.read(self.file.handle, @ptrCast(&event), @sizeOf(Event))); - return event; - } - - return null; - } + const Self = @This(); + + file: std.fs.File, + allocator: std.mem.Allocator, + + pub fn open(name: []const u8, allocator: std.mem.Allocator) !Self { + var dri_dir = try std.fs.openDirAbsolute("/dev/dri", .{}); + defer dri_dir.close(); + + return .{ + .file = try dri_dir.openFile(name, .{ + .mode = .read_write, + .lock_nonblocking = true, + }), + + .allocator = allocator, + }; + } + + pub fn close(self: *Card) void { + self.file.close(); + } + + pub fn is_kms(self: *Card) !bool { + const raw_info = Resources.raw_without_ids(self); + return raw_info.count_crtcs > 0 and raw_info.count_connectors > 0 and raw_info.count_encoders > 0; + } + + pub fn resources(self: *Card) !Resources { + return Resources.init(self); + } + + pub fn connector(self: *Card, id: u32) !Connector { + return Connector.init(self, id); + } + + pub fn encoder(self: *Card, id: u32) !Encoder { + return Encoder.init(self, id); + } + + pub fn crtc(self: *Card, id: u32) !Crtc { + return Crtc.init(self, id); + } + + pub fn create_double_buffer(self: *Card, width: u32, height: u32, bpp: u32) !DoubleBuffer { + return DoubleBuffer.init(self, width, height, bpp); + } + + pub fn poll_event(self: *Card, timeout: i32) !?Event { + var pollfd = os.pollfd { + .fd = self.file.handle, + .events = os.POLL.IN, + .revents = 0 + }; + + try cerror.from_usize(os.poll(@ptrCast(&pollfd), 1, timeout)); + + if ((pollfd.revents & os.POLL.IN) != 0) { + var event = std.mem.zeroes(Event); + try cerror.from_usize(os.read(self.file.handle, @ptrCast(&event), @sizeOf(Event))); + return event; + } + + return null; + } }; -- cgit v1.2.3-70-g09d2