mirror of https://github.com/FOME-Tech/fome-fw.git
111 lines
3.1 KiB
C
111 lines
3.1 KiB
C
#pragma once
|
|
#include "rusefi_types.h"
|
|
struct tps_accel_state_s {
|
|
// Fuel: TPS AE from
|
|
// offset 0
|
|
float tpsFrom = (float)0;
|
|
// Fuel: TPS AE to
|
|
// offset 4
|
|
float tpsTo = (float)0;
|
|
// Fuel: TPS AE change
|
|
// offset 8
|
|
float deltaTps = (float)0;
|
|
// offset 12
|
|
float extraFuel = (float)0;
|
|
// offset 16
|
|
float valueFromTable = (float)0;
|
|
// Fuel: TPS AE Active
|
|
// offset 20 bit 0
|
|
bool isAboveAccelThreshold : 1 {};
|
|
// offset 20 bit 1
|
|
bool isBelowDecelThreshold : 1 {};
|
|
// Accel: reset time
|
|
// offset 20 bit 2
|
|
bool isTimeToResetAccumulator : 1 {};
|
|
// offset 20 bit 3
|
|
bool isFractionalEnrichment : 1 {};
|
|
// Accel: below threshold
|
|
// offset 20 bit 4
|
|
bool belowEpsilon : 1 {};
|
|
// Accel: too short
|
|
// offset 20 bit 5
|
|
bool tooShort : 1 {};
|
|
// offset 20 bit 6
|
|
bool unusedBit_20_6 : 1 {};
|
|
// offset 20 bit 7
|
|
bool unusedBit_20_7 : 1 {};
|
|
// offset 20 bit 8
|
|
bool unusedBit_20_8 : 1 {};
|
|
// offset 20 bit 9
|
|
bool unusedBit_20_9 : 1 {};
|
|
// offset 20 bit 10
|
|
bool unusedBit_20_10 : 1 {};
|
|
// offset 20 bit 11
|
|
bool unusedBit_20_11 : 1 {};
|
|
// offset 20 bit 12
|
|
bool unusedBit_20_12 : 1 {};
|
|
// offset 20 bit 13
|
|
bool unusedBit_20_13 : 1 {};
|
|
// offset 20 bit 14
|
|
bool unusedBit_20_14 : 1 {};
|
|
// offset 20 bit 15
|
|
bool unusedBit_20_15 : 1 {};
|
|
// offset 20 bit 16
|
|
bool unusedBit_20_16 : 1 {};
|
|
// offset 20 bit 17
|
|
bool unusedBit_20_17 : 1 {};
|
|
// offset 20 bit 18
|
|
bool unusedBit_20_18 : 1 {};
|
|
// offset 20 bit 19
|
|
bool unusedBit_20_19 : 1 {};
|
|
// offset 20 bit 20
|
|
bool unusedBit_20_20 : 1 {};
|
|
// offset 20 bit 21
|
|
bool unusedBit_20_21 : 1 {};
|
|
// offset 20 bit 22
|
|
bool unusedBit_20_22 : 1 {};
|
|
// offset 20 bit 23
|
|
bool unusedBit_20_23 : 1 {};
|
|
// offset 20 bit 24
|
|
bool unusedBit_20_24 : 1 {};
|
|
// offset 20 bit 25
|
|
bool unusedBit_20_25 : 1 {};
|
|
// offset 20 bit 26
|
|
bool unusedBit_20_26 : 1 {};
|
|
// offset 20 bit 27
|
|
bool unusedBit_20_27 : 1 {};
|
|
// offset 20 bit 28
|
|
bool unusedBit_20_28 : 1 {};
|
|
// offset 20 bit 29
|
|
bool unusedBit_20_29 : 1 {};
|
|
// offset 20 bit 30
|
|
bool unusedBit_20_30 : 1 {};
|
|
// offset 20 bit 31
|
|
bool unusedBit_20_31 : 1 {};
|
|
// offset 24
|
|
float fractionalInjFuel = (float)0;
|
|
// offset 28
|
|
float accumulatedValue = (float)0;
|
|
// offset 32
|
|
float maxExtraPerCycle = (float)0;
|
|
// offset 36
|
|
float maxExtraPerPeriod = (float)0;
|
|
// offset 40
|
|
float maxInjectedPerPeriod = (float)0;
|
|
// offset 44
|
|
int cycleCnt = (int)0;
|
|
};
|
|
static_assert(sizeof(tps_accel_state_s) == 48);
|
|
static_assert(offsetof(tps_accel_state_s, tpsFrom) == 0);
|
|
static_assert(offsetof(tps_accel_state_s, tpsTo) == 4);
|
|
static_assert(offsetof(tps_accel_state_s, deltaTps) == 8);
|
|
static_assert(offsetof(tps_accel_state_s, extraFuel) == 12);
|
|
static_assert(offsetof(tps_accel_state_s, valueFromTable) == 16);
|
|
static_assert(offsetof(tps_accel_state_s, fractionalInjFuel) == 24);
|
|
static_assert(offsetof(tps_accel_state_s, accumulatedValue) == 28);
|
|
static_assert(offsetof(tps_accel_state_s, maxExtraPerCycle) == 32);
|
|
static_assert(offsetof(tps_accel_state_s, maxExtraPerPeriod) == 36);
|
|
static_assert(offsetof(tps_accel_state_s, maxInjectedPerPeriod) == 40);
|
|
static_assert(offsetof(tps_accel_state_s, cycleCnt) == 44);
|
|
|