PatchworkOS  3984a1d
A non-POSIX operating system.
Loading...
Searching...
No Matches
mouse.h File Reference
#include <kernel/fs/devfs.h>
#include <kernel/sched/wait.h>
#include <kernel/sync/lock.h>
#include <kernel/utils/fifo.h>
#include <stdint.h>
#include <sys/kbd.h>
#include <sys/proc.h>
Include dependency graph for mouse.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  mouse_client_t
 Keyboard event client structure. More...
 
struct  mouse_t
 Mouse structure. More...
 

Macros

#define MOUSE_CLIENT_BUFFER_SIZE   512
 Size of the mouse client buffer.
 

Functions

mouse_tmouse_new (const char *name)
 Allocate and initialize a mouse structure.
 
void mouse_free (mouse_t *mouse)
 Free and deinitialize a mouse structure.
 
void mouse_press (mouse_t *mouse, uint32_t button)
 Push a mouse button press event to the mouse event queue.
 
void mouse_release (mouse_t *mouse, uint32_t button)
 Push a mouse button release event to the mouse event queue.
 
void mouse_move_x (mouse_t *mouse, int64_t delta)
 Push a mouse movement in the X direction to the mouse event queue.
 
void mouse_move_y (mouse_t *mouse, int64_t delta)
 Push a mouse movement in the Y direction to the mouse event queue.
 
void mouse_scroll (mouse_t *mouse, int64_t delta)
 Push a mouse scroll event to the mouse event queue.