diff --git a/Controllers/RoccatController/RoccatBurstController/RGBController_RoccatBurst.cpp b/Controllers/RoccatController/RoccatBurstController/RGBController_RoccatBurst.cpp index 571471fb..5d58dac9 100644 --- a/Controllers/RoccatController/RoccatBurstController/RGBController_RoccatBurst.cpp +++ b/Controllers/RoccatController/RoccatBurstController/RGBController_RoccatBurst.cpp @@ -27,10 +27,12 @@ RGBController_RoccatBurst::RGBController_RoccatBurst(RoccatBurstController* cont { controller = controller_ptr; - name = "Roccat Burst Core"; + name = controller->GetNameString(); vendor = "Roccat"; type = DEVICE_TYPE_MOUSE; - description = "Roccat Burst Core Mouse"; + description = "Roccat Burst Mouse Device"; + location = controller->GetDeviceLocation(); + serial = controller->GetSerialString(); mode Direct; Direct.name = "Direct"; diff --git a/Controllers/RoccatController/RoccatBurstController/RoccatBurstController.cpp b/Controllers/RoccatController/RoccatBurstController/RoccatBurstController.cpp index a7543435..67748b15 100644 --- a/Controllers/RoccatController/RoccatBurstController/RoccatBurstController.cpp +++ b/Controllers/RoccatController/RoccatBurstController/RoccatBurstController.cpp @@ -13,11 +13,11 @@ #include "RoccatBurstController.h" #include "StringUtils.h" -RoccatBurstController::RoccatBurstController(hid_device* dev_handle, const hid_device_info& info) +RoccatBurstController::RoccatBurstController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name) { dev = dev_handle; - version = ""; location = info.path; + name = dev_name; SetupDirectMode(); } @@ -27,9 +27,14 @@ RoccatBurstController::~RoccatBurstController() hid_close(dev); } -std::string RoccatBurstController::GetFirmwareVersion() +std::string RoccatBurstController::GetDeviceLocation() { - return version; + return("HID: " + location); +} + +std::string RoccatBurstController::GetNameString() +{ + return(name); } std::string RoccatBurstController::GetSerialString() @@ -45,11 +50,6 @@ std::string RoccatBurstController::GetSerialString() return(StringUtils::wstring_to_string(serial_string)); } -std::string RoccatBurstController::GetDeviceLocation() -{ - return("HID: " + location); -} - void RoccatBurstController::SetupDirectMode() { SwitchControl(true); diff --git a/Controllers/RoccatController/RoccatBurstController/RoccatBurstController.h b/Controllers/RoccatController/RoccatBurstController/RoccatBurstController.h index 3dfc7233..177d0b4a 100644 --- a/Controllers/RoccatController/RoccatBurstController/RoccatBurstController.h +++ b/Controllers/RoccatController/RoccatBurstController/RoccatBurstController.h @@ -44,12 +44,12 @@ enum class RoccatBurstController { public: - RoccatBurstController(hid_device* dev_handle, const hid_device_info& info); + RoccatBurstController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name); ~RoccatBurstController(); - std::string GetSerialString(); std::string GetDeviceLocation(); - std::string GetFirmwareVersion(); + std::string GetNameString(); + std::string GetSerialString(); void SetupDirectMode(); void SendDirect(std::vector colors); @@ -63,7 +63,7 @@ public: private: hid_device* dev; std::string location; - std::string version; + std::string name; unsigned int CalculateCRC(unsigned char* bytes); void SwitchControl(bool direct); diff --git a/Controllers/RoccatController/RoccatBurstProAirController/RGBController_RoccatBurstProAir.cpp b/Controllers/RoccatController/RoccatBurstProAirController/RGBController_RoccatBurstProAir.cpp index 77983b10..50a80910 100644 --- a/Controllers/RoccatController/RoccatBurstProAirController/RGBController_RoccatBurstProAir.cpp +++ b/Controllers/RoccatController/RoccatBurstProAirController/RGBController_RoccatBurstProAir.cpp @@ -26,10 +26,12 @@ RGBController_RoccatBurstProAir::RGBController_RoccatBurstProAir(RoccatBurstProA { controller = controller_ptr; - name = "Roccat Burst Pro Air"; + name = controller->GetNameString(); vendor = "Roccat"; type = DEVICE_TYPE_MOUSE; - description = "Roccat Burst Pro Air Mouse"; + description = "Roccat Burst Pro Air Mouse Device"; + location = controller->GetDeviceLocation(); + serial = controller->GetSerialString(); mode Direct; Direct.name = "Direct"; diff --git a/Controllers/RoccatController/RoccatBurstProAirController/RoccatBurstProAirController.cpp b/Controllers/RoccatController/RoccatBurstProAirController/RoccatBurstProAirController.cpp index 364469ca..2b134b69 100644 --- a/Controllers/RoccatController/RoccatBurstProAirController/RoccatBurstProAirController.cpp +++ b/Controllers/RoccatController/RoccatBurstProAirController/RoccatBurstProAirController.cpp @@ -13,11 +13,11 @@ #include "RoccatBurstProAirController.h" #include "StringUtils.h" -RoccatBurstProAirController::RoccatBurstProAirController(hid_device* dev_handle, const hid_device_info& info) +RoccatBurstProAirController::RoccatBurstProAirController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name) { dev = dev_handle; - version = ""; location = info.path; + name = dev_name; } RoccatBurstProAirController::~RoccatBurstProAirController() @@ -25,9 +25,14 @@ RoccatBurstProAirController::~RoccatBurstProAirController() hid_close(dev); } -std::string RoccatBurstProAirController::GetFirmwareVersion() +std::string RoccatBurstProAirController::GetDeviceLocation() { - return version; + return("HID: " + location); +} + +std::string RoccatBurstProAirController::GetNameString() +{ + return(name); } std::string RoccatBurstProAirController::GetSerialString() @@ -43,11 +48,6 @@ std::string RoccatBurstProAirController::GetSerialString() return(StringUtils::wstring_to_string(serial_string)); } -std::string RoccatBurstProAirController::GetDeviceLocation() -{ - return("HID: " + location); -} - void RoccatBurstProAirController::SetColors(std::vector colors) { unsigned char usb_buf[ROCCAT_BURST_PRO_AIR_REPORT_SIZE]; diff --git a/Controllers/RoccatController/RoccatBurstProAirController/RoccatBurstProAirController.h b/Controllers/RoccatController/RoccatBurstProAirController/RoccatBurstProAirController.h index e79677e6..c70a2365 100644 --- a/Controllers/RoccatController/RoccatBurstProAirController/RoccatBurstProAirController.h +++ b/Controllers/RoccatController/RoccatBurstProAirController/RoccatBurstProAirController.h @@ -37,12 +37,12 @@ enum class RoccatBurstProAirController { public: - RoccatBurstProAirController(hid_device* dev_handle, const hid_device_info& info); + RoccatBurstProAirController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name); ~RoccatBurstProAirController(); - std::string GetSerialString(); std::string GetDeviceLocation(); - std::string GetFirmwareVersion(); + std::string GetNameString(); + std::string GetSerialString(); void SetColors(std::vector colors); void SetModeValues(unsigned char mode_value, unsigned char speed, unsigned char brightness); @@ -50,5 +50,5 @@ public: private: hid_device* dev; std::string location; - std::string version; + std::string name; }; diff --git a/Controllers/RoccatController/RoccatControllerDetect.cpp b/Controllers/RoccatController/RoccatControllerDetect.cpp index 80dd1c8e..b9b8106a 100644 --- a/Controllers/RoccatController/RoccatControllerDetect.cpp +++ b/Controllers/RoccatController/RoccatControllerDetect.cpp @@ -72,9 +72,9 @@ void DetectRoccatMouseControllers(hid_device_info* info, const std::string& name if(dev) { - RoccatKoneAimoController * controller = new RoccatKoneAimoController(dev, info->path); + RoccatKoneAimoController * controller = new RoccatKoneAimoController(dev, info->path, name); RGBController_RoccatKoneAimo * rgb_controller = new RGBController_RoccatKoneAimo(controller); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); } } @@ -100,20 +100,20 @@ void DetectRoccatVulcanKeyboardControllers(hid_device_info* info, const std::str | through it. This prevents detection from failing if interface 1 comes before interface 0 in the | | main info list. | \*-------------------------------------------------------------------------------------------------*/ - hid_device* dev_ctrl = nullptr; - hid_device* dev_led = nullptr; - hid_device_info* info_full = hid_enumerate(info->vendor_id, info->product_id); - hid_device_info* info_temp = info_full; + hid_device* dev_ctrl = nullptr; + hid_device* dev_led = nullptr; + hid_device_info* info_full = hid_enumerate(info->vendor_id, info->product_id); + hid_device_info* info_temp = info_full; + /*--------------------------------------------------------------------------------------------*\ | Keep track of paths so they can be added to used_paths only if both interfaces can be found. | \*--------------------------------------------------------------------------------------------*/ - std::string dev_ctrl_path; - std::string dev_led_path; + std::string dev_ctrl_path; + std::string dev_led_path; + int dev_led_page; + int dev_ctrl_page; - int dev_led_page; - int dev_ctrl_page; - - switch (info->product_id) + switch(info->product_id) { case ROCCAT_VULCAN_PRO_PID: case ROCCAT_PYRO_PID: @@ -162,10 +162,11 @@ void DetectRoccatVulcanKeyboardControllers(hid_device_info* info, const std::str if(dev_ctrl && dev_led) { - RoccatVulcanKeyboardController * controller = new RoccatVulcanKeyboardController(dev_ctrl, dev_led, info->path, info->product_id); + RoccatVulcanKeyboardController * controller = new RoccatVulcanKeyboardController(dev_ctrl, dev_led, info->path, info->product_id, name); RGBController_RoccatVulcanKeyboard * rgb_controller = new RGBController_RoccatVulcanKeyboard(controller); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); + used_paths.insert(dev_ctrl_path); used_paths.insert(dev_led_path); } @@ -183,9 +184,9 @@ void DetectRoccatHordeAimoKeyboardControllers(hid_device_info* info, const std:: if(dev) { - RoccatHordeAimoController * controller = new RoccatHordeAimoController(dev, *info); + RoccatHordeAimoController * controller = new RoccatHordeAimoController(dev, *info, name); RGBController_RoccatHordeAimo * rgb_controller = new RGBController_RoccatHordeAimo(controller); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); } } @@ -196,9 +197,9 @@ void DetectRoccatBurstCoreControllers(hid_device_info* info, const std::string& if(dev) { - RoccatBurstController * controller = new RoccatBurstController(dev, *info); + RoccatBurstController * controller = new RoccatBurstController(dev, *info, name); RGBController_RoccatBurst * rgb_controller = new RGBController_RoccatBurst(controller, ROCCAT_BURST_CORE_NUMBER_OF_LEDS); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); } } @@ -209,9 +210,9 @@ void DetectRoccatBurstProControllers(hid_device_info* info, const std::string& n if(dev) { - RoccatBurstController * controller = new RoccatBurstController(dev, *info); + RoccatBurstController * controller = new RoccatBurstController(dev, *info, name); RGBController_RoccatBurst * rgb_controller = new RGBController_RoccatBurst(controller, ROCCAT_BURST_PRO_NUMBER_OF_LEDS); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); } } @@ -222,9 +223,9 @@ void DetectRoccatBurstProAirControllers(hid_device_info* info, const std::string if(dev) { - RoccatBurstProAirController * controller = new RoccatBurstProAirController(dev, *info); + RoccatBurstProAirController * controller = new RoccatBurstProAirController(dev, *info, name); RGBController_RoccatBurstProAir * rgb_controller = new RGBController_RoccatBurstProAir(controller); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); } } @@ -235,9 +236,9 @@ void DetectRoccatKoneProControllers(hid_device_info* info, const std::string& na if(dev) { - RoccatKoneProController * controller = new RoccatKoneProController(dev, *info); + RoccatKoneProController * controller = new RoccatKoneProController(dev, *info, name); RGBController_RoccatKonePro * rgb_controller = new RGBController_RoccatKonePro(controller); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); } } @@ -248,9 +249,9 @@ void DetectRoccatKoneProAirControllers(hid_device_info* info, const std::string& if(dev) { - RoccatKoneProAirController * controller = new RoccatKoneProAirController(dev, *info); + RoccatKoneProAirController * controller = new RoccatKoneProAirController(dev, *info, name); RGBController_RoccatKoneProAir * rgb_controller = new RGBController_RoccatKoneProAir(controller); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); } } @@ -261,9 +262,9 @@ void DetectRoccatKoneXPControllers(hid_device_info* info, const std::string& nam if(dev) { - RoccatKoneXPController * controller = new RoccatKoneXPController(dev, info->path); + RoccatKoneXPController * controller = new RoccatKoneXPController(dev, info->path, name); RGBController_RoccatKoneXP * rgb_controller = new RGBController_RoccatKoneXP(controller); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); } } @@ -274,9 +275,9 @@ void DetectRoccatKovaControllers(hid_device_info* info, const std::string& name) if(dev) { - RoccatKovaController * controller = new RoccatKovaController(dev, info->path); + RoccatKovaController * controller = new RoccatKovaController(dev, info->path, name); RGBController_RoccatKova * rgb_controller = new RGBController_RoccatKova(controller); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); } } @@ -287,9 +288,9 @@ void DetectRoccatEloControllers(hid_device_info* info, const std::string& name) if(dev) { - RoccatEloController * controller = new RoccatEloController(dev, *info); + RoccatEloController * controller = new RoccatEloController(dev, *info, name); RGBController_RoccatElo * rgb_controller = new RGBController_RoccatElo(controller); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); } } @@ -300,9 +301,9 @@ void DetectRoccatSenseAimoControllers(hid_device_info* info, const std::string& if(dev) { - RoccatSenseAimoController * controller = new RoccatSenseAimoController(dev, info->path); + RoccatSenseAimoController * controller = new RoccatSenseAimoController(dev, info->path, name); RGBController_RoccatSenseAimo * rgb_controller = new RGBController_RoccatSenseAimo(controller); - rgb_controller->name = name; + ResourceManager::get()->RegisterRGBController(rgb_controller); } } diff --git a/Controllers/RoccatController/RoccatEloController/RGBController_RoccatElo.cpp b/Controllers/RoccatController/RoccatEloController/RGBController_RoccatElo.cpp index 7af2d6a9..a53ac25b 100644 --- a/Controllers/RoccatController/RoccatEloController/RGBController_RoccatElo.cpp +++ b/Controllers/RoccatController/RoccatEloController/RGBController_RoccatElo.cpp @@ -27,13 +27,13 @@ RGBController_RoccatElo::RGBController_RoccatElo(RoccatEloController* controller_ptr) { controller = controller_ptr; - name = "Roccat Elo 7.1"; + + name = controller->GetNameString(); vendor = "Roccat"; type = DEVICE_TYPE_HEADSET; - description = name; + description = "Roccat Elo 7.1 Headset Device"; location = controller->GetDeviceLocation(); serial = controller->GetSerialString(); - version = ""; mode Direct; Direct.name = "Direct"; diff --git a/Controllers/RoccatController/RoccatEloController/RoccatEloController.cpp b/Controllers/RoccatController/RoccatEloController/RoccatEloController.cpp index 6442349c..09af64ce 100644 --- a/Controllers/RoccatController/RoccatEloController/RoccatEloController.cpp +++ b/Controllers/RoccatController/RoccatEloController/RoccatEloController.cpp @@ -14,11 +14,11 @@ #include "RoccatEloController.h" #include "StringUtils.h" -RoccatEloController::RoccatEloController(hid_device* dev_handle, const hid_device_info& info) +RoccatEloController::RoccatEloController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name) { dev = dev_handle; location = info.path; - version = ""; + name = dev_name; SendInit(); } @@ -33,6 +33,11 @@ std::string RoccatEloController::GetDeviceLocation() return("HID: " + location); } +std::string RoccatEloController::GetNameString() +{ + return(name); +} + std::string RoccatEloController::GetSerialString() { wchar_t serial_string[128]; diff --git a/Controllers/RoccatController/RoccatEloController/RoccatEloController.h b/Controllers/RoccatController/RoccatEloController/RoccatEloController.h index 7825eb65..945e272a 100644 --- a/Controllers/RoccatController/RoccatEloController/RoccatEloController.h +++ b/Controllers/RoccatController/RoccatEloController/RoccatEloController.h @@ -22,18 +22,19 @@ class RoccatEloController { public: - RoccatEloController(hid_device* dev_handle, const hid_device_info& info); + RoccatEloController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name); ~RoccatEloController(); - std::string GetSerialString(); std::string GetDeviceLocation(); + std::string GetNameString(); + std::string GetSerialString(); void SendDirect(RGBColor color); private: hid_device* dev; std::string location; - std::string version; + std::string name; void SendInit(); }; diff --git a/Controllers/RoccatController/RoccatHordeAimoController/RGBController_RoccatHordeAimo.cpp b/Controllers/RoccatController/RoccatHordeAimoController/RGBController_RoccatHordeAimo.cpp index 4f744163..ad6fbe64 100644 --- a/Controllers/RoccatController/RoccatHordeAimoController/RGBController_RoccatHordeAimo.cpp +++ b/Controllers/RoccatController/RoccatHordeAimoController/RGBController_RoccatHordeAimo.cpp @@ -26,10 +26,12 @@ RGBController_RoccatHordeAimo::RGBController_RoccatHordeAimo(RoccatHordeAimoCont { controller = controller_ptr; - name = "Roccat Horde Aimo"; + name = controller->GetNameString(); vendor = "Roccat"; type = DEVICE_TYPE_KEYBOARD; - description = "Roccat Horde Aimo Keyboard"; + description = "Roccat Horde Aimo Keyboard Device"; + location = controller->GetDeviceLocation(); + serial = controller->GetSerialString(); mode Direct; Direct.name = "Direct"; diff --git a/Controllers/RoccatController/RoccatHordeAimoController/RoccatHordeAimoController.cpp b/Controllers/RoccatController/RoccatHordeAimoController/RoccatHordeAimoController.cpp index 99ac6eb1..abe49cd8 100644 --- a/Controllers/RoccatController/RoccatHordeAimoController/RoccatHordeAimoController.cpp +++ b/Controllers/RoccatController/RoccatHordeAimoController/RoccatHordeAimoController.cpp @@ -13,11 +13,11 @@ #include "RoccatHordeAimoController.h" #include "StringUtils.h" -RoccatHordeAimoController::RoccatHordeAimoController(hid_device* dev_handle, const hid_device_info& info) +RoccatHordeAimoController::RoccatHordeAimoController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name) { dev = dev_handle; - version = ""; location = info.path; + name = dev_name; InitialPacket(); } @@ -40,9 +40,14 @@ void RoccatHordeAimoController::InitialPacket() hid_send_feature_report(dev, usb_buf, 8); } -std::string RoccatHordeAimoController::GetFirmwareVersion() +std::string RoccatHordeAimoController::GetDeviceLocation() { - return version; + return("HID: " + location); +} + +std::string RoccatHordeAimoController::GetNameString() +{ + return(name); } std::string RoccatHordeAimoController::GetSerialString() @@ -58,11 +63,6 @@ std::string RoccatHordeAimoController::GetSerialString() return(StringUtils::wstring_to_string(serial_string)); } -std::string RoccatHordeAimoController::GetDeviceLocation() -{ - return("HID: " + location); -} - void RoccatHordeAimoController::SetColors(std::vector colors) { unsigned char usb_buf[WRITE_PACKET_LENGTH]; diff --git a/Controllers/RoccatController/RoccatHordeAimoController/RoccatHordeAimoController.h b/Controllers/RoccatController/RoccatHordeAimoController/RoccatHordeAimoController.h index 4a8a69c6..680feada 100644 --- a/Controllers/RoccatController/RoccatHordeAimoController/RoccatHordeAimoController.h +++ b/Controllers/RoccatController/RoccatHordeAimoController/RoccatHordeAimoController.h @@ -22,19 +22,19 @@ class RoccatHordeAimoController { public: - RoccatHordeAimoController(hid_device* dev_handle, const hid_device_info& info); + RoccatHordeAimoController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name); ~RoccatHordeAimoController(); - std::string GetSerialString(); std::string GetDeviceLocation(); - std::string GetFirmwareVersion(); + std::string GetNameString(); + std::string GetSerialString(); void SetColors(std::vector colors); private: hid_device* dev; std::string location; - std::string version; + std::string name; void InitialPacket(); }; diff --git a/Controllers/RoccatController/RoccatKoneAimoController/RGBController_RoccatKoneAimo.cpp b/Controllers/RoccatController/RoccatKoneAimoController/RGBController_RoccatKoneAimo.cpp index 7659479b..113f6f0d 100644 --- a/Controllers/RoccatController/RoccatKoneAimoController/RGBController_RoccatKoneAimo.cpp +++ b/Controllers/RoccatController/RoccatKoneAimoController/RGBController_RoccatKoneAimo.cpp @@ -24,26 +24,26 @@ RGBController_RoccatKoneAimo::RGBController_RoccatKoneAimo(RoccatKoneAimoController* controller_ptr) { - controller = controller_ptr; + controller = controller_ptr; - name = "Roccat Kone Aimo"; - vendor = "Roccat"; - type = DEVICE_TYPE_MOUSE; - description = "Roccat Kone Aimo Mouse"; - location = controller->GetLocation(); - serial = controller->GetSerial(); + name = controller->GetName(); + vendor = "Roccat"; + type = DEVICE_TYPE_MOUSE; + description = "Roccat Kone Aimo Mouse Device"; + location = controller->GetLocation(); + serial = controller->GetSerial(); mode Direct; - Direct.name = "Direct"; - Direct.value = 0; - Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR; - Direct.speed_min = 0; - Direct.speed_max = 0; - Direct.speed = 0; - Direct.color_mode = MODE_COLORS_PER_LED; + Direct.name = "Direct"; + Direct.value = 0; + Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR; + Direct.speed_min = 0; + Direct.speed_max = 0; + Direct.speed = 0; + Direct.color_mode = MODE_COLORS_PER_LED; modes.push_back(Direct); - active_mode = 0; + active_mode = 0; SetupZones(); } diff --git a/Controllers/RoccatController/RoccatKoneAimoController/RoccatKoneAimoController.cpp b/Controllers/RoccatController/RoccatKoneAimoController/RoccatKoneAimoController.cpp index 62c0787a..6c6db943 100644 --- a/Controllers/RoccatController/RoccatKoneAimoController/RoccatKoneAimoController.cpp +++ b/Controllers/RoccatController/RoccatKoneAimoController/RoccatKoneAimoController.cpp @@ -13,21 +13,11 @@ #include "RoccatKoneAimoController.h" #include "StringUtils.h" -RoccatKoneAimoController::RoccatKoneAimoController(hid_device* dev_handle, char *_path) +RoccatKoneAimoController::RoccatKoneAimoController(hid_device* dev_handle, char *_path, std::string dev_name) { - dev = dev_handle; - location = _path; - - /*---------------------------------------------------------*\ - | Get device name from HID manufacturer and product strings | - \*---------------------------------------------------------*/ - wchar_t name_string[HID_MAX_STR]; - - hid_get_manufacturer_string(dev, name_string, HID_MAX_STR); - device_name = StringUtils::wstring_to_string(name_string); - - hid_get_product_string(dev, name_string, HID_MAX_STR); - device_name.append(" ").append(StringUtils::wstring_to_string(name_string)); + dev = dev_handle; + location = _path; + name = dev_name; /*-----------------------------------------------------*\ | Init usb buffer to 0 and add first two bytes | @@ -44,9 +34,9 @@ RoccatKoneAimoController::~RoccatKoneAimoController() hid_close(dev); } -std::string RoccatKoneAimoController::GetDeviceName() +std::string RoccatKoneAimoController::GetName() { - return device_name; + return(name); } std::string RoccatKoneAimoController::GetSerial() diff --git a/Controllers/RoccatController/RoccatKoneAimoController/RoccatKoneAimoController.h b/Controllers/RoccatController/RoccatKoneAimoController/RoccatKoneAimoController.h index c1883b61..9dd005ba 100644 --- a/Controllers/RoccatController/RoccatKoneAimoController/RoccatKoneAimoController.h +++ b/Controllers/RoccatController/RoccatKoneAimoController/RoccatKoneAimoController.h @@ -39,19 +39,19 @@ enum ROCCAT_KONE_AIMO_CHANNEL class RoccatKoneAimoController { public: - RoccatKoneAimoController(hid_device* dev_handle, char *_path); + RoccatKoneAimoController(hid_device* dev_handle, char *_path, std::string dev_name); ~RoccatKoneAimoController(); - std::string GetDeviceName(); - std::string GetSerial(); std::string GetLocation(); + std::string GetName(); + std::string GetSerial(); void SetChannelColors(ROCCAT_KONE_AIMO_CHANNEL channel, RGBColor * colors, unsigned int num_colors); void SendUpdate(); private: - std::string device_name; std::string location; + std::string name; hid_device* dev; unsigned char usb_colors_buf[USB_COLOR_BUFF_LEN]; // USB buffer to be sent everytime we update mouse's LEDs diff --git a/Controllers/RoccatController/RoccatKoneProAirController/RGBController_RoccatKoneProAir.cpp b/Controllers/RoccatController/RoccatKoneProAirController/RGBController_RoccatKoneProAir.cpp index 1d7eaba0..b13b5006 100644 --- a/Controllers/RoccatController/RoccatKoneProAirController/RGBController_RoccatKoneProAir.cpp +++ b/Controllers/RoccatController/RoccatKoneProAirController/RGBController_RoccatKoneProAir.cpp @@ -26,13 +26,12 @@ RGBController_RoccatKoneProAir::RGBController_RoccatKoneProAir(RoccatKoneProAirC { controller = controller_ptr; - name = "Roccat Kone Pro Air"; + name = controller->GetNameString(); vendor = "Roccat"; type = DEVICE_TYPE_MOUSE; - description = "Roccat Kone Pro Air Mouse"; + description = "Roccat Kone Pro Air Mouse Device"; serial = controller->GetSerialString(); location = controller->GetDeviceLocation(); - version = controller->GetFirmwareVersion(); mode Direct; Direct.name = "Direct"; diff --git a/Controllers/RoccatController/RoccatKoneProAirController/RoccatKoneProAirController.cpp b/Controllers/RoccatController/RoccatKoneProAirController/RoccatKoneProAirController.cpp index 591a7413..6a0b4ca8 100644 --- a/Controllers/RoccatController/RoccatKoneProAirController/RoccatKoneProAirController.cpp +++ b/Controllers/RoccatController/RoccatKoneProAirController/RoccatKoneProAirController.cpp @@ -13,11 +13,11 @@ #include "RoccatKoneProAirController.h" #include "StringUtils.h" -RoccatKoneProAirController::RoccatKoneProAirController(hid_device* dev_handle, const hid_device_info& info) +RoccatKoneProAirController::RoccatKoneProAirController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name) { dev = dev_handle; - version = ""; location = info.path; + name = dev_name; } RoccatKoneProAirController::~RoccatKoneProAirController() @@ -25,9 +25,14 @@ RoccatKoneProAirController::~RoccatKoneProAirController() hid_close(dev); } -std::string RoccatKoneProAirController::GetFirmwareVersion() +std::string RoccatKoneProAirController::GetDeviceLocation() { - return version; + return("HID: " + location); +} + +std::string RoccatKoneProAirController::GetNameString() +{ + return(name); } std::string RoccatKoneProAirController::GetSerialString() @@ -43,11 +48,6 @@ std::string RoccatKoneProAirController::GetSerialString() return(StringUtils::wstring_to_string(serial_string)); } -std::string RoccatKoneProAirController::GetDeviceLocation() -{ - return("HID: " + location); -} - void RoccatKoneProAirController::SendDirect(std::vector colors) { SendRGB(true, colors, ROCCAT_KONE_PRO_AIR_DIRECT_MODE_VALUE, ROCCAT_KONE_PRO_AIR_SPEED_MAX, ROCCAT_KONE_PRO_AIR_BRIGHTNESS_MAX); diff --git a/Controllers/RoccatController/RoccatKoneProAirController/RoccatKoneProAirController.h b/Controllers/RoccatController/RoccatKoneProAirController/RoccatKoneProAirController.h index 2dc20405..4181062e 100644 --- a/Controllers/RoccatController/RoccatKoneProAirController/RoccatKoneProAirController.h +++ b/Controllers/RoccatController/RoccatKoneProAirController/RoccatKoneProAirController.h @@ -43,12 +43,12 @@ enum class RoccatKoneProAirController { public: - RoccatKoneProAirController(hid_device* dev_handle, const hid_device_info& info); + RoccatKoneProAirController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name); ~RoccatKoneProAirController(); - std::string GetSerialString(); std::string GetDeviceLocation(); - std::string GetFirmwareVersion(); + std::string GetNameString(); + std::string GetSerialString(); void SendDirect(std::vector colors); void SetMode(std::vector colors, unsigned char mode_value, unsigned char speed, unsigned char brightness, unsigned int mode_flags); @@ -56,7 +56,7 @@ public: private: hid_device* dev; std::string location; - std::string version; + std::string name; void SendRGB(bool direct, std::vector colors, unsigned char mode_value, unsigned char speed, unsigned char brightness); }; diff --git a/Controllers/RoccatController/RoccatKoneProController/RGBController_RoccatKonePro.cpp b/Controllers/RoccatController/RoccatKoneProController/RGBController_RoccatKonePro.cpp index 3a34d7c5..75a3a118 100644 --- a/Controllers/RoccatController/RoccatKoneProController/RGBController_RoccatKonePro.cpp +++ b/Controllers/RoccatController/RoccatKoneProController/RGBController_RoccatKonePro.cpp @@ -26,13 +26,12 @@ RGBController_RoccatKonePro::RGBController_RoccatKonePro(RoccatKoneProController { controller = controller_ptr; - name = "Roccat Kone Pro"; + name = controller->GetNameString(); vendor = "Roccat"; type = DEVICE_TYPE_MOUSE; - description = "Roccat Kone Pro Mouse"; + description = "Roccat Kone Pro Mouse Device"; serial = controller->GetSerialString(); location = controller->GetDeviceLocation(); - version = controller->GetFirmwareVersion(); // Also known as "Intelligent Lighting System" mode in Roccat Swarm mode Direct; diff --git a/Controllers/RoccatController/RoccatKoneProController/RoccatKoneProController.cpp b/Controllers/RoccatController/RoccatKoneProController/RoccatKoneProController.cpp index 27c60673..0af3d3cd 100644 --- a/Controllers/RoccatController/RoccatKoneProController/RoccatKoneProController.cpp +++ b/Controllers/RoccatController/RoccatKoneProController/RoccatKoneProController.cpp @@ -13,11 +13,11 @@ #include "RoccatKoneProController.h" #include "StringUtils.h" -RoccatKoneProController::RoccatKoneProController(hid_device* dev_handle, const hid_device_info& info) +RoccatKoneProController::RoccatKoneProController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name) { dev = dev_handle; - version = ""; location = info.path; + name = dev_name; SetupDirectMode(); } @@ -27,9 +27,14 @@ RoccatKoneProController::~RoccatKoneProController() hid_close(dev); } -std::string RoccatKoneProController::GetFirmwareVersion() +std::string RoccatKoneProController::GetDeviceLocation() { - return version; + return("HID: " + location); +} + +std::string RoccatKoneProController::GetNameString() +{ + return(name); } std::string RoccatKoneProController::GetSerialString() @@ -45,11 +50,6 @@ std::string RoccatKoneProController::GetSerialString() return(StringUtils::wstring_to_string(serial_string)); } -std::string RoccatKoneProController::GetDeviceLocation() -{ - return("HID: " + location); -} - void RoccatKoneProController::SetupDirectMode() { SwitchControl(true); diff --git a/Controllers/RoccatController/RoccatKoneProController/RoccatKoneProController.h b/Controllers/RoccatController/RoccatKoneProController/RoccatKoneProController.h index 93727e38..cd9bacc8 100644 --- a/Controllers/RoccatController/RoccatKoneProController/RoccatKoneProController.h +++ b/Controllers/RoccatController/RoccatKoneProController/RoccatKoneProController.h @@ -44,12 +44,12 @@ enum class RoccatKoneProController { public: - RoccatKoneProController(hid_device* dev_handle, const hid_device_info& info); + RoccatKoneProController(hid_device* dev_handle, const hid_device_info& info, std::string dev_name); ~RoccatKoneProController(); - std::string GetSerialString(); std::string GetDeviceLocation(); - std::string GetFirmwareVersion(); + std::string GetNameString(); + std::string GetSerialString(); void SetupDirectMode(); void SendDirect(std::vector colors); @@ -63,7 +63,7 @@ public: private: hid_device* dev; std::string location; - std::string version; + std::string name; unsigned int CalculateCRC(unsigned char* bytes); void SwitchControl(bool direct); diff --git a/Controllers/RoccatController/RoccatKoneXPController/RGBController_RoccatKoneXP.cpp b/Controllers/RoccatController/RoccatKoneXPController/RGBController_RoccatKoneXP.cpp index 74132039..8f9b34f9 100644 --- a/Controllers/RoccatController/RoccatKoneXPController/RGBController_RoccatKoneXP.cpp +++ b/Controllers/RoccatController/RoccatKoneXPController/RGBController_RoccatKoneXP.cpp @@ -24,16 +24,15 @@ RGBController_RoccatKoneXP::RGBController_RoccatKoneXP(RoccatKoneXPController* controller_ptr) { - controller = controller_ptr; - - name = "Roccat Kone XP"; - vendor = "Roccat"; - type = DEVICE_TYPE_MOUSE; - description = "Roccat Kone XP Mouse"; - version = controller->GetVersion(); - location = controller->GetLocation(); - serial = controller->GetSerial(); + controller = controller_ptr; + name = controller->GetName(); + vendor = "Roccat"; + type = DEVICE_TYPE_MOUSE; + description = "Roccat Kone XP Mouse Device"; + version = controller->GetVersion(); + location = controller->GetLocation(); + serial = controller->GetSerial(); mode Direct; Direct.name = "Direct"; @@ -43,10 +42,10 @@ RGBController_RoccatKoneXP::RGBController_RoccatKoneXP(RoccatKoneXPController* c modes.push_back(Direct); mode Off; - Off.name = "Off"; - Off.value = ROCCAT_KONE_XP_MODE_OFF; - Off.flags = MODE_FLAG_AUTOMATIC_SAVE; - Off.color_mode = MODE_COLORS_NONE; + Off.name = "Off"; + Off.value = ROCCAT_KONE_XP_MODE_OFF; + Off.flags = MODE_FLAG_AUTOMATIC_SAVE; + Off.color_mode = MODE_COLORS_NONE; modes.push_back(Off); mode Static; @@ -112,27 +111,26 @@ RGBController_RoccatKoneXP::RGBController_RoccatKoneXP(RoccatKoneXPController* c modes.push_back(Heartbeat); mode Photon; - Photon.name = "Photon FX"; - Photon.value = ROCCAT_KONE_XP_MODE_PHOTON_FX; - Photon.flags = MODE_FLAG_AUTOMATIC_SAVE | MODE_FLAG_HAS_BRIGHTNESS; - Photon.color_mode = MODE_COLORS_NONE; - Photon.brightness = ROCCAT_KONE_XP_BRIGHTNESS_DEFAULT; - Photon.brightness_min = ROCCAT_KONE_XP_BRIGHTNESS_MIN; - Photon.brightness_max = ROCCAT_KONE_XP_BRIGHTNESS_MAX; + Photon.name = "Photon FX"; + Photon.value = ROCCAT_KONE_XP_MODE_PHOTON_FX; + Photon.flags = MODE_FLAG_AUTOMATIC_SAVE | MODE_FLAG_HAS_BRIGHTNESS; + Photon.color_mode = MODE_COLORS_NONE; + Photon.brightness = ROCCAT_KONE_XP_BRIGHTNESS_DEFAULT; + Photon.brightness_min = ROCCAT_KONE_XP_BRIGHTNESS_MIN; + Photon.brightness_max = ROCCAT_KONE_XP_BRIGHTNESS_MAX; modes.push_back(Photon); /*---------------------------------------------------------------------*\ | This is the default mode for software modes, while swarm isn't active | \*---------------------------------------------------------------------*/ - mode Default; - Default.name = "Default"; - Default.value = ROCCAT_KONE_XP_MODE_DEFAULT; - Default.flags = MODE_FLAG_AUTOMATIC_SAVE | MODE_FLAG_HAS_BRIGHTNESS; - Default.color_mode = MODE_COLORS_NONE; - Default.brightness = ROCCAT_KONE_XP_BRIGHTNESS_DEFAULT; - Default.brightness_min = ROCCAT_KONE_XP_BRIGHTNESS_MIN; - Default.brightness_max = ROCCAT_KONE_XP_BRIGHTNESS_MAX; + Default.name = "Default"; + Default.value = ROCCAT_KONE_XP_MODE_DEFAULT; + Default.flags = MODE_FLAG_AUTOMATIC_SAVE | MODE_FLAG_HAS_BRIGHTNESS; + Default.color_mode = MODE_COLORS_NONE; + Default.brightness = ROCCAT_KONE_XP_BRIGHTNESS_DEFAULT; + Default.brightness_min = ROCCAT_KONE_XP_BRIGHTNESS_MIN; + Default.brightness_max = ROCCAT_KONE_XP_BRIGHTNESS_MAX; modes.push_back(Default); SetupZones(); diff --git a/Controllers/RoccatController/RoccatKoneXPController/RoccatKoneXPController.cpp b/Controllers/RoccatController/RoccatKoneXPController/RoccatKoneXPController.cpp index b320b269..c9094f60 100644 --- a/Controllers/RoccatController/RoccatKoneXPController/RoccatKoneXPController.cpp +++ b/Controllers/RoccatController/RoccatKoneXPController/RoccatKoneXPController.cpp @@ -16,10 +16,11 @@ #include "RoccatKoneXPController.h" #include "StringUtils.h" -RoccatKoneXPController::RoccatKoneXPController(hid_device* dev_handle, char *path) +RoccatKoneXPController::RoccatKoneXPController(hid_device* dev_handle, char *path, std::string dev_name) { - dev = dev_handle; - location = path; + dev = dev_handle; + location = path; + name = dev_name; } RoccatKoneXPController::~RoccatKoneXPController() @@ -27,6 +28,30 @@ RoccatKoneXPController::~RoccatKoneXPController() hid_close(dev); } +std::string RoccatKoneXPController::GetLocation() +{ + return("HID: " + location); +} + +std::string RoccatKoneXPController::GetName() +{ + return(name); +} + +std::string RoccatKoneXPController::GetSerial() +{ + wchar_t serial_string[128]; + int ret = hid_get_serial_number_string(dev, serial_string, 128); + + if(ret != 0) + { + return(""); + } + + return(StringUtils::wstring_to_string(serial_string)); + +} + std::string RoccatKoneXPController::GetVersion() { uint8_t buf[9] = { 0x09 }; @@ -44,25 +69,6 @@ std::string RoccatKoneXPController::GetVersion() return std::string(version); } -std::string RoccatKoneXPController::GetSerial() -{ - wchar_t serial_string[128]; - int ret = hid_get_serial_number_string(dev, serial_string, 128); - - if(ret != 0) - { - return(""); - } - - return(StringUtils::wstring_to_string(serial_string)); - -} - -std::string RoccatKoneXPController::GetLocation() -{ - return("HID: " + location); -} - uint8_t RoccatKoneXPController::GetActiveProfile() { uint8_t buf[4] = { 0x05 }; diff --git a/Controllers/RoccatController/RoccatKoneXPController/RoccatKoneXPController.h b/Controllers/RoccatController/RoccatKoneXPController/RoccatKoneXPController.h index 3cb788b5..150f25f1 100644 --- a/Controllers/RoccatController/RoccatKoneXPController/RoccatKoneXPController.h +++ b/Controllers/RoccatController/RoccatKoneXPController/RoccatKoneXPController.h @@ -78,11 +78,12 @@ struct roccat_kone_xp_mode_struct class RoccatKoneXPController { public: - RoccatKoneXPController(hid_device* dev_handle, char *path); + RoccatKoneXPController(hid_device* dev_handle, char *path, std::string dev_name); ~RoccatKoneXPController(); - std::string GetSerial(); std::string GetLocation(); + std::string GetName(); + std::string GetSerial(); std::string GetVersion(); uint8_t GetActiveProfile(); @@ -98,4 +99,5 @@ public: private: hid_device* dev; std::string location; + std::string name; }; diff --git a/Controllers/RoccatController/RoccatKovaController/RGBController_RoccatKova.cpp b/Controllers/RoccatController/RoccatKovaController/RGBController_RoccatKova.cpp index 953585e1..48f2aae1 100644 --- a/Controllers/RoccatController/RoccatKovaController/RGBController_RoccatKova.cpp +++ b/Controllers/RoccatController/RoccatKovaController/RGBController_RoccatKova.cpp @@ -29,13 +29,13 @@ RGBController_RoccatKova::RGBController_RoccatKova(RoccatKovaController* control { controller = controller_ptr; - type = DEVICE_TYPE_MOUSE; - name = "Roccat Kova"; + name = controller->GetName(); vendor = "Roccat"; - description = "Controller compatible with the Roccat Kova gaming mouse"; + type = DEVICE_TYPE_MOUSE; + description = "Roccat Kova Mouse Device"; serial = controller->GetSerial(); location = controller->GetLocation(); - version = controller->GetFirmwareVersion(); + version = controller->GetVersion(); mode Static; Static.name = "Static"; diff --git a/Controllers/RoccatController/RoccatKovaController/RoccatKovaController.cpp b/Controllers/RoccatController/RoccatKovaController/RoccatKovaController.cpp index b96a4149..30fa3d39 100644 --- a/Controllers/RoccatController/RoccatKovaController/RoccatKovaController.cpp +++ b/Controllers/RoccatController/RoccatKovaController/RoccatKovaController.cpp @@ -14,10 +14,11 @@ #include "RoccatKovaController.h" #include "StringUtils.h" -RoccatKovaController::RoccatKovaController(hid_device* dev_handle, char *path) +RoccatKovaController::RoccatKovaController(hid_device* dev_handle, char *path, std::string dev_name) { - dev = dev_handle; - location = path; + dev = dev_handle; + location = path; + name = dev_name; SendInitialPacket(); FetchFirmwareVersion(); @@ -30,7 +31,12 @@ RoccatKovaController::~RoccatKovaController() std::string RoccatKovaController::GetLocation() { - return ("HID: " + location); + return("HID: " + location); +} + +std::string RoccatKovaController::GetName() +{ + return(name); } std::string RoccatKovaController::GetSerial() @@ -46,9 +52,9 @@ std::string RoccatKovaController::GetSerial() return(StringUtils::wstring_to_string(serial_string)); } -std::string RoccatKovaController::GetFirmwareVersion() +std::string RoccatKovaController::GetVersion() { - return firmware_version; + return(version); } void RoccatKovaController::SetColor(RGBColor color_wheel, @@ -118,10 +124,10 @@ void RoccatKovaController::FetchFirmwareVersion() hid_get_feature_report(dev, buf, ROCCAT_KOVA_VERSION_READ_PACKET_SIZE); - uint8_t version = buf[ROCCAT_KOVA_FIRMWARE_VERSION_IDX]; + uint8_t fw_version = buf[ROCCAT_KOVA_FIRMWARE_VERSION_IDX]; char version_str[5] {00}; - snprintf(version_str, 5, "%.2f", version / 100.); - firmware_version = version_str; + snprintf(version_str, 5, "%.2f", fw_version / 100.); + version = version_str; } void RoccatKovaController::FetchProfileData(uint8_t *buf) diff --git a/Controllers/RoccatController/RoccatKovaController/RoccatKovaController.h b/Controllers/RoccatController/RoccatKovaController/RoccatKovaController.h index b9306462..19ddc894 100644 --- a/Controllers/RoccatController/RoccatKovaController/RoccatKovaController.h +++ b/Controllers/RoccatController/RoccatKovaController/RoccatKovaController.h @@ -65,12 +65,13 @@ enum class RoccatKovaController { public: - RoccatKovaController(hid_device* dev_handle, char *path); + RoccatKovaController(hid_device* dev_handle, char *path, std::string dev_name); ~RoccatKovaController(); std::string GetLocation(); + std::string GetName(); std::string GetSerial(); - std::string GetFirmwareVersion(); + std::string GetVersion(); void SetColor(RGBColor color_wheel, RGBColor color_stripe, @@ -81,7 +82,8 @@ public: private: hid_device* dev; std::string location; - std::string firmware_version; + std::string name; + std::string version; void SendInitialPacket(); void FetchProfileData(uint8_t *buf); diff --git a/Controllers/RoccatController/RoccatSenseAimoController/RGBController_RoccatSenseAimo.cpp b/Controllers/RoccatController/RoccatSenseAimoController/RGBController_RoccatSenseAimo.cpp index 4df3cd1a..a3b99fb4 100644 --- a/Controllers/RoccatController/RoccatSenseAimoController/RGBController_RoccatSenseAimo.cpp +++ b/Controllers/RoccatController/RoccatSenseAimoController/RGBController_RoccatSenseAimo.cpp @@ -24,15 +24,15 @@ RGBController_RoccatSenseAimo::RGBController_RoccatSenseAimo(RoccatSenseAimoController* controller_ptr) { - controller = controller_ptr; + controller = controller_ptr; - name = "Roccat Sense Aimo"; - vendor = "Roccat"; - type = DEVICE_TYPE_MOUSEMAT; - description = "Roccat Sense Aimo Mousepad"; - version = controller->GetVersion(); - location = controller->GetLocation(); - serial = controller->GetSerial(); + name = controller->GetName(); + vendor = "Roccat"; + type = DEVICE_TYPE_MOUSEMAT; + description = "Roccat Sense Aimo Mousepad Device"; + version = controller->GetVersion(); + location = controller->GetLocation(); + serial = controller->GetSerial(); mode Direct; Direct.name = "Direct"; @@ -93,7 +93,6 @@ RGBController_RoccatSenseAimo::RGBController_RoccatSenseAimo(RoccatSenseAimoCont /*---------------------------------------------------------------------*\ | This is the default mode for software modes, while swarm isn't active | \*---------------------------------------------------------------------*/ - mode Default; Default.name = "Default"; Default.value = ROCCAT_SENSE_AIMO_MODE_DEFAULT; diff --git a/Controllers/RoccatController/RoccatSenseAimoController/RoccatSenseAimoController.cpp b/Controllers/RoccatController/RoccatSenseAimoController/RoccatSenseAimoController.cpp index 58108be4..e807b089 100644 --- a/Controllers/RoccatController/RoccatSenseAimoController/RoccatSenseAimoController.cpp +++ b/Controllers/RoccatController/RoccatSenseAimoController/RoccatSenseAimoController.cpp @@ -14,10 +14,11 @@ #include "RoccatSenseAimoController.h" #include "StringUtils.h" -RoccatSenseAimoController::RoccatSenseAimoController(hid_device* dev_handle, char *path) +RoccatSenseAimoController::RoccatSenseAimoController(hid_device* dev_handle, char *path, std::string dev_name) { - dev = dev_handle; - location = path; + dev = dev_handle; + location = path; + name = dev_name; } RoccatSenseAimoController::~RoccatSenseAimoController() @@ -25,6 +26,29 @@ RoccatSenseAimoController::~RoccatSenseAimoController() hid_close(dev); } +std::string RoccatSenseAimoController::GetLocation() +{ + return("HID: " + location); +} + +std::string RoccatSenseAimoController::GetName() +{ + return(name); +} + +std::string RoccatSenseAimoController::GetSerial() +{ + wchar_t serial_string[128]; + int ret = hid_get_serial_number_string(dev, serial_string, 128); + + if(ret != 0) + { + return(""); + } + + return(StringUtils::wstring_to_string(serial_string)); +} + std::string RoccatSenseAimoController::GetVersion() { uint8_t buf[8] = { 0x01 }; @@ -42,24 +66,6 @@ std::string RoccatSenseAimoController::GetVersion() return std::string(version); } -std::string RoccatSenseAimoController::GetSerial() -{ - wchar_t serial_string[128]; - int ret = hid_get_serial_number_string(dev, serial_string, 128); - - if(ret != 0) - { - return(""); - } - - return(StringUtils::wstring_to_string(serial_string)); -} - -std::string RoccatSenseAimoController::GetLocation() -{ - return("HID: " + location); -} - mode_struct RoccatSenseAimoController::GetMode() { uint8_t buf[19] = { 0x02 }; diff --git a/Controllers/RoccatController/RoccatSenseAimoController/RoccatSenseAimoController.h b/Controllers/RoccatController/RoccatSenseAimoController/RoccatSenseAimoController.h index b7cdc7da..c7f44d05 100644 --- a/Controllers/RoccatController/RoccatSenseAimoController/RoccatSenseAimoController.h +++ b/Controllers/RoccatController/RoccatSenseAimoController/RoccatSenseAimoController.h @@ -47,11 +47,12 @@ struct mode_struct class RoccatSenseAimoController { public: - RoccatSenseAimoController(hid_device* dev_handle, char *path); + RoccatSenseAimoController(hid_device* dev_handle, char *path, std::string dev_name); ~RoccatSenseAimoController(); - std::string GetSerial(); std::string GetLocation(); + std::string GetName(); + std::string GetSerial(); std::string GetVersion(); mode_struct GetMode(); @@ -62,4 +63,5 @@ public: private: hid_device* dev; std::string location; + std::string name; }; diff --git a/Controllers/RoccatController/RoccatVulcanKeyboardController/RGBController_RoccatVulcanKeyboard.cpp b/Controllers/RoccatController/RoccatVulcanKeyboardController/RGBController_RoccatVulcanKeyboard.cpp index c2a444c2..7c24916a 100644 --- a/Controllers/RoccatController/RoccatVulcanKeyboardController/RGBController_RoccatVulcanKeyboard.cpp +++ b/Controllers/RoccatController/RoccatVulcanKeyboardController/RGBController_RoccatVulcanKeyboard.cpp @@ -30,67 +30,67 @@ RGBController_RoccatVulcanKeyboard::RGBController_RoccatVulcanKeyboard(RoccatVulcanKeyboardController* controller_ptr) { - controller = controller_ptr; + controller = controller_ptr; - pid = controller->device_pid; + pid = controller->device_pid; controller->InitDeviceInfo(); - name = "Roccat Vulcan Keyboard"; - vendor = "Roccat"; - type = DEVICE_TYPE_KEYBOARD; - description = "Roccat Vulcan Keyboard"; - version = controller->GetDeviceInfo().version; - location = controller->GetLocation(); - serial = controller->GetSerial(); + name = controller->GetName(); + vendor = "Roccat"; + type = DEVICE_TYPE_KEYBOARD; + description = "Roccat Vulcan Keyboard Device"; + version = controller->GetDeviceInfo().version; + location = controller->GetLocation(); + serial = controller->GetSerial(); mode Direct; - Direct.name = "Direct"; - Direct.value = ROCCAT_VULCAN_MODE_DIRECT; - Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR; - Direct.color_mode = MODE_COLORS_PER_LED; + Direct.name = "Direct"; + Direct.value = ROCCAT_VULCAN_MODE_DIRECT; + Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR; + Direct.color_mode = MODE_COLORS_PER_LED; if(pid != ROCCAT_VULCAN_120_AIMO_PID && pid != ROCCAT_VULCAN_100_AIMO_PID) { - Direct.flags |= MODE_FLAG_HAS_BRIGHTNESS; - Direct.brightness_min = ROCCAT_VULCAN_BRIGHTNESS_MIN; - Direct.brightness_max = ROCCAT_VULCAN_BRIGHTNESS_MAX; - Direct.brightness = ROCCAT_VULCAN_BRIGHTNESS_DEFAULT; + Direct.flags |= MODE_FLAG_HAS_BRIGHTNESS; + Direct.brightness_min = ROCCAT_VULCAN_BRIGHTNESS_MIN; + Direct.brightness_max = ROCCAT_VULCAN_BRIGHTNESS_MAX; + Direct.brightness = ROCCAT_VULCAN_BRIGHTNESS_DEFAULT; } modes.push_back(Direct); mode Static; - Static.name = "Static"; - Static.value = ROCCAT_VULCAN_MODE_STATIC; - Static.flags = MODE_FLAG_HAS_PER_LED_COLOR | MODE_FLAG_HAS_BRIGHTNESS | MODE_FLAG_AUTOMATIC_SAVE; - Static.brightness_min = ROCCAT_VULCAN_BRIGHTNESS_MIN; - Static.brightness_max = ROCCAT_VULCAN_BRIGHTNESS_MAX; - Static.brightness = ROCCAT_VULCAN_BRIGHTNESS_DEFAULT; - Static.color_mode = MODE_COLORS_PER_LED; + Static.name = "Static"; + Static.value = ROCCAT_VULCAN_MODE_STATIC; + Static.flags = MODE_FLAG_HAS_PER_LED_COLOR | MODE_FLAG_HAS_BRIGHTNESS | MODE_FLAG_AUTOMATIC_SAVE; + Static.brightness_min = ROCCAT_VULCAN_BRIGHTNESS_MIN; + Static.brightness_max = ROCCAT_VULCAN_BRIGHTNESS_MAX; + Static.brightness = ROCCAT_VULCAN_BRIGHTNESS_DEFAULT; + Static.color_mode = MODE_COLORS_PER_LED; modes.push_back(Static); mode Wave; - Wave.name = "Rainbow Wave"; - Wave.value = ROCCAT_VULCAN_MODE_WAVE; - Wave.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_BRIGHTNESS | MODE_FLAG_AUTOMATIC_SAVE; - Wave.speed_min = ROCCAT_VULCAN_SPEED_MIN; - Wave.speed_max = ROCCAT_VULCAN_SPEED_MAX; - Wave.speed = ROCCAT_VULCAN_SPEED_DEFAULT; - Wave.brightness_min = ROCCAT_VULCAN_BRIGHTNESS_MIN; - Wave.brightness_max = ROCCAT_VULCAN_BRIGHTNESS_MAX; - Wave.brightness = ROCCAT_VULCAN_BRIGHTNESS_DEFAULT; - Wave.color_mode = MODE_COLORS_NONE; + Wave.name = "Rainbow Wave"; + Wave.value = ROCCAT_VULCAN_MODE_WAVE; + Wave.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_BRIGHTNESS | MODE_FLAG_AUTOMATIC_SAVE; + Wave.speed_min = ROCCAT_VULCAN_SPEED_MIN; + Wave.speed_max = ROCCAT_VULCAN_SPEED_MAX; + Wave.speed = ROCCAT_VULCAN_SPEED_DEFAULT; + Wave.brightness_min = ROCCAT_VULCAN_BRIGHTNESS_MIN; + Wave.brightness_max = ROCCAT_VULCAN_BRIGHTNESS_MAX; + Wave.brightness = ROCCAT_VULCAN_BRIGHTNESS_DEFAULT; + Wave.color_mode = MODE_COLORS_NONE; modes.push_back(Wave); mode Default; - Default.name = "Default"; - Default.value = ROCCAT_VULCAN_MODE_DEFAULT; - Default.flags = MODE_FLAG_HAS_BRIGHTNESS | MODE_FLAG_AUTOMATIC_SAVE; - Default.brightness_min = ROCCAT_VULCAN_BRIGHTNESS_MIN; - Default.brightness_max = ROCCAT_VULCAN_BRIGHTNESS_MAX; - Default.brightness = ROCCAT_VULCAN_BRIGHTNESS_DEFAULT; - Default.color_mode = MODE_COLORS_NONE; + Default.name = "Default"; + Default.value = ROCCAT_VULCAN_MODE_DEFAULT; + Default.flags = MODE_FLAG_HAS_BRIGHTNESS | MODE_FLAG_AUTOMATIC_SAVE; + Default.brightness_min = ROCCAT_VULCAN_BRIGHTNESS_MIN; + Default.brightness_max = ROCCAT_VULCAN_BRIGHTNESS_MAX; + Default.brightness = ROCCAT_VULCAN_BRIGHTNESS_DEFAULT; + Default.color_mode = MODE_COLORS_NONE; modes.push_back(Default); SetupZones(); diff --git a/Controllers/RoccatController/RoccatVulcanKeyboardController/RoccatVulcanKeyboardController.cpp b/Controllers/RoccatController/RoccatVulcanKeyboardController/RoccatVulcanKeyboardController.cpp index cf0dca1a..672b74c0 100644 --- a/Controllers/RoccatController/RoccatVulcanKeyboardController/RoccatVulcanKeyboardController.cpp +++ b/Controllers/RoccatController/RoccatVulcanKeyboardController/RoccatVulcanKeyboardController.cpp @@ -18,11 +18,12 @@ #include "RoccatVulcanKeyboardController.h" #include "StringUtils.h" -RoccatVulcanKeyboardController::RoccatVulcanKeyboardController(hid_device* dev_ctrl_handle, hid_device* dev_led_handle, char *path, uint16_t pid) +RoccatVulcanKeyboardController::RoccatVulcanKeyboardController(hid_device* dev_ctrl_handle, hid_device* dev_led_handle, char *path, uint16_t pid, std::string dev_name) { dev_ctrl = dev_ctrl_handle; dev_led = dev_led_handle; location = path; + name = dev_name; device_pid = pid; } @@ -32,6 +33,16 @@ RoccatVulcanKeyboardController::~RoccatVulcanKeyboardController() hid_close(dev_led); } +std::string RoccatVulcanKeyboardController::GetLocation() +{ + return("HID: " + location); +} + +std::string RoccatVulcanKeyboardController::GetName() +{ + return(name); +} + std::string RoccatVulcanKeyboardController::GetSerial() { wchar_t serial_string[128]; @@ -45,12 +56,6 @@ std::string RoccatVulcanKeyboardController::GetSerial() return(StringUtils::wstring_to_string(serial_string)); } -std::string RoccatVulcanKeyboardController::GetLocation() -{ - return("HID: " + location); -} - - device_info RoccatVulcanKeyboardController::InitDeviceInfo() { uint8_t packet_length; diff --git a/Controllers/RoccatController/RoccatVulcanKeyboardController/RoccatVulcanKeyboardController.h b/Controllers/RoccatController/RoccatVulcanKeyboardController/RoccatVulcanKeyboardController.h index 3debe922..3ed548dc 100644 --- a/Controllers/RoccatController/RoccatVulcanKeyboardController/RoccatVulcanKeyboardController.h +++ b/Controllers/RoccatController/RoccatVulcanKeyboardController/RoccatVulcanKeyboardController.h @@ -70,11 +70,12 @@ struct led_color class RoccatVulcanKeyboardController { public: - RoccatVulcanKeyboardController(hid_device* dev_ctrl_handle, hid_device* dev_led_handle, char *path, uint16_t pid); + RoccatVulcanKeyboardController(hid_device* dev_ctrl_handle, hid_device* dev_led_handle, char *path, uint16_t pid, std::string dev_name); ~RoccatVulcanKeyboardController(); std::string GetSerial(); std::string GetLocation(); + std::string GetName(); device_info InitDeviceInfo(); device_info GetDeviceInfo(); @@ -88,8 +89,9 @@ public: uint16_t device_pid; private: - std::string location; hid_device* dev_ctrl; hid_device* dev_led; device_info dev_info; + std::string location; + std::string name; };