Use HID path for Location on NZXT Kraken controller

This commit is contained in:
Adam Honse 2020-10-05 00:05:18 -05:00
parent e82b251bae
commit e4229aae47
4 changed files with 13 additions and 4 deletions

View file

@ -27,9 +27,10 @@ static RGBColor ToLogoColor(RGBColor rgb)
return ToRGBColor(RGBGetGValue(rgb), RGBGetRValue(rgb), RGBGetBValue(rgb)); return ToRGBColor(RGBGetGValue(rgb), RGBGetRValue(rgb), RGBGetBValue(rgb));
} }
NZXTKrakenController::NZXTKrakenController(hid_device* dev_handle) NZXTKrakenController::NZXTKrakenController(hid_device* dev_handle, const char* path)
{ {
dev = dev_handle; dev = dev_handle;
location = path;
/*-----------------------------------------------------*\ /*-----------------------------------------------------*\
| Get the firmware version | | Get the firmware version |
@ -47,6 +48,11 @@ std::string NZXTKrakenController::GetFirmwareVersion()
return firmware_version; return firmware_version;
} }
std::string NZXTKrakenController::GetLocation()
{
return(location);
}
void NZXTKrakenController::UpdateStatus() void NZXTKrakenController::UpdateStatus()
{ {
unsigned char usb_buf[64]; unsigned char usb_buf[64];

View file

@ -46,10 +46,11 @@ enum
class NZXTKrakenController class NZXTKrakenController
{ {
public: public:
NZXTKrakenController(hid_device* dev_handle); NZXTKrakenController(hid_device* dev_handle, const char* path);
~NZXTKrakenController(); ~NZXTKrakenController();
std::string GetFirmwareVersion(); std::string GetFirmwareVersion();
std::string GetLocation();
void UpdateEffect void UpdateEffect
( (
@ -81,6 +82,7 @@ private:
// -- status // -- status
std::string firmware_version; std::string firmware_version;
double liquid_temperature; double liquid_temperature;
std::string location;
unsigned int fan_speed; unsigned int fan_speed;
unsigned int pump_speed; unsigned int pump_speed;
}; };

View file

@ -58,7 +58,7 @@ void DetectNZXTKrakenControllers(std::vector<RGBController*> &rgb_controllers)
if( dev ) if( dev )
{ {
NZXTKrakenController* controller = new NZXTKrakenController(dev); NZXTKrakenController* controller = new NZXTKrakenController(dev, info->path);
RGBController_NZXTKraken* rgb_controller = new RGBController_NZXTKraken(controller); RGBController_NZXTKraken* rgb_controller = new RGBController_NZXTKraken(controller);

View file

@ -18,6 +18,7 @@ RGBController_NZXTKraken::RGBController_NZXTKraken(NZXTKrakenController* nzxtkra
type = DEVICE_TYPE_COOLER; type = DEVICE_TYPE_COOLER;
description = "NZXT Kraken X42/X52/X62/X72/M22"; description = "NZXT Kraken X42/X52/X62/X72/M22";
version = nzxtkraken->GetFirmwareVersion(); version = nzxtkraken->GetFirmwareVersion();
location = nzxtkraken->GetLocation();
mode Direct; mode Direct;
Direct.name = "Direct"; Direct.name = "Direct";