summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorScott Murray <scott.murray@konsulko.com>2024-08-15 15:54:01 -0400
committerScott Murray <scott.murray@konsulko.com>2024-08-19 13:42:24 +0000
commit1e99e3a52f3d4d81d7cc890630ac591d38f731df (patch)
tree8efe4e7896ba5455f9c7d8b265952ccc66b36009
parent6188a4c545e6e6794eba943431ec20108553b98f (diff)
Fix engine speed signal type
Update use of the VSS engine speed (RPM) signal to match the fix done to the AGL VSS overlays to restore the upstream integer data type. Bug-AGL: SPEC-5204 Change-Id: I1993cf291cdc2ca056f4fb2b389ef4eee5558473 Signed-off-by: Scott Murray <scott.murray@konsulko.com> (cherry picked from commit 3ef28eeae6e3336232ab13d0d934aa82892dfe74)
-rw-r--r--lib/data/data_providers/hybrid_notifier.dart4
-rw-r--r--lib/data/data_providers/vehicle_notifier.dart6
-rw-r--r--lib/data/models/vehicle.dart10
-rw-r--r--lib/presentation/screens/dashboard/widgets/circle_indicator.dart2
4 files changed, 11 insertions, 11 deletions
diff --git a/lib/data/data_providers/hybrid_notifier.dart b/lib/data/data_providers/hybrid_notifier.dart
index 51a65fe..f5431f8 100644
--- a/lib/data/data_providers/hybrid_notifier.dart
+++ b/lib/data/data_providers/hybrid_notifier.dart
@@ -47,7 +47,7 @@ class HybridNotifier extends StateNotifier<Hybrid> {
}
}
- void updateHybridState(double speed, double engineSpeed, bool brake) {
+ void updateHybridState(double speed, int engineSpeed, bool brake) {
// Variable to store the current state
HybridState currentState = state.hybridState;
@@ -58,7 +58,7 @@ class HybridNotifier extends StateNotifier<Hybrid> {
double avgSpeed = 0.0;
// Variable for storing the average value of RPM
- double avgRpm = 0.0;
+ double avgRpm = 0;
if (speed == 0 && engineSpeed <= 600) {
// Set idle state.
diff --git a/lib/data/data_providers/vehicle_notifier.dart b/lib/data/data_providers/vehicle_notifier.dart
index fb2de19..6583f9a 100644
--- a/lib/data/data_providers/vehicle_notifier.dart
+++ b/lib/data/data_providers/vehicle_notifier.dart
@@ -54,8 +54,8 @@ class VehicleNotifier extends Notifier<Vehicle> {
}
break;
case VSSPath.vehicleEngineSpeed:
- if (entry.value.hasFloat()) {
- state = state.copyWith(engineSpeed: entry.value.float);
+ if (entry.value.hasUint32()) {
+ state = state.copyWith(engineSpeed: entry.value.uint32);
}
break;
case VSSPath.vehicleFrontLeftTire:
@@ -274,7 +274,7 @@ class VehicleNotifier extends Notifier<Vehicle> {
var range = state.range;
var psi = state.frontLeftTire;
var actualSpeed = 0.0;
- var actualRpm = 0.0;
+ var actualRpm = 0;
var actualFuelLevel = 0.0;
var actualInsideTemp = 0.0;
var actualOutsideTemp = 0.0;
diff --git a/lib/data/models/vehicle.dart b/lib/data/models/vehicle.dart
index dfeae05..0f1031b 100644
--- a/lib/data/models/vehicle.dart
+++ b/lib/data/models/vehicle.dart
@@ -5,7 +5,7 @@ import '../../export.dart';
@immutable
class Vehicle {
final double speed;
- final double engineSpeed;
+ final int engineSpeed;
final double insideTemperature;
final double outsideTemperature;
final int range;
@@ -94,7 +94,7 @@ class Vehicle {
Vehicle copyWith({
double? speed,
- double? engineSpeed,
+ int? engineSpeed,
double? insideTemperature,
double? outsideTemperature,
int? range,
@@ -166,7 +166,7 @@ class Vehicle {
factory Vehicle.fromMap(Map<String, dynamic> map) {
return Vehicle(
map['speed']?.toDouble() ?? 0.0,
- map['engineSpeed']?.toDouble() ?? 0.0,
+ map['engineSpeed']?.toInt() ?? 0,
map['insideTemperature']?.toDouble() ?? 0.0,
map['outsideTemperature']?.toDouble() ?? 0.0,
map['range']?.toInt() ?? 0,
@@ -204,13 +204,13 @@ class Vehicle {
return other is Vehicle &&
other.speed == speed &&
+ other.engineSpeed == engineSpeed &&
other.insideTemperature == insideTemperature &&
other.outsideTemperature == outsideTemperature &&
other.range == range &&
other.fuelLevel == fuelLevel &&
other.isChildLockActiveLeft == isChildLockActiveLeft &&
other.isChildLockActiveRight == isChildLockActiveRight &&
- other.engineSpeed == engineSpeed &&
other.frontLeftTire == frontLeftTire &&
other.frontRightTire == frontRightTire &&
other.rearLeftTire == rearLeftTire &&
@@ -228,13 +228,13 @@ class Vehicle {
@override
int get hashCode {
return speed.hashCode ^
+ engineSpeed.hashCode ^
insideTemperature.hashCode ^
outsideTemperature.hashCode ^
range.hashCode ^
fuelLevel.hashCode ^
isChildLockActiveLeft.hashCode ^
isChildLockActiveRight.hashCode ^
- engineSpeed.hashCode ^
frontLeftTire.hashCode ^
frontRightTire.hashCode ^
rearLeftTire.hashCode ^
diff --git a/lib/presentation/screens/dashboard/widgets/circle_indicator.dart b/lib/presentation/screens/dashboard/widgets/circle_indicator.dart
index e4be5e7..97c32f2 100644
--- a/lib/presentation/screens/dashboard/widgets/circle_indicator.dart
+++ b/lib/presentation/screens/dashboard/widgets/circle_indicator.dart
@@ -91,7 +91,7 @@ class RPMProgressIndicatorState extends ConsumerState<RPMProgressIndicator>
width: 220,
child: CustomPaint(
foregroundPainter: CirclePainter(
- value: rpm,
+ value: rpm.toDouble(),
maxValue: maxRpm.toDouble(),
isRPM: true,
),