darwinsmc

package module
v0.0.0-...-bf720cf Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 29, 2024 License: BSD-3-Clause Imports: 4 Imported by: 0

README

This is a purego port of the Darwin sensors package from gopsutil, which means it's cgo-free.

How to use

package main

import (
	"fmt"
	"sort"

	"github.com/uubulb/darwinsmc"
)

type SensorTemperature struct {
	Name        string
	Temperature float64
}

func main() {
	sensorMap, err := darwinsmc.GetThermals()
	if err != nil {
		fmt.Printf("GetThermals error: %v\n", err)
		return
	}

	tempStat := []SensorTemperature{}
	for key, value := range sensorMap {
		if value > 0 {
			tempStat = append(tempStat, SensorTemperature{
				Name:        key,
				Temperature: value,
			})
		}
	}

	sort.Slice(tempStat, func(i, j int) bool {
		return tempStat[i].Name < tempStat[j].Name
	})

	fmt.Println("Sorted struct:", tempStat)
}

Documentation

Rendered for darwin/amd64

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetThermals

func GetThermals() (map[string]float64, error)

Types

This section is empty.

Directories

Path Synopsis
internal
smc

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL