Files
finally-a-monolithic-linux-…/app/mem/mem.go
T
2026-08-07 09:29:17 -07:00

37 lines
688 B
Go

package mem
import (
"finally-a-monolithic-linux-hw-monitor/app/common"
"finally-a-monolithic-linux-hw-monitor/app/mem/drivers"
"fmt"
"strings"
)
func (mem *Mem) Render(console *strings.Builder) {
fmt.Fprintf(console, "=== %s ===\n", "Memory")
for _, driver := range mem.drivers {
driver.Render(console)
}
}
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
}