diff --git a/Controllers/GigabyteRGBFusion2GPUController/GigabyteRGBFusion2GPUController.cpp b/Controllers/GigabyteRGBFusion2GPUController/GigabyteRGBFusion2GPUController.cpp index b24cb233..cb0e66b5 100644 --- a/Controllers/GigabyteRGBFusion2GPUController/GigabyteRGBFusion2GPUController.cpp +++ b/Controllers/GigabyteRGBFusion2GPUController/GigabyteRGBFusion2GPUController.cpp @@ -19,11 +19,6 @@ RGBFusion2GPUController::RGBFusion2GPUController(i2c_smbus_interface* bus, rgb_f { this->bus = bus; this->dev = dev; - - for(uint8_t i = 0; i < 4; i++) - { - zone_led_count[i] = 1; - } } RGBFusion2GPUController::~RGBFusion2GPUController() diff --git a/Controllers/GigabyteRGBFusion2GPUController/GigabyteRGBFusion2GPUController.h b/Controllers/GigabyteRGBFusion2GPUController/GigabyteRGBFusion2GPUController.h index 8a2ee9dc..fd5616ae 100644 --- a/Controllers/GigabyteRGBFusion2GPUController/GigabyteRGBFusion2GPUController.h +++ b/Controllers/GigabyteRGBFusion2GPUController/GigabyteRGBFusion2GPUController.h @@ -63,14 +63,7 @@ public: RGBFusion2GPUController(i2c_smbus_interface* bus, rgb_fusion_dev_id dev); ~RGBFusion2GPUController(); - uint8_t zone_led_count[4]; - uint8_t zone_modes[4]; - std::string GetDeviceLocation(); - - void GetDeviceModes(); - uint8_t GetZoneMode(uint8_t zone); - fusion2_config GetZoneConfig(uint8_t zone, uint8_t mode); void SaveConfig(); void SetZone(uint8_t zone, uint8_t mode, fusion2_config zone_config); diff --git a/Controllers/GigabyteRGBFusion2GPUController/RGBController_GigabyteRGBFusion2GPU.cpp b/Controllers/GigabyteRGBFusion2GPUController/RGBController_GigabyteRGBFusion2GPU.cpp index 240e5922..959be4cc 100644 --- a/Controllers/GigabyteRGBFusion2GPUController/RGBController_GigabyteRGBFusion2GPU.cpp +++ b/Controllers/GigabyteRGBFusion2GPUController/RGBController_GigabyteRGBFusion2GPU.cpp @@ -10,14 +10,6 @@ #include "RGBController_GigabyteRGBFusion2GPU.h" -static const char* gigabyte_fusion2_gpu_zone[] = -{ - "gpu zone 1", - "gpu zone 2", - "gpu zone 3", - "gpu zone 4" -}; - /**------------------------------------------------------------------*\ @name Gigabyte Fusion 2 GPU @category GPU @@ -157,6 +149,7 @@ RGBController_RGBFusion2GPU::RGBController_RGBFusion2GPU(RGBFusion2GPUController Tricolor.brightness_max = RGB_FUSION2_GPU_BRIGHTNESS_MAX; Tricolor.brightness = RGB_FUSION2_GPU_BRIGHTNESS_MAX; modes.push_back(Tricolor); + SetupZones(); } @@ -165,18 +158,6 @@ RGBController_RGBFusion2GPU::~RGBController_RGBFusion2GPU() delete controller; } -uint8_t RGBController_RGBFusion2GPU::getModeIndex(uint8_t mode_value) -{ - for (uint8_t mode_index = 0; mode_index < modes.size(); mode_index++) - { - if (modes[mode_index].value == mode_value) - { - return mode_index; - } - } - return 0; -} - void RGBController_RGBFusion2GPU::SetupZones() { /*---------------------------------------------------------*\ @@ -184,31 +165,26 @@ void RGBController_RGBFusion2GPU::SetupZones() | LED's in the zone and does not allow per LED control. | \*---------------------------------------------------------*/ - //controller->GetDeviceModes(); - - for(uint8_t zone_idx = 0; zone_idx < 4; zone_idx++) + for(uint8_t zone_idx = 0; zone_idx < RGB_FUSION_2_GPU_NUMBER_OF_ZONES; zone_idx++) { - if(controller->zone_led_count[zone_idx] > 0) - { - zone* new_zone = new zone(); - led* new_led = new led(); + zone new_zone; + led new_led; - new_zone->name = gigabyte_fusion2_gpu_zone[zone_idx]; - new_zone->type = ZONE_TYPE_SINGLE; - new_zone->leds_min = controller->zone_led_count[zone_idx]; - new_zone->leds_max = new_zone->leds_min; - new_zone->leds_count = new_zone->leds_min; - new_zone->matrix_map = NULL; + new_zone.name = "GPU zone " + std::to_string(zone_idx + 1); + new_zone.type = ZONE_TYPE_SINGLE; + new_zone.leds_min = 1; + new_zone.leds_max = 1; + new_zone.leds_count = 1; + new_zone.matrix_map = NULL; - new_led->name = gigabyte_fusion2_gpu_zone[zone_idx]; - /*---------------------------------------------------------*\ - | Push the zone and LED on to device vectors | - \*---------------------------------------------------------*/ - leds.push_back(*new_led); - zones.push_back(*new_zone); - zoneIndexMap.push_back(zone_idx); - } + new_led.name = new_zone.name; + /*---------------------------------------------------------*\ + | Push the zone and LED on to device vectors | + \*---------------------------------------------------------*/ + leds.push_back(new_led); + zones.push_back(new_zone); } + SetupColors(); } @@ -223,12 +199,12 @@ void RGBController_RGBFusion2GPU::DeviceUpdateLEDs() { fusion2_config zone_config; - zone_config.brightness = modes[active_mode].brightness; - zone_config.speed = modes[active_mode].speed; - zone_config.direction = modes[active_mode].direction; - zone_config.numberOfColors = (uint8_t)modes[active_mode].colors.size(); + zone_config.brightness = modes[active_mode].brightness; + zone_config.speed = modes[active_mode].speed; + zone_config.direction = modes[active_mode].direction; + zone_config.numberOfColors = (uint8_t)modes[active_mode].colors.size(); - for (uint8_t zone_idx = 0; zone_idx < zoneIndexMap.size(); zone_idx++) + for(uint8_t zone_idx = 0; zone_idx < RGB_FUSION_2_GPU_NUMBER_OF_ZONES; zone_idx++) { zone_config.colors[0] = colors[zone_idx]; @@ -240,7 +216,7 @@ void RGBController_RGBFusion2GPU::DeviceUpdateLEDs() } } - controller->SetZone(zoneIndexMap[zone_idx], modes[active_mode].value, zone_config); + controller->SetZone(zone_idx, modes[active_mode].value, zone_config); } } diff --git a/Controllers/GigabyteRGBFusion2GPUController/RGBController_GigabyteRGBFusion2GPU.h b/Controllers/GigabyteRGBFusion2GPUController/RGBController_GigabyteRGBFusion2GPU.h index 895c821f..9d0df512 100644 --- a/Controllers/GigabyteRGBFusion2GPUController/RGBController_GigabyteRGBFusion2GPU.h +++ b/Controllers/GigabyteRGBFusion2GPUController/RGBController_GigabyteRGBFusion2GPU.h @@ -13,6 +13,8 @@ #include "RGBController.h" #include "GigabyteRGBFusion2GPUController.h" +#define RGB_FUSION_2_GPU_NUMBER_OF_ZONES 4 + class RGBController_RGBFusion2GPU : public RGBController { public: @@ -31,8 +33,5 @@ public: void DeviceSaveMode(); private: - uint8_t getModeIndex(uint8_t mode_value); - RGBFusion2GPUController* controller; - std::vector zoneIndexMap; };