Move HID detector calls to RunHIDDetector/RunHIDWrappedDetector functions and return controller list from detector functions

This commit is contained in:
Adam Honse
2026-01-12 19:05:21 -06:00
parent 1ccaadd5d0
commit 9bb2a4e693
197 changed files with 4481 additions and 4332 deletions

View File

@@ -11,57 +11,59 @@
#include <hidapi.h>
#include "DetectionManager.h"
#include "MountainKeyboardController.h"
#include "RGBController_MountainKeyboard.h"
#include "Mountain60KeyboardController.h"
#include "MountainKeyboardController.h"
#include "RGBController_Mountain60Keyboard.h"
#include "RGBController_MountainKeyboard.h"
/*---------------------------------------------------------------*\
| Mountain vendor ID |
\*---------------------------------------------------------------*/
#define MOUNTAIN_VID 0x3282
/*---------------------------------------------------------*\
| Mountain vendor ID |
\*---------------------------------------------------------*/
#define MOUNTAIN_VID 0x3282
/*----------------------------------------------------------------*\
| Everest 60 keyboard Connection IDs |
\*----------------------------------------------------------------*/
#define MOUNTAIN60_EVEREST_60_PID_ANSII 0x0005
#define MOUNTAIN60_EVEREST_60_PID_ISO 0x0006
#define MOUNTAIN60_EVEREST_60_INTERFACE 2
#define MOUNTAIN60_EVEREST_60_U 0x01
#define MOUNTAIN60_EVEREST_60_UP 0xFFFF
/*---------------------------------------------------------*\
| Everest 60 keyboard Connection IDs |
\*---------------------------------------------------------*/
#define MOUNTAIN60_EVEREST_60_PID_ANSII 0x0005
#define MOUNTAIN60_EVEREST_60_PID_ISO 0x0006
#define MOUNTAIN60_EVEREST_60_INTERFACE 2
#define MOUNTAIN60_EVEREST_60_U 0x01
#define MOUNTAIN60_EVEREST_60_UP 0xFFFF
/*----------------------------------------------------------------------------------------*\
| |
| DetectMountainKeyboardControllers |
| |
| Tests the USB address to see if a Mountain RGB Keyboard controller exists there. |
| |
\*----------------------------------------------------------------------------------------*/
void DetectMountain60KeyboardControllers(hid_device_info* info, const std::string& name)
DetectedControllers DetectMountain60KeyboardControllers(hid_device_info* info, const std::string& name)
{
hid_device* dev = hid_open_path(info->path);
DetectedControllers detected_controllers;
hid_device* dev;
dev = hid_open_path(info->path);
if(dev)
{
Mountain60KeyboardController* controller = new Mountain60KeyboardController(dev, info->path, name);
RGBController_Mountain60Keyboard* rgb_controller = new RGBController_Mountain60Keyboard(controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
detected_controllers.push_back(rgb_controller);
}
return(detected_controllers);
}
void DetectMountainKeyboardControllers(hid_device_info* info, const std::string& name)
DetectedControllers DetectMountainKeyboardControllers(hid_device_info* info, const std::string& name)
{
hid_device* dev = hid_open_path(info->path);
DetectedControllers detected_controllers;
hid_device* dev;
dev = hid_open_path(info->path);
if(dev)
{
MountainKeyboardController* controller = new MountainKeyboardController(dev, info->path, name);
RGBController_MountainKeyboard* rgb_controller = new RGBController_MountainKeyboard(controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
detected_controllers.push_back(rgb_controller);
}
return(detected_controllers);
}
REGISTER_HID_DETECTOR_IPU("Mountain Everest", DetectMountainKeyboardControllers, MOUNTAIN_VID, MOUNTAIN_EVEREST_PID, 3, 0xFF00, 0x01);