Add basic FanCurve implementation, docs

This commit is contained in:
2022-09-27 23:43:20 +02:00
parent 0e75299c20
commit 05b35a9cea
3 changed files with 85 additions and 16 deletions

View File

@@ -56,36 +56,33 @@ class FanGenerator
+ FanList FindFans(List<RPMSensor>, List<PWMControl>)
}
struct Coordinate
struct FanStep
{
int X
int Y
}
enum SensorAggregateFunction
{
MIN
MAX
AVG
int Temp
int Percent
}
class FanCurve
{
- List<Coordinate> Steps
- List<FanStep> Steps
- List<Sensor> TempSensor
- SensorAggregateFunction Fun
- HWMONFan Fan
- List<HWMONFan> Fan
+ int TargetPWMPercent()
+ DoFanControl()
}
class FanController
{
- List<HWMONFan>
- List<FanCurve>
+ void StartFanControlLoop()
}
class ConfigManager
{
}
HWMONFan -- Sensor
HWMONFan -- PWMControl
HWMONFan - FanCurve
@@ -107,7 +104,7 @@ FanGenerator - SensorManager
FanGenerator - PWMControl
Sensor - FanCurve
FanCurve -- Coordinate
FanCurve -- FanStep
FanCurve -- SensorAggregateFunction
FanController -- FanCurve