예제 #1
0
파일: linux.go 프로젝트: vbatts/power_info
func (b *Battery) ChargeFull() int64 {
	var str string
	if helper.IsFile(psp(b.Key, "energy_full")) {
		str, _ = helper.StringFromFile(psp(b.Key, "energy_full"))
	} else {
		str, _ = helper.StringFromFile(psp(b.Key, "charge_full"))
	}
	i, _ := strconv.ParseInt(str, 10, 64)
	return i
}
예제 #2
0
파일: linux.go 프로젝트: vbatts/power_info
func (g *GenericPowerSupply) GetInfo() (*Info, error) {
	info := Info{
		Key:     g.Key,
		Time:    time.Now().UnixNano(),
		Values:  map[string]string{},
		Load:    GetLoadAvg(),
		Version: GetVersion(),
	}
	files, err := filepath.Glob(filepath.Join(PowerSupplyPath, g.Key, "*"))
	if err != nil {
		return nil, err
	}
	for _, file := range files {
		if helper.IsFile(file) {
			if str, err := helper.StringFromFile(file); err == nil {
				info.Values[filepath.Base(file)] = str
			}
		}
	}

	return &info, nil
}