Store name in GigabyteAorusLaptopController to avoid setting it in detector

This commit is contained in:
Adam Honse 2025-08-08 11:43:37 -05:00
parent 7d0db424ec
commit cba7c016d3
4 changed files with 25 additions and 26 deletions

View file

@ -32,11 +32,11 @@ static unsigned char argb_colour_index_data[2][2][2] =
{ 0x05, 0x07 }, } //G1 R1 { 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; dev = dev_handle;
location = info.path; location = info.path;
version = ""; name = dev_name;
} }
GigabyteAorusLaptopController::~GigabyteAorusLaptopController() GigabyteAorusLaptopController::~GigabyteAorusLaptopController()
@ -44,6 +44,11 @@ GigabyteAorusLaptopController::~GigabyteAorusLaptopController()
hid_close(dev); hid_close(dev);
} }
std::string GigabyteAorusLaptopController::GetNameString()
{
return(name);
}
std::string GigabyteAorusLaptopController::GetDeviceLocation() std::string GigabyteAorusLaptopController::GetDeviceLocation()
{ {
return("HID: " + location); return("HID: " + location);
@ -62,11 +67,6 @@ std::string GigabyteAorusLaptopController::GetSerialString()
return(StringUtils::wstring_to_string(serial_string)); return(StringUtils::wstring_to_string(serial_string));
} }
std::string GigabyteAorusLaptopController::GetFirmwareVersion()
{
return(version);
}
void GigabyteAorusLaptopController::SetDirect(uint8_t brightness, RGBColor color) void GigabyteAorusLaptopController::SetDirect(uint8_t brightness, RGBColor color)
{ {
/*---------------------------------------------------------*\ /*---------------------------------------------------------*\

View file

@ -50,12 +50,12 @@ enum
class GigabyteAorusLaptopController class GigabyteAorusLaptopController
{ {
public: 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(); ~GigabyteAorusLaptopController();
std::string GetNameString();
std::string GetSerialString(); std::string GetSerialString();
std::string GetDeviceLocation(); std::string GetDeviceLocation();
std::string GetFirmwareVersion();
void SetDirect(uint8_t brightness, RGBColor color); void SetDirect(uint8_t brightness, RGBColor color);
void SetMode(uint8_t mode_value, uint8_t speed, uint8_t brightness, uint8_t direction, 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); unsigned char GetColourIndex(unsigned char red, unsigned char green, unsigned char blue);
std::string location; std::string location;
std::string version; std::string name;
}; };

View file

@ -24,8 +24,8 @@
#define AORUS_17X_BACKLIGHT_PID 0x7A42 #define AORUS_17X_BACKLIGHT_PID 0x7A42
#define AORUS_17X_KEYBOARD_PID 0x7A3F #define AORUS_17X_KEYBOARD_PID 0x7A3F
#define AORUS_15BKF_BACKLIGHT_PID 0x7A44 #define AORUS_15BKF_BACKLIGHT_PID 0x7A44
#define AORUS_15BKF_KEYBOARD_PID 0x7A43 #define AORUS_15BKF_KEYBOARD_PID 0x7A43
void DetectGigabyteAorusLaptopControllers(hid_device_info* info, const std::string& name, GIGABYTE_AORUS_LAPTOP_DEV_TYPE dev_type) 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) 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); RGBController_GigabyteAorusLaptop* rgb_controller = new RGBController_GigabyteAorusLaptop(controller, dev_type);
rgb_controller->name = name;
ResourceManager::get()->RegisterRGBController(rgb_controller); ResourceManager::get()->RegisterRGBController(rgb_controller);
} }
} }
@ -50,8 +50,7 @@ void DetectGigabyteAorusLaptopBacklightControllers(hid_device_info* info, const
DetectGigabyteAorusLaptopControllers(info, name, GIGABYTE_AORUS_LAPTOP_BACKLIGHT_TYPE); 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 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 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 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); REGISTER_HID_DETECTOR_IPU("Gigabyte Aorus 15BKF Backlight", DetectGigabyteAorusLaptopBacklightControllers, GIGABYTE_AORUS_LAPTOP_VID, AORUS_15BKF_BACKLIGHT_PID, 3, 0xFF01, 0x01);

View file

@ -74,12 +74,12 @@ RGBController_GigabyteAorusLaptop::RGBController_GigabyteAorusLaptop(GigabyteAor
{ {
this->dev_type = dev_type; this->dev_type = dev_type;
controller = controller_ptr; controller = controller_ptr;
name = controller->GetNameString();
vendor = "Gigabyte"; vendor = "Gigabyte";
type = DEVICE_TYPE_LAPTOP; type = DEVICE_TYPE_LAPTOP;
description = "Aorus Laptop"; description = "Aorus Laptop";
location = controller->GetDeviceLocation(); location = controller->GetDeviceLocation();
serial = controller->GetSerialString(); serial = controller->GetSerialString();
version = controller->GetFirmwareVersion();
/*---------------------------------------------------------*\ /*---------------------------------------------------------*\
| Only keyboard supports Direct mode | | Only keyboard supports Direct mode |
@ -87,13 +87,13 @@ RGBController_GigabyteAorusLaptop::RGBController_GigabyteAorusLaptop(GigabyteAor
if(dev_type == GIGABYTE_AORUS_LAPTOP_KEYBOARD_TYPE) if(dev_type == GIGABYTE_AORUS_LAPTOP_KEYBOARD_TYPE)
{ {
mode Direct; mode Direct;
Direct.name = "Direct"; Direct.name = "Direct";
Direct.value = GIGABYTE_AORUS_LAPTOP_DIRECT_MODE_VALUE; Direct.value = GIGABYTE_AORUS_LAPTOP_DIRECT_MODE_VALUE;
Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR | MODE_FLAG_HAS_BRIGHTNESS; Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR | MODE_FLAG_HAS_BRIGHTNESS;
Direct.color_mode = MODE_COLORS_PER_LED; Direct.color_mode = MODE_COLORS_PER_LED;
Direct.brightness_min = GIGABYTE_AORUS_LAPTOP_BRIGHTNESS_MIN; Direct.brightness_min = GIGABYTE_AORUS_LAPTOP_BRIGHTNESS_MIN;
Direct.brightness_max = GIGABYTE_AORUS_LAPTOP_BRIGHTNESS_MAX; Direct.brightness_max = GIGABYTE_AORUS_LAPTOP_BRIGHTNESS_MAX;
Direct.brightness = GIGABYTE_AORUS_LAPTOP_BRIGHTNESS_MAX/2; Direct.brightness = GIGABYTE_AORUS_LAPTOP_BRIGHTNESS_MAX/2;
modes.push_back(Direct); modes.push_back(Direct);
} }