From 8325f2f3c696d664af0db9d57003120e1f801e24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20Rasmussen?= Date: Thu, 30 Sep 2021 20:36:41 +0200 Subject: [PATCH] Refactor temperature struct --- pkg/temperature/ds18b20.go | 13 +++---------- pkg/temperature/temperature.go | 13 +++++++++++++ 2 files changed, 16 insertions(+), 10 deletions(-) create mode 100644 pkg/temperature/temperature.go diff --git a/pkg/temperature/ds18b20.go b/pkg/temperature/ds18b20.go index 3d9c14b..52045a3 100644 --- a/pkg/temperature/ds18b20.go +++ b/pkg/temperature/ds18b20.go @@ -13,12 +13,6 @@ import ( "github.com/rs/zerolog/log" ) -type TemperatureReading struct { - Sensor string - Time time.Time - Value int64 -} - var ( ErrReadSensor = errors.New("Failed to read sensor temperature") @@ -43,7 +37,6 @@ func SetSensors(newSensors []string) { } func Serve(ctx context.Context, wg *sync.WaitGroup) { - wg.Add(1) defer wg.Done() for { @@ -83,9 +76,9 @@ func readSensors() { Observe(dur) C <- &TemperatureReading{ - Time: time.Now(), - Sensor: sensor, - Value: t, + Time: time.Now(), + Sensor: sensor, + MilliDegrees: t, } } } diff --git a/pkg/temperature/temperature.go b/pkg/temperature/temperature.go new file mode 100644 index 0000000..d471f2e --- /dev/null +++ b/pkg/temperature/temperature.go @@ -0,0 +1,13 @@ +package temperature + +import "time" + +type TemperatureReading struct { + Sensor string + Time time.Time + MilliDegrees int64 +} + +func (t *TemperatureReading) Degrees() float64 { + return float64(t.MilliDegrees) / 1000.0 +}