GCC Code Coverage Report


Directory: ./
File: firmware/controllers/tcu/simple_tcu.cpp
Date: 2025-11-16 14:52:24
Coverage Exec Excl Total
Lines: 58.8% 10 0 17
Functions: 66.7% 2 0 3
Branches: 83.3% 5 0 6
Decisions: 83.3% 5 - 6

Line Branch Decision Exec Source
1 #include "pch.h"
2
3 #include "simple_tcu.h"
4
5 #if EFI_TCU
6 SimpleTransmissionController simpleTransmissionController;
7
8 4 void SimpleTransmissionController::init() {
9
2/2
✓ Branch 1 taken 24 times.
✓ Branch 2 taken 4 times.
2/2
✓ Decision 'true' taken 24 times.
✓ Decision 'false' taken 4 times.
28 for (size_t i = 0; i < efi::size(engineConfiguration->tcu_solenoid); i++) {
10 24 enginePins.tcuSolenoids[i].initPin("Transmission Solenoid", engineConfiguration->tcu_solenoid[i], engineConfiguration->tcu_solenoid_mode[i]);
11 }
12 4 }
13
14 4825 void SimpleTransmissionController::update(gear_e gear) {
15
2/2
✓ Branch 1 taken 28950 times.
✓ Branch 2 taken 4825 times.
2/2
✓ Decision 'true' taken 28950 times.
✓ Decision 'false' taken 4825 times.
33775 for (size_t i = 0; i < efi::size(engineConfiguration->tcu_solenoid); i++) {
16 #if ! EFI_UNIT_TEST
17 enginePins.tcuSolenoids[i].setValue(config->tcuSolenoidTable[i][static_cast<int>(gear) + 1]);
18 #endif
19 }
20 4825 setCurrentGear(gear);
21
22 #if EFI_TUNER_STUDIO
23
1/2
✗ Branch 0 not taken.
✓ Branch 1 taken 4825 times.
1/2
✗ Decision 'true' not taken.
✓ Decision 'false' taken 4825 times.
4825 if (engineConfiguration->debugMode == DBG_TCU) {
24 engine->outputChannels.debugIntField1 = config->tcuSolenoidTable[static_cast<int>(gear) + 1][0];
25 engine->outputChannels.debugIntField2 = config->tcuSolenoidTable[static_cast<int>(gear) + 1][1];
26 engine->outputChannels.debugIntField3 = config->tcuSolenoidTable[static_cast<int>(gear) + 1][2];
27 engine->outputChannels.debugIntField4 = config->tcuSolenoidTable[static_cast<int>(gear) + 1][3];
28 engine->outputChannels.debugIntField5 = config->tcuSolenoidTable[static_cast<int>(gear) + 1][4];
29 }
30 #endif
31
32 4825 TransmissionControllerBase::update(gear);
33 4825 }
34
35 SimpleTransmissionController* getSimpleTransmissionController() {
36 return &simpleTransmissionController;
37 }
38 #endif // EFI_TCU
39