Files

31 lines
638 B
Go

package telemetry
type RPMLights struct {
State string
}
func NewRPMLights() *RPMLights {
return &RPMLights{
State: "WHITE",
}
}
func (rl *RPMLights) Process(td *TelemetryData) {
curRPM := td.Values[RPM].Raw
td.Values[RPMStateColour].Type = DataTypeSTRING
if curRPM >= 2000 && curRPM < 4000 {
td.Values[RPMStateColour].Str = "GREEN"
} else if curRPM >= 4000 && curRPM < 6000 {
td.Values[RPMStateColour].Str = "YELLOW"
} else if curRPM >= 6000 {
td.Values[RPMStateColour].Str = "RED"
} else {
td.Values[RPMStateColour].Str = "WHITE"
}
}
func (rl *RPMLights) EnsureSubscribed() []FieldID {
return []FieldID{RPM}
}