25 lines
572 B
C
25 lines
572 B
C
#ifndef DEVICE_H
|
|
#define DEVICE_H
|
|
|
|
#include <stdlib.h>
|
|
#include <dlfcn.h>
|
|
|
|
#include "driver_interface.h"
|
|
|
|
#include "utils/array.h"
|
|
|
|
typedef struct DEVICE device_t;
|
|
|
|
// Device layer
|
|
void device_init();
|
|
array_t* device_get_array();
|
|
|
|
// Handling a single device
|
|
device_t* device_register(void* driver, void* handle);
|
|
char* device_get_image(device_t* device);
|
|
char* device_get_name(device_t* device);
|
|
device_capacity_t device_get_capacity(device_t* device);
|
|
char* device_get_manufacturer(device_t* device);
|
|
int device_mouse_get(device_t* device, struct MOUSE* output);
|
|
|
|
#endif |