diff --git a/Controllers/NZXTHue2Controller/NZXTHue2Controller.cpp b/Controllers/NZXTHue2Controller/NZXTHue2Controller.cpp index cc9aad68..50bead5f 100644 --- a/Controllers/NZXTHue2Controller/NZXTHue2Controller.cpp +++ b/Controllers/NZXTHue2Controller/NZXTHue2Controller.cpp @@ -17,10 +17,11 @@ #include "NZXTHue2Controller.h" #include "StringUtils.h" -NZXTHue2Controller::NZXTHue2Controller(hid_device* dev_handle, unsigned int rgb_channels, unsigned int fan_channels, const char* path) +NZXTHue2Controller::NZXTHue2Controller(hid_device* dev_handle, unsigned int rgb_channels, unsigned int fan_channels, const char* path, std::string dev_name) { dev = dev_handle; location = path; + name = dev_name; num_fan_channels = fan_channels; num_rgb_channels = rgb_channels; @@ -59,6 +60,11 @@ std::string NZXTHue2Controller::GetLocation() return("HID: " + location); } +std::string NZXTHue2Controller::GetName() +{ + return(name); +} + unsigned int NZXTHue2Controller::GetNumFanChannels() { return(num_fan_channels); diff --git a/Controllers/NZXTHue2Controller/NZXTHue2Controller.h b/Controllers/NZXTHue2Controller/NZXTHue2Controller.h index 10f66601..4ad12402 100644 --- a/Controllers/NZXTHue2Controller/NZXTHue2Controller.h +++ b/Controllers/NZXTHue2Controller/NZXTHue2Controller.h @@ -66,11 +66,12 @@ enum class NZXTHue2Controller { public: - NZXTHue2Controller(hid_device* dev_handle, unsigned int rgb_channels, unsigned int fan_channels, const char* path); + NZXTHue2Controller(hid_device* dev_handle, unsigned int rgb_channels, unsigned int fan_channels, const char* path, std::string dev_name); ~NZXTHue2Controller(); std::string GetFirmwareVersion(); std::string GetLocation(); + std::string GetName(); std::string GetSerialString(); unsigned char GetFanCommand @@ -127,6 +128,7 @@ private: char firmware_version[16]; std::string location; + std::string name; unsigned int num_fan_channels; unsigned int num_rgb_channels; diff --git a/Controllers/NZXTHue2Controller/NZXTHue2ControllerDetect.cpp b/Controllers/NZXTHue2Controller/NZXTHue2ControllerDetect.cpp index e4bf5fc5..9699196a 100644 --- a/Controllers/NZXTHue2Controller/NZXTHue2ControllerDetect.cpp +++ b/Controllers/NZXTHue2Controller/NZXTHue2ControllerDetect.cpp @@ -44,14 +44,13 @@ static void spawn_hue(hid_device_info* info, const std::string& name, int rgb_ch if(dev) { - NZXTHue2Controller* controller = new NZXTHue2Controller(dev, rgb_channels, fan_channels, info->path); + NZXTHue2Controller* controller = new NZXTHue2Controller(dev, rgb_channels, fan_channels, info->path, name); RGBController_NZXTHue2* rgb_controller = new RGBController_NZXTHue2(controller); - rgb_controller->name = name; ResourceManager::get()->RegisterRGBController(rgb_controller); LOG_TRACE("[NZXTHue2Controller] NZXT Controller setup: %s", info->path); } - else + else { LOG_DEBUG("[NZXTHue2Controller] Failed to load device: %s!", info->path); } diff --git a/Controllers/NZXTHue2Controller/RGBController_NZXTHue2.cpp b/Controllers/NZXTHue2Controller/RGBController_NZXTHue2.cpp index d04b8265..590a80cf 100644 --- a/Controllers/NZXTHue2Controller/RGBController_NZXTHue2.cpp +++ b/Controllers/NZXTHue2Controller/RGBController_NZXTHue2.cpp @@ -24,182 +24,182 @@ RGBController_NZXTHue2::RGBController_NZXTHue2(NZXTHue2Controller* controller_ptr) { - controller = controller_ptr; + controller = controller_ptr; - name = "NZXT Hue 2"; - vendor = "NZXT"; - type = DEVICE_TYPE_LEDSTRIP; - description = "NZXT Hue 2 Device"; - version = controller->GetFirmwareVersion(); - location = controller->GetLocation(); - serial = controller->GetSerialString(); + name = controller->GetName(); + vendor = "NZXT"; + type = DEVICE_TYPE_LEDSTRIP; + description = "NZXT Hue 2 Device"; + version = controller->GetFirmwareVersion(); + location = controller->GetLocation(); + serial = controller->GetSerialString(); mode Direct; - Direct.name = "Direct"; - Direct.value = 0xFFFF; - Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR; - Direct.color_mode = MODE_COLORS_PER_LED; + Direct.name = "Direct"; + Direct.value = 0xFFFF; + Direct.flags = MODE_FLAG_HAS_PER_LED_COLOR; + Direct.color_mode = MODE_COLORS_PER_LED; modes.push_back(Direct); mode Static; - Static.name = "Static"; - Static.value = HUE_2_MODE_FIXED; - Static.flags = MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - Static.colors_min = 1; - Static.colors_max = 1; - Static.color_mode = MODE_COLORS_MODE_SPECIFIC; + Static.name = "Static"; + Static.value = HUE_2_MODE_FIXED; + Static.flags = MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + Static.colors_min = 1; + Static.colors_max = 1; + Static.color_mode = MODE_COLORS_MODE_SPECIFIC; Static.colors.resize(1); modes.push_back(Static); mode Fading; - Fading.name = "Fading"; - Fading.value = HUE_2_MODE_FADING; - Fading.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - Fading.speed_min = HUE_2_SPEED_SLOWEST; - Fading.speed_max = HUE_2_SPEED_FASTEST; - Fading.colors_min = 1; - Fading.colors_max = 8; - Fading.speed = HUE_2_SPEED_NORMAL; - Fading.color_mode = MODE_COLORS_MODE_SPECIFIC; + Fading.name = "Fading"; + Fading.value = HUE_2_MODE_FADING; + Fading.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + Fading.speed_min = HUE_2_SPEED_SLOWEST; + Fading.speed_max = HUE_2_SPEED_FASTEST; + Fading.colors_min = 1; + Fading.colors_max = 8; + Fading.speed = HUE_2_SPEED_NORMAL; + Fading.color_mode = MODE_COLORS_MODE_SPECIFIC; Fading.colors.resize(1); modes.push_back(Fading); mode SpectrumCycle; - SpectrumCycle.name = "Spectrum Cycle"; - SpectrumCycle.value = HUE_2_MODE_SPECTRUM; - SpectrumCycle.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR; - SpectrumCycle.speed_min = HUE_2_SPEED_SLOWEST; - SpectrumCycle.speed_max = HUE_2_SPEED_FASTEST; - SpectrumCycle.speed = HUE_2_SPEED_NORMAL; - SpectrumCycle.direction = MODE_DIRECTION_RIGHT; - SpectrumCycle.color_mode = MODE_COLORS_NONE; + SpectrumCycle.name = "Spectrum Cycle"; + SpectrumCycle.value = HUE_2_MODE_SPECTRUM; + SpectrumCycle.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR; + SpectrumCycle.speed_min = HUE_2_SPEED_SLOWEST; + SpectrumCycle.speed_max = HUE_2_SPEED_FASTEST; + SpectrumCycle.speed = HUE_2_SPEED_NORMAL; + SpectrumCycle.direction = MODE_DIRECTION_RIGHT; + SpectrumCycle.color_mode = MODE_COLORS_NONE; modes.push_back(SpectrumCycle); mode Marquee; - Marquee.name = "Marquee"; - Marquee.value = HUE_2_MODE_MARQUEE; - Marquee.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - Marquee.speed_min = HUE_2_SPEED_SLOWEST; - Marquee.speed_max = HUE_2_SPEED_FASTEST; - Marquee.colors_min = 1; - Marquee.colors_max = 1; - Marquee.speed = HUE_2_SPEED_NORMAL; - Marquee.direction = MODE_DIRECTION_RIGHT; - Marquee.color_mode = MODE_COLORS_MODE_SPECIFIC; + Marquee.name = "Marquee"; + Marquee.value = HUE_2_MODE_MARQUEE; + Marquee.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + Marquee.speed_min = HUE_2_SPEED_SLOWEST; + Marquee.speed_max = HUE_2_SPEED_FASTEST; + Marquee.colors_min = 1; + Marquee.colors_max = 1; + Marquee.speed = HUE_2_SPEED_NORMAL; + Marquee.direction = MODE_DIRECTION_RIGHT; + Marquee.color_mode = MODE_COLORS_MODE_SPECIFIC; Marquee.colors.resize(1); modes.push_back(Marquee); mode CoverMarquee; - CoverMarquee.name = "Cover Marquee"; - CoverMarquee.value = HUE_2_MODE_COVER_MARQUEE; - CoverMarquee.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - CoverMarquee.speed_min = HUE_2_SPEED_SLOWEST; - CoverMarquee.speed_max = HUE_2_SPEED_FASTEST; - CoverMarquee.colors_min = 1; - CoverMarquee.colors_max = 8; - CoverMarquee.speed = HUE_2_SPEED_NORMAL; - CoverMarquee.direction = MODE_DIRECTION_RIGHT; - CoverMarquee.color_mode = MODE_COLORS_MODE_SPECIFIC; + CoverMarquee.name = "Cover Marquee"; + CoverMarquee.value = HUE_2_MODE_COVER_MARQUEE; + CoverMarquee.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + CoverMarquee.speed_min = HUE_2_SPEED_SLOWEST; + CoverMarquee.speed_max = HUE_2_SPEED_FASTEST; + CoverMarquee.colors_min = 1; + CoverMarquee.colors_max = 8; + CoverMarquee.speed = HUE_2_SPEED_NORMAL; + CoverMarquee.direction = MODE_DIRECTION_RIGHT; + CoverMarquee.color_mode = MODE_COLORS_MODE_SPECIFIC; CoverMarquee.colors.resize(1); modes.push_back(CoverMarquee); mode Alternating; - Alternating.name = "Alternating"; - Alternating.value = HUE_2_MODE_ALTERNATING; - Alternating.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - Alternating.speed_min = HUE_2_SPEED_SLOWEST; - Alternating.speed_max = HUE_2_SPEED_FASTEST; - Alternating.colors_min = 1; - Alternating.colors_max = 2; - Alternating.speed = HUE_2_SPEED_NORMAL; - Alternating.direction = MODE_DIRECTION_RIGHT; - Alternating.color_mode = MODE_COLORS_MODE_SPECIFIC; + Alternating.name = "Alternating"; + Alternating.value = HUE_2_MODE_ALTERNATING; + Alternating.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + Alternating.speed_min = HUE_2_SPEED_SLOWEST; + Alternating.speed_max = HUE_2_SPEED_FASTEST; + Alternating.colors_min = 1; + Alternating.colors_max = 2; + Alternating.speed = HUE_2_SPEED_NORMAL; + Alternating.direction = MODE_DIRECTION_RIGHT; + Alternating.color_mode = MODE_COLORS_MODE_SPECIFIC; Alternating.colors.resize(1); modes.push_back(Alternating); mode Pulsing; - Pulsing.name = "Pulsing"; - Pulsing.value = HUE_2_MODE_PULSING; - Pulsing.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - Pulsing.speed_min = HUE_2_SPEED_SLOWEST; - Pulsing.speed_max = HUE_2_SPEED_FASTEST; - Pulsing.colors_min = 1; - Pulsing.colors_max = 8; - Pulsing.speed = HUE_2_SPEED_NORMAL; - Pulsing.color_mode = MODE_COLORS_MODE_SPECIFIC; + Pulsing.name = "Pulsing"; + Pulsing.value = HUE_2_MODE_PULSING; + Pulsing.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + Pulsing.speed_min = HUE_2_SPEED_SLOWEST; + Pulsing.speed_max = HUE_2_SPEED_FASTEST; + Pulsing.colors_min = 1; + Pulsing.colors_max = 8; + Pulsing.speed = HUE_2_SPEED_NORMAL; + Pulsing.color_mode = MODE_COLORS_MODE_SPECIFIC; Pulsing.colors.resize(1) ; modes.push_back(Pulsing); mode Breathing; - Breathing.name = "Breathing"; - Breathing.value = HUE_2_MODE_BREATHING; - Breathing.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR | MODE_FLAG_HAS_PER_LED_COLOR; - Breathing.speed_min = HUE_2_SPEED_SLOWEST; - Breathing.speed_max = HUE_2_SPEED_FASTEST; - Breathing.colors_min = 1; - Breathing.colors_max = 8; - Breathing.speed = HUE_2_SPEED_NORMAL; - Breathing.color_mode = MODE_COLORS_MODE_SPECIFIC; + Breathing.name = "Breathing"; + Breathing.value = HUE_2_MODE_BREATHING; + Breathing.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR | MODE_FLAG_HAS_PER_LED_COLOR; + Breathing.speed_min = HUE_2_SPEED_SLOWEST; + Breathing.speed_max = HUE_2_SPEED_FASTEST; + Breathing.colors_min = 1; + Breathing.colors_max = 8; + Breathing.speed = HUE_2_SPEED_NORMAL; + Breathing.color_mode = MODE_COLORS_MODE_SPECIFIC; Breathing.colors.resize( 1); modes.push_back(Breathing); mode Candle; - Candle.name = "Candle"; - Candle.value = HUE_2_MODE_CANDLE; - Candle.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - Candle.speed_min = HUE_2_SPEED_SLOWEST; - Candle.speed_max = HUE_2_SPEED_FASTEST; - Candle.colors_min = 1; - Candle.colors_max = 8; - Candle.speed = HUE_2_SPEED_NORMAL; - Candle.color_mode = MODE_COLORS_MODE_SPECIFIC; + Candle.name = "Candle"; + Candle.value = HUE_2_MODE_CANDLE; + Candle.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + Candle.speed_min = HUE_2_SPEED_SLOWEST; + Candle.speed_max = HUE_2_SPEED_FASTEST; + Candle.colors_min = 1; + Candle.colors_max = 8; + Candle.speed = HUE_2_SPEED_NORMAL; + Candle.color_mode = MODE_COLORS_MODE_SPECIFIC; Candle.colors.resize(1) ; modes.push_back(Candle); mode StarryNight; - StarryNight.name = "Starry Night"; - StarryNight.value = HUE_2_MODE_STARRY_NIGHT; - StarryNight.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; - StarryNight.speed_min = HUE_2_SPEED_SLOWEST; - StarryNight.speed_max = HUE_2_SPEED_FASTEST; - StarryNight.colors_min = 1; - StarryNight.colors_max = 1; - StarryNight.speed = HUE_2_SPEED_NORMAL; - StarryNight.color_mode = MODE_COLORS_MODE_SPECIFIC; + StarryNight.name = "Starry Night"; + StarryNight.value = HUE_2_MODE_STARRY_NIGHT; + StarryNight.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_MODE_SPECIFIC_COLOR; + StarryNight.speed_min = HUE_2_SPEED_SLOWEST; + StarryNight.speed_max = HUE_2_SPEED_FASTEST; + StarryNight.colors_min = 1; + StarryNight.colors_max = 1; + StarryNight.speed = HUE_2_SPEED_NORMAL; + StarryNight.color_mode = MODE_COLORS_MODE_SPECIFIC; StarryNight.colors.resize(1); modes.push_back(StarryNight); mode SuperRainbow; - SuperRainbow.name = "Super Rainbow"; - SuperRainbow.value = HUE_2_MODE_SUPER_RAINBOW; - SuperRainbow.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR; - SuperRainbow.speed_min = HUE_2_SPEED_SLOWEST; - SuperRainbow.speed_max = HUE_2_SPEED_FASTEST; - SuperRainbow.speed = HUE_2_SPEED_NORMAL; - SuperRainbow.direction = MODE_DIRECTION_RIGHT; - SuperRainbow.color_mode = MODE_COLORS_NONE; + SuperRainbow.name = "Super Rainbow"; + SuperRainbow.value = HUE_2_MODE_SUPER_RAINBOW; + SuperRainbow.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR; + SuperRainbow.speed_min = HUE_2_SPEED_SLOWEST; + SuperRainbow.speed_max = HUE_2_SPEED_FASTEST; + SuperRainbow.speed = HUE_2_SPEED_NORMAL; + SuperRainbow.direction = MODE_DIRECTION_RIGHT; + SuperRainbow.color_mode = MODE_COLORS_NONE; modes.push_back(SuperRainbow); mode RainbowPulse; - RainbowPulse.name = "Rainbow Pulse"; - RainbowPulse.value = HUE_2_MODE_RAINBOW_PULSE; - RainbowPulse.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR; - RainbowPulse.speed_min = HUE_2_SPEED_SLOWEST; - RainbowPulse.speed_max = HUE_2_SPEED_FASTEST; - RainbowPulse.speed = HUE_2_SPEED_NORMAL; - RainbowPulse.direction = MODE_DIRECTION_RIGHT; - RainbowPulse.color_mode = MODE_COLORS_NONE; + RainbowPulse.name = "Rainbow Pulse"; + RainbowPulse.value = HUE_2_MODE_RAINBOW_PULSE; + RainbowPulse.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR; + RainbowPulse.speed_min = HUE_2_SPEED_SLOWEST; + RainbowPulse.speed_max = HUE_2_SPEED_FASTEST; + RainbowPulse.speed = HUE_2_SPEED_NORMAL; + RainbowPulse.direction = MODE_DIRECTION_RIGHT; + RainbowPulse.color_mode = MODE_COLORS_NONE; modes.push_back(RainbowPulse); mode RainbowFlow; - RainbowFlow.name = "Rainbow Flow"; - RainbowFlow.value = HUE_2_MODE_RAINBOW_FLOW; - RainbowFlow.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR; - RainbowFlow.speed_min = HUE_2_SPEED_SLOWEST; - RainbowFlow.speed_max = HUE_2_SPEED_FASTEST; - RainbowFlow.speed = HUE_2_SPEED_NORMAL; - RainbowFlow.direction = MODE_DIRECTION_RIGHT; - RainbowFlow.color_mode = MODE_COLORS_NONE; + RainbowFlow.name = "Rainbow Flow"; + RainbowFlow.value = HUE_2_MODE_RAINBOW_FLOW; + RainbowFlow.flags = MODE_FLAG_HAS_SPEED | MODE_FLAG_HAS_DIRECTION_LR; + RainbowFlow.speed_min = HUE_2_SPEED_SLOWEST; + RainbowFlow.speed_max = HUE_2_SPEED_FASTEST; + RainbowFlow.speed = HUE_2_SPEED_NORMAL; + RainbowFlow.direction = MODE_DIRECTION_RIGHT; + RainbowFlow.color_mode = MODE_COLORS_NONE; modes.push_back(RainbowFlow); SetupZones();