From 2ca85a2bcdbf5e4b3938b95754d06b96de382bd9 Mon Sep 17 00:00:00 2001 From: Ken Chen Date: Fri, 28 May 2021 17:54:41 +1000 Subject: basic C cli frontend --- src/include/razerdevice.h | 53 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100755 src/include/razerdevice.h (limited to 'src/include/razerdevice.h') diff --git a/src/include/razerdevice.h b/src/include/razerdevice.h new file mode 100755 index 0000000..02dec29 --- /dev/null +++ b/src/include/razerdevice.h @@ -0,0 +1,53 @@ +// +// razerdevice.h +// Razer device query functions +// +// + +#ifndef DRIVER_RAZERDEVICE_H_ +#define DRIVER_RAZERDEVICE_H_ + +#include +#include +#include + +#include "razerkbd_driver.h" +#include "razermouse_driver.h" +#include "razermousedock_driver.h" +#include "razermousemat_driver.h" +#include "razerheadphone_driver.h" +#include "razeregpu_driver.h" +#include "razerkraken_driver.h" +#include "razeraccessory_driver.h" + +#define TYPE_KEYBOARD 0 +#define TYPE_BLADE 1 +#define TYPE_MOUSE 2 +#define TYPE_MOUSE_DOCK 3 +#define TYPE_MOUSE_MAT 4 +#define TYPE_EGPU 5 +#define TYPE_HEADPHONE 6 +#define TYPE_ACCESSORY 7 + +#ifndef USB_VENDOR_ID_RAZER +#define USB_VENDOR_ID_RAZER 0x1532 +#endif + +typedef struct { + IOUSBDeviceInterface **usbDevice; + UInt16 productId; + int internalDeviceId; +} RazerDevice; + +typedef struct { + RazerDevice *devices; + int size; +} RazerDevices; + +IOUSBDeviceInterface **getRazerUSBDeviceInterface(int type); +void closeRazerUSBDeviceInterface(IOUSBDeviceInterface **dev); + +RazerDevices getAllRazerDevices(); +void closeAllRazerDevices(RazerDevices devices); + +#endif \ No newline at end of file -- cgit v1.2.3