Line |
Branch |
Decision |
Exec |
Source |
1 |
|
|
|
/* |
2 |
|
|
|
* @file prime_injection.h |
3 |
|
|
|
|
4 |
|
|
|
*/ |
5 |
|
|
|
|
6 |
|
|
|
#pragma once |
7 |
|
|
|
|
8 |
|
|
|
#include "engine_module.h" |
9 |
|
|
|
#include "rusefi_types.h" |
10 |
|
|
|
#include "scheduler.h" |
11 |
|
|
|
#include "prime_injection_generated.h" |
12 |
|
|
|
|
13 |
|
|
|
class PrimeController : public EngineModule, public prime_injection_s { |
14 |
|
|
|
public: |
15 |
|
|
|
void onIgnitionStateChanged(bool ignitionOn) override; |
16 |
|
|
|
void onSlowCallback() override; |
17 |
|
|
|
|
18 |
|
|
|
floatms_t getPrimeDuration() const; |
19 |
|
|
|
|
20 |
|
|
|
void onPrimeStart(); |
21 |
|
|
|
void onPrimeEnd(); |
22 |
|
|
|
|
23 |
|
|
1085 |
bool isPriming() const { |
24 |
|
|
1085 |
return m_isPriming; |
25 |
|
|
|
} |
26 |
|
|
|
|
27 |
|
|
|
private: |
28 |
|
|
|
|
29 |
|
|
1 |
static void onPrimeStartAdapter(PrimeController* instance) { |
30 |
|
|
1 |
instance->onPrimeStart(); |
31 |
|
|
1 |
} |
32 |
|
|
|
|
33 |
|
|
1 |
static void onPrimeEndAdapter(PrimeController* instance) { |
34 |
|
|
1 |
instance->onPrimeEnd(); |
35 |
|
|
1 |
} |
36 |
|
|
|
|
37 |
|
|
|
uint32_t getKeyCycleCounter() const; |
38 |
|
|
|
void setKeyCycleCounter(uint32_t count); |
39 |
|
|
|
}; |
40 |
|
|
|
|