Cleanup, more documentation

This commit is contained in:
2022-09-27 22:50:01 +02:00
parent df943620d6
commit 0e75299c20
5 changed files with 52 additions and 18 deletions

View File

@@ -4,7 +4,7 @@ interface Sensor {
}
class LMSensor {
- Identifier: string
- string Label
+ int Value()
}
@@ -14,19 +14,23 @@ class GPUSensor {
}
class HWMONFan {
- Identifier: string
- RPMSensor: Sensor
- PWMControl: PWMControl
- string Label
- Sensor RPMSensor
- PWMControl PWMControl
+ int RPM()
+ void PWM(value: int)
+ void PWMPercent(int value)
}
class PWMControl {
+ void PWM(value: int)
+ void PWMPercent(int value)
+ int PWM()
}
class PWMControlFacade {
+ List<PWMControl> PWMControls()
}
class LMSensorsFacade
{
+ List<Sensor> RPMSensors()
@@ -52,8 +56,41 @@ class FanGenerator
+ FanList FindFans(List<RPMSensor>, List<PWMControl>)
}
struct Coordinate
{
int X
int Y
}
enum SensorAggregateFunction
{
MIN
MAX
AVG
}
class FanCurve
{
- List<Coordinate> Steps
- List<Sensor> TempSensor
- SensorAggregateFunction Fun
- HWMONFan Fan
+ int TargetPWMPercent()
}
class FanController
{
- List<HWMONFan>
+ void StartFanControlLoop()
}
HWMONFan -- Sensor
HWMONFan -- PWMControl
HWMONFan - FanCurve
PWMControl -- PWMControlFacade
Sensor <|-- LMSensor
Sensor <|-- GPUSensor
@@ -68,4 +105,10 @@ GPUSensorsFacade -- SensorManager
FanGenerator - HWMONFan
FanGenerator - SensorManager
FanGenerator - PWMControl
Sensor - FanCurve
FanCurve -- Coordinate
FanCurve -- SensorAggregateFunction
FanController -- FanCurve
@enduml