mirror of
https://github.com/CalcProgrammer1/OpenRGB.git
synced 2025-12-28 17:57:51 -05:00
55 lines
1.5 KiB
C++
55 lines
1.5 KiB
C++
/*-----------------------------------------*\
|
|
| FanController_NZXTHue2.cpp |
|
|
| |
|
|
| Generic Fan Interface for NZXT Hue 2 |
|
|
| (Smart Device V2, Fan & RGB) controller |
|
|
| |
|
|
| Adam Honse (CalcProgrammer1) 6/22/2020 |
|
|
\*-----------------------------------------*/
|
|
|
|
#include "FanController_NZXTHue2.h"
|
|
|
|
FanController_NZXTHue2::FanController_NZXTHue2(NZXTHue2Controller* hue2_ptr)
|
|
{
|
|
hue2 = hue2_ptr;
|
|
|
|
name = "NZXT Hue 2 Device";
|
|
description = "NZXT Hue 2 Device";
|
|
version = hue2->GetFirmwareVersion();
|
|
|
|
for(std::size_t fan_index = 0; fan_index < hue2->GetNumFanChannels(); fan_index++)
|
|
{
|
|
fan new_fan;
|
|
|
|
hue2->UpdateStatus();
|
|
|
|
new_fan.name = "NZXT Fan ";
|
|
new_fan.name.append(std::to_string(fan_index + 1));
|
|
new_fan.speed_min = 0;
|
|
new_fan.speed_max = 100;
|
|
new_fan.speed_cmd = hue2->GetFanCommand(fan_index);
|
|
new_fan.rpm_rdg = hue2->GetFanRPM(fan_index);
|
|
|
|
fans.push_back(new_fan);
|
|
}
|
|
|
|
UpdateControl();
|
|
}
|
|
|
|
void FanController_NZXTHue2::UpdateControl()
|
|
{
|
|
for(std::size_t fan_index = 0; fan_index < fans.size(); fan_index++)
|
|
{
|
|
hue2->SendFan(fan_index, 0, fans[fan_index].speed_cmd);
|
|
}
|
|
}
|
|
|
|
void FanController_NZXTHue2::UpdateReading()
|
|
{
|
|
hue2->UpdateStatus();
|
|
|
|
for(std::size_t fan_index = 0; fan_index < fans.size(); fan_index++)
|
|
{
|
|
fans[fan_index].rpm_rdg = hue2->GetFanRPM(fan_index);
|
|
}
|
|
} |