41 lines
1.5 KiB
C++
41 lines
1.5 KiB
C++
#include "Detector.h"
|
|
#include "LogManager.h"
|
|
#include "RGBController.h"
|
|
#include "WushiL50USBController.h"
|
|
#include "RGBController_WushiL50USB.h"
|
|
#include <hidapi/hidapi.h>
|
|
|
|
/*-----------------------------------------------------*\
|
|
| Wushi vendor ID |
|
|
\*-----------------------------------------------------*/
|
|
#define WUSHI_VID 0x306F
|
|
|
|
/*-----------------------------------------------------*\
|
|
| Wushi device ID |
|
|
\*-----------------------------------------------------*/
|
|
#define WUSHI_PID 0x1234
|
|
|
|
/*-----------------------------------------------------*\
|
|
| Interface, Usage, and Usage Page |
|
|
\*-----------------------------------------------------*/
|
|
enum
|
|
{
|
|
WUSHI_PAGE = 0xFF63,
|
|
WUSHI_USAGE = 0x0C
|
|
};
|
|
|
|
void DetectWushiL50USBControllers(hidapi_wrapper wrapper, hid_device_info* info, const std::string& name)
|
|
{
|
|
hid_device* dev = wrapper.hid_open_path(info->path);
|
|
|
|
if(dev)
|
|
{
|
|
WushiL50USBController* controller = new WushiL50USBController(wrapper, dev, info->path);
|
|
RGBController_WushiL50USB* rgb_controller = new RGBController_WushiL50USB(controller);
|
|
rgb_controller->name = name;
|
|
|
|
ResourceManager::get()->RegisterRGBController(rgb_controller);
|
|
}
|
|
}
|
|
|
|
REGISTER_HID_WRAPPED_DETECTOR("JSAUX RGB Docking Station", DetectWushiL50USBControllers, WUSHI_VID, WUSHI_PID);
|