rusEFI
The most advanced open source ECU
Loading...
Searching...
No Matches
Data Structures | Enumerations | Functions | Variables
rusefi::generated::enums Namespace Reference

Data Structures

struct  EnumStringPair
 

Enumerations

enum class  engine_load_mode_e : uint8_t {
  LM_SPEED_DENSITY = 0 , LM_REAL_MAF = 1 , LM_ALPHA_N = 2 , LM_LUA = 3 ,
  UNSUPPORTED_ENUM_VALUE
}
 

Functions

template<typename T >
requires std::is_enum_v<T>
constexpr auto Enum2Underlying (T const e)
 
template<typename T >
constexpr char const * Enum2String (T const e)
 
template<typename T >
constexpr T String2Enum (char const *const s)
 

Variables

template<typename T >
constexpr EnumStringPair< T > EnumLookUp [] {}
 
template<>
constexpr EnumStringPair< engine_load_mode_eEnumLookUp< engine_load_mode_e > []
 

Enumeration Type Documentation

◆ engine_load_mode_e

enum class rusefi::generated::enums::engine_load_mode_e : uint8_t
strong
Enumerator
LM_SPEED_DENSITY 
LM_REAL_MAF 
LM_ALPHA_N 
LM_LUA 
UNSUPPORTED_ENUM_VALUE 

Definition at line 46 of file rusefi_config_generated_enums.h.

46 : uint8_t {
47 /* Speed Density algorithm - Engine Load is a function of MAP, VE and target AFR
48 * http://articles.sae.org/8539/ */
50 /* MAF with a known kg/hour function */
51 LM_REAL_MAF = 1,
52 LM_ALPHA_N = 2,
53 LM_LUA = 3,
55 };

Function Documentation

◆ Enum2String()

template<typename T >
constexpr char const * rusefi::generated::enums::Enum2String ( T const  e)
constexpr

Definition at line 26 of file rusefi_config_generated_enums.h.

26 {
27 for (auto& entry : EnumLookUp<T>) {
28 if (entry.enumValue == e) {
29 return entry.name;
30 }
31 }
32 return "UNSUPPORTED_ENUM_VALUE";
33 }
constexpr EnumStringPair< T > EnumLookUp[]

◆ Enum2Underlying()

template<typename T >
requires std::is_enum_v<T>
constexpr auto rusefi::generated::enums::Enum2Underlying ( T const  e)
constexpr

Definition at line 12 of file rusefi_config_generated_enums.h.

12 {
13 return static_cast<std::underlying_type_t<T>>(e);
14 }

◆ String2Enum()

template<typename T >
constexpr T rusefi::generated::enums::String2Enum ( char const *const  s)
constexpr

Definition at line 36 of file rusefi_config_generated_enums.h.

36 {
37 for (auto& entry : EnumLookUp<T>) {
38 if (std::strncmp(entry.name, s, std::strlen(entry.name) + 1) == 0) {
39 return entry.enumValue;
40 }
41 }
42 return T::UNSUPPORTED_ENUM_VALUE; // Invalid value (may need adjustment)
43 }

Variable Documentation

◆ EnumLookUp

template<typename T >
constexpr EnumStringPair<T> rusefi::generated::enums::EnumLookUp[] {}
constexpr

Definition at line 23 of file rusefi_config_generated_enums.h.

23{};

◆ EnumLookUp< engine_load_mode_e >

Initial value:
= {
{ engine_load_mode_e::LM_SPEED_DENSITY, "LM_SPEED_DENSITY" },
{ engine_load_mode_e::LM_REAL_MAF, "LM_REAL_MAF" },
{ engine_load_mode_e::LM_ALPHA_N, "LM_ALPHA_N" },
{ engine_load_mode_e::LM_LUA, "LM_LUA" }
}

Definition at line 58 of file rusefi_config_generated_enums.h.

58 {
59 { engine_load_mode_e::LM_SPEED_DENSITY, "LM_SPEED_DENSITY" },
60 { engine_load_mode_e::LM_REAL_MAF, "LM_REAL_MAF" },
61 { engine_load_mode_e::LM_ALPHA_N, "LM_ALPHA_N" },
62 { engine_load_mode_e::LM_LUA, "LM_LUA" }
63 };