| Line | Branch | Decision | Exec | Source |
|---|---|---|---|---|
| 1 | #pragma once | |||
| 2 | ||||
| 3 | #include "sensor.h" | |||
| 4 | ||||
| 5 | class FallbackSensor final : public Sensor { | |||
| 6 | public: | |||
| 7 | 2 | FallbackSensor(SensorType outputType, SensorType primarySensor, SensorType fallbackSensor) | ||
| 8 | 2 | : Sensor(outputType) | ||
| 9 | 2 | , m_primary(primarySensor) | ||
| 10 | 2 | , m_fallback(fallbackSensor) | ||
| 11 | { | |||
| 12 | 2 | } | ||
| 13 | ||||
| 14 | 2 | SensorResult get() const override { | ||
| 15 |
1/1✓ Branch 2 taken 2 times.
|
2 | auto primary = Sensor::get(m_primary); | |
| 16 | ||||
| 17 |
2/2✓ Branch 1 taken 1 time.
✓ Branch 2 taken 1 time.
|
2/2✓ Decision 'true' taken 1 time.
✓ Decision 'false' taken 1 time.
|
2 | if (primary) { |
| 18 | 1 | return primary; | ||
| 19 | } | |||
| 20 | ||||
| 21 |
1/1✓ Branch 1 taken 1 time.
|
1 | return Sensor::get(m_fallback); | |
| 22 | } | |||
| 23 | ||||
| 24 | void showInfo(const char* sensorName) const override; | |||
| 25 | ||||
| 26 | private: | |||
| 27 | const SensorType m_primary; | |||
| 28 | const SensorType m_fallback; | |||
| 29 | }; | |||
| 30 |