Store name in IonicoController to avoid setting it in detector
This commit is contained in:
parent
0bdf600409
commit
ca73941e5d
4 changed files with 52 additions and 45 deletions
|
|
@ -12,11 +12,12 @@
|
|||
#include <string.h>
|
||||
#include "IonicoController.h"
|
||||
|
||||
IonicoController::IonicoController(hid_device* dev_handle, const hid_device_info& info, const unsigned short pid)
|
||||
IonicoController::IonicoController(hid_device* dev_handle, const hid_device_info& info, const unsigned short pid, std::string dev_name)
|
||||
{
|
||||
dev = dev_handle;
|
||||
location = info.path;
|
||||
usb_pid = pid;
|
||||
name = dev_name;
|
||||
}
|
||||
|
||||
IonicoController::~IonicoController()
|
||||
|
|
@ -29,6 +30,11 @@ std::string IonicoController::GetDeviceLocation()
|
|||
return("HID: " + location);
|
||||
}
|
||||
|
||||
std::string IonicoController::GetDeviceName()
|
||||
{
|
||||
return(name);
|
||||
}
|
||||
|
||||
uint16_t IonicoController::GetUSBPID()
|
||||
{
|
||||
return(usb_pid);
|
||||
|
|
|
|||
|
|
@ -41,10 +41,11 @@ enum
|
|||
class IonicoController
|
||||
{
|
||||
public:
|
||||
IonicoController(hid_device* dev_handle, const hid_device_info& info, const unsigned short pid);
|
||||
IonicoController(hid_device* dev_handle, const hid_device_info& info, const unsigned short pid, std::string dev_name);
|
||||
~IonicoController();
|
||||
|
||||
std::string GetDeviceLocation();
|
||||
std::string GetDeviceName();
|
||||
|
||||
void SetMode(uint8_t mode_value, uint8_t brightness, uint8_t speed);
|
||||
void SetColors(int device, std::vector<RGBColor> array_colors, bool is_mode);
|
||||
|
|
@ -55,7 +56,7 @@ class IonicoController
|
|||
private:
|
||||
hid_device* dev;
|
||||
std::string location;
|
||||
std::string name;
|
||||
std::string serial_number;
|
||||
std::string version;
|
||||
uint16_t usb_pid;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -34,9 +34,8 @@ void DetectIonicoControllers(hid_device_info* info, const std::string& name)
|
|||
|
||||
if(dev)
|
||||
{
|
||||
IonicoController* controller = new IonicoController(dev, *info, info->product_id);
|
||||
IonicoController* controller = new IonicoController(dev, *info, info->product_id, name);
|
||||
RGBController_Ionico* rgb_controller = new RGBController_Ionico(controller);
|
||||
rgb_controller->name = name;
|
||||
|
||||
if(info->product_id == IONICO_KB_PID)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -26,7 +26,8 @@
|
|||
RGBController_Ionico::RGBController_Ionico(IonicoController* controller_ptr)
|
||||
{
|
||||
controller = controller_ptr;
|
||||
name = "Ionico";
|
||||
|
||||
name = controller->GetDeviceName();
|
||||
vendor = "Pcspecialist";
|
||||
description = name;
|
||||
location = controller->GetDeviceLocation();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue