Updated driver interface

This commit is contained in:
2023-09-28 14:43:51 +02:00
parent 84735a86f0
commit de3167d140
2 changed files with 72 additions and 2 deletions
+36
View File
@@ -0,0 +1,36 @@
#ifndef DRIVER_INTERFACE_H
#define DRIVER_INTERFACE_H
enum device_capacity_t
{
DEVICE_CAPACITY_MOUSE,
DEVICE_CAPACITY_WIRELESS,
};
void driver_init(); // Initialization
uint32_t driver_getkey(); // Calls to this function must return USB keys that this driver registers, until 0
device_capacity_t driver_get_capacity(void* handle); // Returns device capacity (see above)
char* driver_get_name(void* handle); // Returns peripheral name
char* driver_get_image(void* handle); // Returns peripheral image
/* Mouse drivers */
struct MOUSE_DPI_LEVELS
{
unsigned int max_level_count;
unsigned int level_count;
unsigned int level_current;
bool led_available;
bool xy_available;
struct MOUSE_DPI_LEVEL
{
unsigned int dpi_x;
unsigned int dpi_y;
unsigned char r;
unsigned char g;
unsigned char b;
} level[];
};
struct MOUSE_DPI_LEVELS driver_mouse_dpi_get(void* handle);
#endif