Split out detection system from ResourceManager into DetectionManager

* Split detection system out into its own class, DetectionManager
    * Clean up ResourceManger's many callbacks into just two, one for detection and one general purpose
This commit is contained in:
Adam Honse
2026-01-08 23:35:50 -06:00
parent 20ae2f397a
commit 3f1a5036db
221 changed files with 3149 additions and 2776 deletions

View File

@@ -11,7 +11,7 @@
| OpenRGB includes |
\*-----------------------------------------------------*/
#include <hidapi.h>
#include "Detector.h"
#include "DetectionManager.h"
#include "LogManager.h"
/*-----------------------------------------------------*\
@@ -107,7 +107,7 @@ void DetectCoolerMasterARGB(hid_device_info* info, const std::string&)
CMARGBController* controller = new CMARGBController(dev, info->path, i, cm_mutex);
RGBController_CMARGBController* rgb_controller = new RGBController_CMARGBController(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
}
}
@@ -121,7 +121,7 @@ void DetectCoolerMasterARGBGen2A1(hid_device_info* info, const std::string& name
CMARGBGen2A1controller* controller = new CMARGBGen2A1controller(dev, *info, name);
RGBController_CMARGBGen2A1Controller* rgb_controller = new RGBController_CMARGBGen2A1Controller(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
}
@@ -134,7 +134,7 @@ void DetectCoolerMasterGPU(hid_device_info* info, const std::string&)
CMR6000Controller* controller = new CMR6000Controller(dev, info->path, info->product_id);
RGBController_CMR6000Controller* rgb_controller = new RGBController_CMR6000Controller(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
}
@@ -153,7 +153,7 @@ void DetectCoolerMasterV1Keyboards(hid_device_info* info, const std::string& nam
CMKeyboardV1Controller* controller = new CMKeyboardV1Controller(dev, info, name);
RGBController_CMKeyboardController* rgb_controller = new RGBController_CMKeyboardController(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
break;
@@ -179,7 +179,7 @@ void DetectCoolerMasterV2Keyboards(hid_device_info* info, const std::string& nam
CMKeyboardV1Controller* controller = new CMKeyboardV1Controller(dev, info, name);
RGBController_CMKeyboardController* rgb_controller = new RGBController_CMKeyboardController(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
break;
@@ -199,7 +199,7 @@ void DetectCoolerMasterV2Keyboards(hid_device_info* info, const std::string& nam
CMKeyboardV2Controller* controller = new CMKeyboardV2Controller(dev, info, name);
RGBController_CMKeyboardController* rgb_controller = new RGBController_CMKeyboardController(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
break;
@@ -219,7 +219,7 @@ void DetectCoolerMasterMouse(hid_device_info* info, const std::string& name)
CMMMController* controller = new CMMMController(dev, info->path, info->product_id, name);
RGBController_CMMMController* rgb_controller = new RGBController_CMMMController(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
}
@@ -232,7 +232,7 @@ void DetectCoolerMasterMouse711(hid_device_info* info, const std::string& /*name
CMMM711Controller* controller = new CMMM711Controller(dev, info->path);
RGBController_CMMM711Controller* rgb_controller = new RGBController_CMMM711Controller(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
}
@@ -245,7 +245,7 @@ void DetectCoolerMasterMouse712(hid_device_info* info, const std::string& /*name
CMMM712Controller* controller = new CMMM712Controller(dev, info->path);
RGBController_CMMM712Controller* rgb_controller = new RGBController_CMMM712Controller(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
}
@@ -258,7 +258,7 @@ void DetectCoolerMasterMousemats(hid_device_info* info, const std::string& /*nam
CMMP750Controller* controller = new CMMP750Controller(dev, info->path);
RGBController_CMMP750Controller* rgb_controller = new RGBController_CMMP750Controller(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
}
@@ -271,7 +271,7 @@ void DetectCoolerMasterRGB(hid_device_info* info, const std::string& /*name*/)
CMRGBController* controller = new CMRGBController(dev, info->path);
RGBController_CMRGBController* rgb_controller = new RGBController_CMRGBController(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
}
@@ -284,7 +284,7 @@ void DetectCoolerMasterSmallARGB(hid_device_info* info, const std::string& /*nam
CMSmallARGBController* controller = new CMSmallARGBController(dev, info->path, 0);
RGBController_CMSmallARGBController* rgb_controller = new RGBController_CMSmallARGBController(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
}
@@ -297,7 +297,7 @@ void DetectCoolerMasterMonitor(hid_device_info* info, const std::string& name)
CMMonitorController* controller = new CMMonitorController(dev, *info, name);
RGBController_CMMonitorController* rgb_controller = new RGBController_CMMonitorController(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
}
@@ -310,7 +310,7 @@ void DetectCoolerMasterGD160(hid_device_info* info, const std::string& name)
CMGD160Controller* controller = new CMGD160Controller(dev, *info, name);
RGBController_CMGD160Controller* rgb_controller = new RGBController_CMGD160Controller(controller);
ResourceManager::get()->RegisterRGBController(rgb_controller);
DetectionManager::get()->RegisterRGBController(rgb_controller);
}
}