simplified a bit how the TelemetryField updaters work

- now we only use one function to update the TelemetryField instead
of having to fetch data and then update it.

Still need to update the iRacing provider to use this pattern. Way
better and creates better units.

Got rid of that stupid long ass switch statement too
This commit is contained in:
2026-07-07 17:52:47 +01:00
parent 94ba0e2539
commit 0887fbfd75
6 changed files with 181 additions and 281 deletions
+8 -8
View File
@@ -259,26 +259,26 @@ func (i *IRacing) Subscribe(requestFields map[int16]telemetry.FieldID) {
out.Raw = uint64(uint16(v.(float32)))
}
case telemetry.FuelLevel:
binding.Transform = telemetry.FloatToStringTransform
binding.Transform = telemetry.FloatToStringTransformDEPRECATE
// Engine Data
case telemetry.OilPress:
binding.Transform = telemetry.FloatToStringTransform
binding.Transform = telemetry.FloatToStringTransformDEPRECATE
case telemetry.OilTemp:
binding.Transform = telemetry.FloatToStringTransform
binding.Transform = telemetry.FloatToStringTransformDEPRECATE
case telemetry.WaterTemp:
binding.Transform = telemetry.FloatToStringTransform
binding.Transform = telemetry.FloatToStringTransformDEPRECATE
// Something else
case telemetry.PitSpeedLimiter:
binding.Transform = PitSpeedLimiterTransform
// Adjustements
case telemetry.BrakeBias:
binding.Transform = telemetry.FloatToStringTransform
binding.Transform = telemetry.FloatToStringTransformDEPRECATE
case telemetry.ABSSetting:
binding.Transform = telemetry.FloatToUInt8Transform
binding.Transform = telemetry.FloatToUInt8TransformDEPRECATE
case telemetry.TCSetting:
binding.Transform = telemetry.FloatToUInt8Transform
binding.Transform = telemetry.FloatToUInt8TransformDEPRECATE
case telemetry.ThrottleSetting:
binding.Transform = telemetry.FloatToUInt8Transform
binding.Transform = telemetry.FloatToUInt8TransformDEPRECATE
case telemetry.LFtempM:
binding.Transform = func(v any, out *telemetry.TelemetryField) {
out.Type = telemetry.DataTypeSTRING