[][src]Crate libmedium

A library that lets you use lm_sensor's sysfs interface from rust.

Similar to libsensors this library lets you use the various sensors in your system.

#Examples

Print the temperature of all the temp sensors in your system:

use libmedium::{
    Hwmon, Hwmons,
    sensors::{Sensor, SensorBase},
};

let hwmons = Hwmons::parse_read_only().unwrap();
for (hwmon_index, hwmon_name, hwmon) in &hwmons {
    println!("hwmon{} with name {}:", hwmon_index, hwmon_name);
    for (_, temp_sensor) in hwmon.temps() {
        let temperature = temp_sensor.read_input().unwrap();
        println!("\t{}: {}", temp_sensor.name(), temperature);
    }
}

Set the pwm value of all your pwm capable fans to full speed:

use libmedium::{
    Hwmon, Hwmons,
    sensors::PwmSensor,
    units::{Pwm, PwmEnable},
};

let hwmons = Hwmons::parse_read_write().unwrap();
for (_, _, hwmon) in &hwmons {
    for (_, pwm) in hwmon.pwms() {
        pwm.write_enable(PwmEnable::ManualControl).unwrap();
        pwm.write_pwm(Pwm::from_percent(100.0)).unwrap();
    }
}

Re-exports

pub use hwmon::Hwmon;

Modules

hwmon

Module containing the Hwmon struct and related functionality.

sensors

Module containing the sensors and their functionality.

units

Units used in this library.

Structs

Hwmons

This crate's central struct. It stores all parsed hwmons which you can query either by name or by index.

Iter

An iterator over all parsed hwmons.

Enums

ParsingError