1- using System . Text . Json . Serialization ;
2- using LibreHardwareMonitor . Hardware ;
1+ using LibreHardwareMonitor . Hardware ;
32
43namespace HardwareMonitor . SharedMemory ;
54
@@ -36,9 +35,19 @@ public class SharedMemoryHardware
3635 public required string Identifier { get ; set ; }
3736 public required HardwareType HardwareType { get ; set ; }
3837
39- public bool ShouldSerializeHardware ( )
38+ private bool _isActive = true ;
39+
40+ public void Update ( )
4041 {
41- return false ;
42+ if ( _isActive )
43+ {
44+ Hardware . Update ( ) ;
45+ }
46+ }
47+
48+ public void StopUpdates ( )
49+ {
50+ _isActive = false ;
4251 }
4352}
4453
@@ -50,24 +59,11 @@ public class SharedMemorySensor
5059 public required string HardwareIdentifier { get ; set ; }
5160 public required SensorType SensorType { get ; set ; }
5261 public required float Value { get ; set ; }
53-
54- public bool ShouldSerializeSensor ( )
55- {
56- return false ;
57- }
5862} ;
5963
6064public class SharedMemoryData
6165{
6266 public long LastPollTime { get ; set ; }
6367 public List < SharedMemoryHardware > Hardwares { get ; set ; } = [ ] ;
6468 public List < SharedMemorySensor > Sensors { get ; set ; } = [ ] ;
65- }
66-
67- [ JsonSourceGenerationOptions ( WriteIndented = false , GenerationMode = JsonSourceGenerationMode . Serialization ) ]
68- [ JsonSerializable ( typeof ( SharedMemoryData ) ) ]
69- [ JsonSerializable ( typeof ( SharedMemorySensor ) ) ]
70- [ JsonSerializable ( typeof ( SharedMemoryHardware ) ) ]
71- internal partial class SerializeContext : JsonSerializerContext
72- {
7369}
0 commit comments