Files
2026-08-07 17:02:27 -07:00

35 lines
638 B
Go

package mem
import (
"finally-a-monolithic-linux-hw-monitor/app/common"
"finally-a-monolithic-linux-hw-monitor/app/mem/drivers"
)
type Mem struct {
drivers []common.Driver
}
func GetMem() (Mem, error) {
mem := Mem{}
mem.drivers = []common.Driver{}
meminfo, err := drivers.NewMemInfoDriver()
if err == nil {
mem.drivers = append(mem.drivers, meminfo)
}
dmidecode, err := drivers.NewDmiDecodeDriver()
if err == nil {
mem.drivers = append(mem.drivers, dmidecode)
}
return mem, nil
}
func (mem *Mem) Render(term common.Terminal) {
term.Header("Memory")
for _, driver := range mem.drivers {
driver.Render(term)
}
}