public OpenHardwareTest() { var x = new Computer(); x.CPUEnabled = true; x.MainboardEnabled = true; x.FanControllerEnabled = true; x.GPUEnabled = true; x.HDDEnabled = true; x.RAMEnabled = true; x.Open(); var report = x.GetReport(); var tempString = ""; var y = new OpenHardwareMonitor.Hardware.SensorVisitor(sensor => { var z = sensor; if (sensor.SensorType == SensorType.Temperature) { tempString += $"{sensor.Name} temp: {sensor.Value}{Environment.NewLine}"; } }); x.Traverse(y); }
private bool OpenExistingLogFile() { if (!File.Exists(fileName)) return false; try { String line; using (StreamReader reader = new StreamReader(fileName)) line = reader.ReadLine(); if (string.IsNullOrEmpty(line)) return false; identifiers = line.Split(',').Skip(1).ToArray(); } catch { identifiers = null; return false; } if (identifiers.Length == 0) { identifiers = null; return false; } sensors = new ISensor[identifiers.Length]; SensorVisitor visitor = new SensorVisitor(sensor => { for (int i = 0; i < identifiers.Length; i++) if (sensor.Identifier.ToString() == identifiers[i]) sensors[i] = sensor; }); visitor.VisitComputer(computer); return true; }
private void CreateNewLogFile() { IList<ISensor> list = new List<ISensor>(); SensorVisitor visitor = new SensorVisitor(sensor => { list.Add(sensor); }); visitor.VisitComputer(computer); sensors = list.ToArray(); identifiers = sensors.Select(s => s.Identifier.ToString()).ToArray(); using (StreamWriter writer = new StreamWriter(fileName, false)) { writer.Write(","); for (int i = 0; i < sensors.Length; i++) { writer.Write(sensors[i].Identifier); if (i < sensors.Length - 1) writer.Write(","); else writer.WriteLine(); } writer.Write("Time,"); for (int i = 0; i < sensors.Length; i++) { writer.Write('"'); writer.Write(sensors[i].Name); writer.Write('"'); if (i < sensors.Length - 1) writer.Write(","); else writer.WriteLine(); } } }