13#include <rusefi/timer.h>
17#define MAX_ALLOWED_RPM 30000
132 void showInfo(
const char* sensorName)
const override;
166 uint32_t trgEventIndex, efitick_t edgeTimestamp);
170#define getRevolutionCounter() (engine->rpmCalculator.getRevolutionCounterM())
float getSecondsSinceEngineStart(efitick_t nowNt) const
bool isSpinningUp() const
bool isStopped() const override
float getRpmAcceleration() const
uint32_t getRevolutionCounterM(void) const
bool checkIfSpinning(efitick_t nowNt) const
void showInfo(const char *sensorName) const override
void setRpmValue(float value)
void setSpinningUp(efitick_t nowNt)
float getCachedRpm() const
uint32_t revolutionCounterSinceBoot
bool isCranking() const override
uint32_t getRevolutionCounterSinceStart(void) const
uint32_t revolutionCounterSinceStart
spinning_state_e getState() const
void assignRpmValue(float value)
operation_mode_e getOperationMode() const override
floatus_t getOneDegreeUs() override
Base class for sensors that compute a value on one thread, and want to make it available to consumers...
efitick_t scheduleByAngle(scheduling_s *timer, efitick_t nowNt, angle_t angle, action_s const &action)
void rpmShaftPositionCallback(trigger_event_e ckpSignalType, uint32_t trgEventIndex, efitick_t edgeTimestamp)
Shaft position callback used by RPM calculation logic.
operation_mode_e lookupOperationMode()
void tdcMarkCallback(uint32_t trgEventIndex, efitick_t edgeTimestamp)
Base class for a sensor that has its value asynchronously set, then later retrieved by a consumer.