substrate

package
v0.8.0 Latest Latest
Warning

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

Go to latest
Published: Aug 17, 2026 License: AGPL-3.0-or-later Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type LinuxHardwareDriver

type LinuxHardwareDriver struct {
	// contains filtered or unexported fields
}

func NewLinuxHardwareDriver

func NewLinuxHardwareDriver(maxTemp float64) *LinuxHardwareDriver

NewLinuxHardwareDriver initializes the driver targeting the primary CPU thermal zone.

func (*LinuxHardwareDriver) EvaluateInterlock

func (d *LinuxHardwareDriver) EvaluateInterlock(metrics map[string]float64) (bool, error)

func (*LinuxHardwareDriver) ID

func (d *LinuxHardwareDriver) ID() string

func (*LinuxHardwareDriver) Initialize

func (d *LinuxHardwareDriver) Initialize(ctx context.Context, config map[string]any) error

func (*LinuxHardwareDriver) Name

func (d *LinuxHardwareDriver) Name() string

func (*LinuxHardwareDriver) ReadCurrentTemperature

func (d *LinuxHardwareDriver) ReadCurrentTemperature() (float64, error)

ReadCurrentTemperature parses raw millidegrees Celsius from Linux sysfs

func (*LinuxHardwareDriver) Shutdown

func (d *LinuxHardwareDriver) Shutdown(ctx context.Context) error

type SubstrateDriver

type SubstrateDriver interface {
	ID() string
	Name() string
	Initialize(ctx context.Context, config map[string]any) error
	EvaluateInterlock(metrics map[string]float64) (bool, error) // Returns true if safety breached
	Shutdown(ctx context.Context) error
}

SubstrateDriver defines the interface that all hardware modules (open-source or proprietary) must fulfill.

func LoadPlugin

func LoadPlugin(path string) (SubstrateDriver, error)

LoadPlugin dynamically loads external binary plugins (.so files) at runtime.

Jump to

Keyboard shortcuts

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