GCC Code Coverage Report


Directory: ./
Coverage: low: ≥ 0% medium: ≥ 75.0% high: ≥ 90.0%
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

firmware/controllers/sensors/converters/vehicle_speed_converter.h
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