From cba7c016d39311a32beab67268a57e367cee12a6 Mon Sep 17 00:00:00 2001 From: Adam Honse Date: Fri, 8 Aug 2025 11:43:37 -0500 Subject: [PATCH] Store name in GigabyteAorusLaptopController to avoid setting it in detector --- .../GigabyteAorusLaptopController.cpp | 14 +++++++------- .../GigabyteAorusLaptopController.h | 6 +++--- .../GigabyteAorusLaptopControllerDetect.cpp | 15 +++++++-------- .../RGBController_GigabyteAorusLaptop.cpp | 16 ++++++++-------- 4 files changed, 25 insertions(+), 26 deletions(-) diff --git a/Controllers/GigabyteAorusLaptopController/GigabyteAorusLaptopController.cpp b/Controllers/GigabyteAorusLaptopController/GigabyteAorusLaptopController.cpp index 02409138..cc869df9 100644 --- a/Controllers/GigabyteAorusLaptopController/GigabyteAorusLaptopController.cpp +++ b/Controllers/GigabyteAorusLaptopController/GigabyteAorusLaptopController.cpp @@ -32,11 +32,11 @@ static unsigned char argb_colour_index_data[2][2][2] = { 0x05, 0x07 }, } //G1 R1 }; -GigabyteAorusLaptopController::GigabyteAorusLaptopController(hid_device* dev_handle, const hid_device_info& info) +GigabyteAorusLaptopController::GigabyteAorusLaptopController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name) { dev = dev_handle; location = info.path; - version = ""; + name = dev_name; } GigabyteAorusLaptopController::~GigabyteAorusLaptopController() @@ -44,6 +44,11 @@ GigabyteAorusLaptopController::~GigabyteAorusLaptopController() hid_close(dev); } +std::string GigabyteAorusLaptopController::GetNameString() +{ + return(name); +} + std::string GigabyteAorusLaptopController::GetDeviceLocation() { return("HID: " + location); @@ -62,11 +67,6 @@ std::string GigabyteAorusLaptopController::GetSerialString() return(StringUtils::wstring_to_string(serial_string)); } -std::string GigabyteAorusLaptopController::GetFirmwareVersion() -{ - return(version); -} - void GigabyteAorusLaptopController::SetDirect(uint8_t brightness, RGBColor color) { /*---------------------------------------------------------*\ diff --git a/Controllers/GigabyteAorusLaptopController/GigabyteAorusLaptopController.h b/Controllers/GigabyteAorusLaptopController/GigabyteAorusLaptopController.h index fe842ae7..8bfc040d 100644 --- a/Controllers/GigabyteAorusLaptopController/GigabyteAorusLaptopController.h +++ b/Controllers/GigabyteAorusLaptopController/GigabyteAorusLaptopController.h @@ -50,12 +50,12 @@ enum class GigabyteAorusLaptopController { public: - GigabyteAorusLaptopController(hid_device* dev_handle, const hid_device_info& info); + GigabyteAorusLaptopController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name); ~GigabyteAorusLaptopController(); + std::string GetNameString(); std::string GetSerialString(); std::string GetDeviceLocation(); - std::string GetFirmwareVersion(); void SetDirect(uint8_t brightness, RGBColor color); void SetMode(uint8_t mode_value, uint8_t speed, uint8_t brightness, uint8_t direction, RGBColor color); @@ -69,5 +69,5 @@ private: unsigned char GetColourIndex(unsigned char red, unsigned char green, unsigned char blue); std::string location; - std::string version; + std::string name; }; diff --git a/Controllers/GigabyteAorusLaptopController/GigabyteAorusLaptopControllerDetect.cpp b/Controllers/GigabyteAorusLaptopController/GigabyteAorusLaptopControllerDetect.cpp index 753cd385..80f5b25b 100644 --- a/Controllers/GigabyteAorusLaptopController/GigabyteAorusLaptopControllerDetect.cpp +++ b/Controllers/GigabyteAorusLaptopController/GigabyteAorusLaptopControllerDetect.cpp @@ -24,8 +24,8 @@ #define AORUS_17X_BACKLIGHT_PID 0x7A42 #define AORUS_17X_KEYBOARD_PID 0x7A3F -#define AORUS_15BKF_BACKLIGHT_PID 0x7A44 -#define AORUS_15BKF_KEYBOARD_PID 0x7A43 +#define AORUS_15BKF_BACKLIGHT_PID 0x7A44 +#define AORUS_15BKF_KEYBOARD_PID 0x7A43 void DetectGigabyteAorusLaptopControllers(hid_device_info* info, const std::string& name, GIGABYTE_AORUS_LAPTOP_DEV_TYPE dev_type) { @@ -33,9 +33,9 @@ void DetectGigabyteAorusLaptopControllers(hid_device_info* info, const std::stri if(dev) { - GigabyteAorusLaptopController* controller = new GigabyteAorusLaptopController(dev, *info); + GigabyteAorusLaptopController* controller = new GigabyteAorusLaptopController(dev, *info, name); RGBController_GigabyteAorusLaptop* rgb_controller = new RGBController_GigabyteAorusLaptop(controller, dev_type); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); } } @@ -50,8 +50,7 @@ void DetectGigabyteAorusLaptopBacklightControllers(hid_device_info* info, const DetectGigabyteAorusLaptopControllers(info, name, GIGABYTE_AORUS_LAPTOP_BACKLIGHT_TYPE); } -REGISTER_HID_DETECTOR_IPU("Gigabyte Aorus 17X Keyboard", DetectGigabyteAorusLaptopKeyboardControllers, GIGABYTE_AORUS_LAPTOP_VID, AORUS_17X_KEYBOARD_PID, 3, 0xFF01, 0x01); -REGISTER_HID_DETECTOR_IPU("Gigabyte Aorus 17X Backlight", DetectGigabyteAorusLaptopBacklightControllers, GIGABYTE_AORUS_LAPTOP_VID, AORUS_17X_BACKLIGHT_PID, 3, 0xFF01, 0x01); - -REGISTER_HID_DETECTOR_IPU("Gigabyte Aorus 15BKF Keyboard", DetectGigabyteAorusLaptopKeyboardControllers, GIGABYTE_AORUS_LAPTOP_VID, AORUS_15BKF_KEYBOARD_PID, 3, 0xFF01, 0x01); +REGISTER_HID_DETECTOR_IPU("Gigabyte Aorus 17X Keyboard", DetectGigabyteAorusLaptopKeyboardControllers, GIGABYTE_AORUS_LAPTOP_VID, AORUS_17X_KEYBOARD_PID, 3, 0xFF01, 0x01); +REGISTER_HID_DETECTOR_IPU("Gigabyte Aorus 17X Backlight", DetectGigabyteAorusLaptopBacklightControllers, GIGABYTE_AORUS_LAPTOP_VID, AORUS_17X_BACKLIGHT_PID, 3, 0xFF01, 0x01); +REGISTER_HID_DETECTOR_IPU("Gigabyte Aorus 15BKF Keyboard", DetectGigabyteAorusLaptopKeyboardControllers, GIGABYTE_AORUS_LAPTOP_VID, AORUS_15BKF_KEYBOARD_PID, 3, 0xFF01, 0x01); REGISTER_HID_DETECTOR_IPU("Gigabyte Aorus 15BKF Backlight", DetectGigabyteAorusLaptopBacklightControllers, GIGABYTE_AORUS_LAPTOP_VID, AORUS_15BKF_BACKLIGHT_PID, 3, 0xFF01, 0x01); diff --git a/Controllers/GigabyteAorusLaptopController/RGBController_GigabyteAorusLaptop.cpp b/Controllers/GigabyteAorusLaptopController/RGBController_GigabyteAorusLaptop.cpp index 7a117236..5a9c74d3 100644 --- a/Controllers/GigabyteAorusLaptopController/RGBController_GigabyteAorusLaptop.cpp +++ b/Controllers/GigabyteAorusLaptopController/RGBController_GigabyteAorusLaptop.cpp @@ -74,12 +74,12 @@ RGBController_GigabyteAorusLaptop::RGBController_GigabyteAorusLaptop(GigabyteAor { this->dev_type = dev_type; controller = controller_ptr; + name = controller->GetNameString(); vendor = "Gigabyte"; type = DEVICE_TYPE_LAPTOP; description = "Aorus Laptop"; location = controller->GetDeviceLocation(); serial = controller->GetSerialString(); - version = controller->GetFirmwareVersion(); /*---------------------------------------------------------*\ | Only keyboard supports Direct mode | @@ -87,13 +87,13 @@ RGBController_GigabyteAorusLaptop::RGBController_GigabyteAorusLaptop(GigabyteAor if(dev_type == GIGABYTE_AORUS_LAPTOP_KEYBOARD_TYPE) { mode Direct; - Direct.name = "Direct"; - Direct.value = GIGABYTE_AORUS_LAPTOP_DIRECT_MODE_VALUE; - Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR | MODE_FLAG_HAS_BRIGHTNESS; - Direct.color_mode = MODE_COLORS_PER_LED; - Direct.brightness_min = GIGABYTE_AORUS_LAPTOP_BRIGHTNESS_MIN; - Direct.brightness_max = GIGABYTE_AORUS_LAPTOP_BRIGHTNESS_MAX; - Direct.brightness = GIGABYTE_AORUS_LAPTOP_BRIGHTNESS_MAX/2; + Direct.name = "Direct"; + Direct.value = GIGABYTE_AORUS_LAPTOP_DIRECT_MODE_VALUE; + Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR | MODE_FLAG_HAS_BRIGHTNESS; + Direct.color_mode = MODE_COLORS_PER_LED; + Direct.brightness_min = GIGABYTE_AORUS_LAPTOP_BRIGHTNESS_MIN; + Direct.brightness_max = GIGABYTE_AORUS_LAPTOP_BRIGHTNESS_MAX; + Direct.brightness = GIGABYTE_AORUS_LAPTOP_BRIGHTNESS_MAX/2; modes.push_back(Direct); }