GCC Code Coverage Report


Directory: ./
File: firmware/controllers/sensors/converters/vehicle_speed_converter.h
Date: 2025-10-03 00:57:22
Coverage Exec Excl Total
Lines: 85.7% 6 0 7
Functions: 100.0% 1 0 1
Branches: 50.0% 1 0 2
Decisions: 50.0% 1 - 2

Line Branch Decision Exec Source
1 #include "pch.h"
2 #include "sensor_converter_func.h"
3
4 class VehicleSpeedConverter : public SensorConverter {
5 public:
6 8 SensorResult convert(float frequency) const override {
7 8 auto vssRevPerKm = engineConfiguration->driveWheelRevPerKm * engineConfiguration->vssGearRatio;
8
9 8 auto pulsePerKm = (vssRevPerKm * engineConfiguration->vssToothCount);
10
11
1/2
✗ Branch 0 not taken.
✓ Branch 1 taken 8 times.
1/2
✗ Decision 'true' not taken.
✓ Decision 'false' taken 8 times.
8 if (pulsePerKm == 0) {
12 // avoid div by 0
13 return 0;
14 }
15
16 8 auto kmPerPulse = 1 / pulsePerKm;
17
18 // 1 pulse 3600 sec 1 km km
19 // --------- * ---------- * --------- = ----
20 // sec 1 hr 1 pulse hr
21 8 return frequency * 3600 * kmPerPulse;
22 }
23 };
24