aboutsummaryrefslogtreecommitdiff
path: root/lib/std/os/uefi/protocols/simple_pointer_protocol.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2019-09-26 01:54:45 -0400
committerGitHub <noreply@github.com>2019-09-26 01:54:45 -0400
commit68bb3945708c43109c48bda3664176307d45b62c (patch)
treeafb9731e10cef9d192560b52cd9ae2cf179775c4 /lib/std/os/uefi/protocols/simple_pointer_protocol.zig
parent6128bc728d1e1024a178c16c2149f5b1a167a013 (diff)
parent4637e8f9699af9c3c6cf4df50ef5bb67c7a318a4 (diff)
downloadzig-68bb3945708c43109c48bda3664176307d45b62c.tar.gz
zig-68bb3945708c43109c48bda3664176307d45b62c.zip
Merge pull request #3315 from ziglang/mv-std-lib
Move std/ to lib/std/
Diffstat (limited to 'lib/std/os/uefi/protocols/simple_pointer_protocol.zig')
-rw-r--r--lib/std/os/uefi/protocols/simple_pointer_protocol.zig44
1 files changed, 44 insertions, 0 deletions
diff --git a/lib/std/os/uefi/protocols/simple_pointer_protocol.zig b/lib/std/os/uefi/protocols/simple_pointer_protocol.zig
new file mode 100644
index 0000000000..369bc76aaa
--- /dev/null
+++ b/lib/std/os/uefi/protocols/simple_pointer_protocol.zig
@@ -0,0 +1,44 @@
+const uefi = @import("std").os.uefi;
+const Event = uefi.Event;
+const Guid = uefi.Guid;
+
+/// UEFI Specification, Version 2.8, 12.5
+pub const SimplePointerProtocol = struct {
+ _reset: extern fn (*const SimplePointerProtocol, bool) usize,
+ _get_state: extern fn (*const SimplePointerProtocol, *SimplePointerState) usize,
+ wait_for_input: Event,
+ mode: *SimplePointerMode,
+
+ pub fn reset(self: *const SimplePointerProtocol, verify: bool) usize {
+ return self._reset(self, verify);
+ }
+
+ pub fn getState(self: *const SimplePointerProtocol, state: *SimplePointerState) usize {
+ return self._get_state(self, state);
+ }
+
+ pub const guid align(8) = Guid{
+ .time_low = 0x31878c87,
+ .time_mid = 0x0b75,
+ .time_high_and_version = 0x11d5,
+ .clock_seq_high_and_reserved = 0x9a,
+ .clock_seq_low = 0x4f,
+ .node = [_]u8{ 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d },
+ };
+};
+
+pub const SimplePointerMode = struct {
+ resolution_x: u64,
+ resolution_y: u64,
+ resolution_z: u64,
+ left_button: bool,
+ right_button: bool,
+};
+
+pub const SimplePointerState = struct {
+ relative_movement_x: i32 = undefined,
+ relative_movement_y: i32 = undefined,
+ relative_movement_z: i32 = undefined,
+ left_button: bool = undefined,
+ right_button: bool = undefined,
+};