RigsofRods
Soft-body Physics Simulation
Public Types | Public Member Functions | Private Types | Private Attributes | Friends
RoR::EngineSim Class Reference

A land vehicle engine + transmission. More...

#include <EngineSim.h>

+ Collaboration diagram for RoR::EngineSim:

Public Types

enum  autoswitch {
  REAR, NEUTRAL, DRIVE, TWO,
  ONE, MANUALMODE
}
 
enum  turbomode { OLD, NEW }
 

Public Member Functions

 EngineSim (float min_rpm, float max_rpm, float torque, std::vector< float > gears, float dratio, ActorPtr actor)
 
 ~EngineSim ()
 
void PushNetworkState (float engine_rpm, float acc, float clutch, int gear, bool running, bool contact, char auto_mode, char auto_select=-1)
 Sets current engine state;. More...
 
void SetEngineOptions (float einertia, char etype, float eclutch, float ctime, float stime, float pstime, float irpm, float srpm, float maximix, float minimix, float ebraking)
 Sets engine options. More...
 
void SetTurboOptions (int type, float tinertiaFactor, int nturbos, float param1, float param2, float param3, float param4, float param5, float param6, float param7, float param8, float param9, float param10, float param11)
 Sets turbo options. More...
 
void SetAcceleration (float val)
 
void SetAutoMode (RoR::SimGearboxMode mode)
 
void SetClutch (float clutch)
 
float GetAcceleration ()
 
float GetClutch ()
 
float GetClutchForce ()
 
float GetCrankFactor ()
 
float GetSmoke ()
 
float GetTorque ()
 
float GetTurboPsi ()
 
RoR::SimGearboxMode GetAutoShiftMode ()
 
void SetEngineRpm (float rpm)
 Set current engine RPM. More...
 
void SetEnginePriming (bool p)
 Set current engine prime. More...
 
void SetHydroPumpWork (float work)
 Set current hydro pump work. More...
 
void SetWheelSpin (float rpm)
 Set current wheel spinning speed. More...
 
void SetTCaseRatio (float ratio)
 Set current transfer case gear (reduction) ratio. More...
 
void ToggleAutoShiftMode ()
 
void OffStart ()
 Quick start of vehicle engine. More...
 
void StartEngine ()
 Quick engine start. Plays sounds. More...
 
int GetGear ()
 low level gear changing More...
 
int GetGearRange ()
 low level gear changing More...
 
void SetGear (int v)
 low level gear changing More...
 
void SetGearRange (int v)
 low level gear changing More...
 
void StopEngine ()
 stall engine More...
 
float GetAccToHoldRPM ()
 estimate required throttle input to hold the current rpm More...
 
bool HasTurbo () const
 
bool isRunning () const
 
int GetAutoMode () const
 
char GetEngineType () const
 
float getIdleRPM () const
 
float getMaxRPM () const
 
float getMinRPM () const
 
int getNumGears () const
 
int getNumGearsRanges () const
 
TorqueCurvegetTorqueCurve ()
 
float GetEngineRpm () const
 
float GetEngineTorque () const
 
float GetInputShaftRpm ()
 
float GetDriveRatio ()
 
float GetEngineInertia ()
 
float getEnginePower ()
 
float getEnginePower (float rpm)
 
float getTurboPower ()
 
float getIdleMixture ()
 
float getPrimeMixture ()
 
int getAutoShift ()
 
void autoSetAcc (float val)
 
void autoShiftDown ()
 
void autoShiftSet (int mode)
 
void autoShiftUp ()
 
void setManualClutch (float val)
 
void shift (int val)
 Changes gear by a relative offset. Plays sounds. More...
 
void shiftTo (int val)
 Changes gear to given value. Plays sounds. More...
 
void updateShifts ()
 Changes gears. Plays sounds. More...
 
void UpdateEngineSim (float dt, int doUpdate)
 
void UpdateEngineAudio ()
 
void UpdateInputEvents (float dt)
 
void toggleContact ()
 
bool hasContact () const
 

Private Types

enum  shiftmodes {
  AUTOMATIC, SEMIAUTO, MANUAL, MANUAL_STICK,
  MANUAL_RANGES
}
 

Private Attributes

ActorPtr m_actor
 
float m_ref_wheel_revolutions
 Gears; estimated wheel revolutions based on current vehicle speed along the longi. axis. More...
 
float m_cur_wheel_revolutions
 Gears; measured wheel revolutions. More...
 
int m_cur_gear
 Gears; Current gear {-1 = reverse, 0 = neutral, 1...21 = forward}. More...
 
int m_cur_gear_range
 Gears. More...
 
int m_num_gears
 Gears. More...
 
std::vector< float > m_gear_ratios
 Gears. More...
 
float m_clutch_force
 Clutch attribute. More...
 
float m_clutch_time
 Clutch attribute. More...
 
float m_cur_clutch
 
float m_cur_clutch_torque
 
bool m_engine_is_electric
 Engine attribute. More...
 
bool m_engine_has_air
 Engine attribute. More...
 
bool m_engine_has_turbo
 Engine attribute. More...
 
int m_engine_turbo_mode
 Engine attribute. More...
 
bool m_engine_is_running
 Engine state. More...
 
char m_engine_type
 Engine attribute {'t' = truck (default), 'c' = car}. More...
 
float m_braking_torque
 Engine attribute. More...
 
float m_cur_acc
 Engine. More...
 
float m_cur_engine_rpm
 Engine. More...
 
float m_cur_engine_torque
 Engine. More...
 
float m_diff_ratio
 Engine. More...
 
float m_tcase_ratio
 Engine. More...
 
float m_engine_torque
 Engine attribute. More...
 
float m_hydropump_state
 Engine. More...
 
float m_min_idle_mixture
 Engine attribute. More...
 
float m_max_idle_mixture
 Engine attribute. More...
 
float m_engine_inertia
 Engine attribute. More...
 
float m_engine_max_rpm
 Engine attribute. More...
 
float m_engine_min_rpm
 Engine attribute. More...
 
float m_engine_idle_rpm
 Engine attribute. More...
 
float m_engine_stall_rpm
 Engine attribute. More...
 
bool m_engine_is_priming
 Engine. More...
 
TorqueCurvem_torque_curve
 
float m_air_pressure
 
bool m_contact
 Ignition switch is in ON/RUN position. More...
 
bool m_starter
 Ignition switch is in START position. More...
 
float m_post_shift_time
 Shift attribute. More...
 
float m_post_shift_clock
 
float m_shift_time
 Shift attribute. More...
 
float m_shift_clock
 
int m_post_shifting
 
int m_shifting
 
int m_shift_val
 
int m_auto_mode
 Transmission mode (. More...
 
autoswitch m_autoselect
 
float m_auto_cur_acc
 
float m_full_rpm_range
 
float m_one_third_rpm_range
 
float m_half_rpm_range
 
float m_shift_behaviour
 
int m_upshift_delay_counter
 
int m_kickdown_delay_counter
 
std::deque< float > m_rpms
 
std::deque< float > m_accs
 
std::deque< float > m_brakes
 
int m_turbo_ver
 
float m_cur_turbo_rpm [MAXTURBO]
 
float m_turbo_inertia_factor
 
int m_num_turbos
 
int m_max_turbo_rpm
 
float m_engine_addi_torque [MAXTURBO]
 
float m_turbo_engine_rpm_operation
 
bool m_turbo_has_bov
 
float m_turbo_bov_rpm [MAXTURBO]
 
int m_min_bov_psi
 
bool m_turbo_has_wastegate
 
float m_min_wastegate_psi
 
bool m_turbo_flutters
 
float m_turbo_wg_threshold_p
 
float m_turbo_wg_threshold_n
 
bool m_turbo_has_antilag
 
float m_antilag_min_rpm
 
float m_antilag_rand_chance
 
float m_antilag_power_factor
 

Friends

class ActorSpawner
 

Detailed Description

A land vehicle engine + transmission.

Definition at line 35 of file EngineSim.h.

Member Enumeration Documentation

◆ autoswitch

Enumerator
REAR 
NEUTRAL 
DRIVE 
TWO 
ONE 
MANUALMODE 

Definition at line 129 of file EngineSim.h.

◆ shiftmodes

Enumerator
AUTOMATIC 
SEMIAUTO 
MANUAL 
MANUAL_STICK 
MANUAL_RANGES 

Definition at line 147 of file EngineSim.h.

◆ turbomode

Enumerator
OLD 
NEW 

Definition at line 139 of file EngineSim.h.

Constructor & Destructor Documentation

◆ EngineSim()

EngineSim::EngineSim ( float  min_rpm,
float  max_rpm,
float  torque,
std::vector< float >  gears,
float  dratio,
ActorPtr  actor 
)

Definition at line 37 of file EngineSim.cpp.

◆ ~EngineSim()

EngineSim::~EngineSim ( )

Definition at line 122 of file EngineSim.cpp.

Member Function Documentation

◆ autoSetAcc()

void EngineSim::autoSetAcc ( float  val)

Definition at line 1078 of file EngineSim.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ autoShiftDown()

void EngineSim::autoShiftDown ( )

Definition at line 1174 of file EngineSim.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ autoShiftSet()

void EngineSim::autoShiftSet ( int  mode)

Definition at line 1157 of file EngineSim.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ autoShiftUp()

void EngineSim::autoShiftUp ( )

Definition at line 1165 of file EngineSim.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetAcceleration()

float EngineSim::GetAcceleration ( )

Definition at line 880 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ GetAccToHoldRPM()

float EngineSim::GetAccToHoldRPM ( )

estimate required throttle input to hold the current rpm

Definition at line 1072 of file EngineSim.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetAutoMode()

int RoR::EngineSim::GetAutoMode ( ) const
inline

Definition at line 94 of file EngineSim.h.

◆ getAutoShift()

int EngineSim::getAutoShift ( )

Definition at line 1184 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ GetAutoShiftMode()

RoR::SimGearboxMode EngineSim::GetAutoShiftMode ( )

Definition at line 842 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ GetClutch()

float EngineSim::GetClutch ( )

Definition at line 975 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ GetClutchForce()

float EngineSim::GetClutchForce ( )

Definition at line 980 of file EngineSim.cpp.

◆ GetCrankFactor()

float EngineSim::GetCrankFactor ( )

Definition at line 957 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ GetDriveRatio()

float RoR::EngineSim::GetDriveRatio ( )
inline

Definition at line 105 of file EngineSim.h.

◆ GetEngineInertia()

float RoR::EngineSim::GetEngineInertia ( )
inline

Definition at line 106 of file EngineSim.h.

+ Here is the caller graph for this function:

◆ getEnginePower() [1/2]

float RoR::EngineSim::getEnginePower ( )
inline

Definition at line 107 of file EngineSim.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getEnginePower() [2/2]

float EngineSim::getEnginePower ( float  rpm)

Definition at line 1222 of file EngineSim.cpp.

+ Here is the call graph for this function:

◆ GetEngineRpm()

float RoR::EngineSim::GetEngineRpm ( ) const
inline

Definition at line 102 of file EngineSim.h.

+ Here is the caller graph for this function:

◆ GetEngineTorque()

float RoR::EngineSim::GetEngineTorque ( ) const
inline

Definition at line 103 of file EngineSim.h.

◆ GetEngineType()

char RoR::EngineSim::GetEngineType ( ) const
inline

Definition at line 95 of file EngineSim.h.

◆ GetGear()

int EngineSim::GetGear ( )

low level gear changing

Definition at line 1041 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ GetGearRange()

int EngineSim::GetGearRange ( )

low level gear changing

Definition at line 1052 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ getIdleMixture()

float EngineSim::getIdleMixture ( )

Definition at line 1235 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ getIdleRPM()

float RoR::EngineSim::getIdleRPM ( ) const
inline

Definition at line 96 of file EngineSim.h.

◆ GetInputShaftRpm()

float RoR::EngineSim::GetInputShaftRpm ( )
inline

Definition at line 104 of file EngineSim.h.

◆ getMaxRPM()

float RoR::EngineSim::getMaxRPM ( ) const
inline

Definition at line 97 of file EngineSim.h.

+ Here is the caller graph for this function:

◆ getMinRPM()

float RoR::EngineSim::getMinRPM ( ) const
inline

Definition at line 98 of file EngineSim.h.

+ Here is the caller graph for this function:

◆ getNumGears()

int RoR::EngineSim::getNumGears ( ) const
inline

Definition at line 99 of file EngineSim.h.

+ Here is the caller graph for this function:

◆ getNumGearsRanges()

int RoR::EngineSim::getNumGearsRanges ( ) const
inline

Definition at line 100 of file EngineSim.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getPrimeMixture()

float EngineSim::getPrimeMixture ( )

Definition at line 1242 of file EngineSim.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetSmoke()

float EngineSim::GetSmoke ( )

Definition at line 903 of file EngineSim.cpp.

◆ GetTorque()

float EngineSim::GetTorque ( )

Definition at line 913 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ getTorqueCurve()

TorqueCurve* RoR::EngineSim::getTorqueCurve ( )
inline

Definition at line 101 of file EngineSim.h.

+ Here is the caller graph for this function:

◆ getTurboPower()

float EngineSim::getTurboPower ( )

Definition at line 1198 of file EngineSim.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetTurboPsi()

float EngineSim::GetTurboPsi ( )

Definition at line 857 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ hasContact()

bool RoR::EngineSim::hasContact ( ) const
inline

Definition at line 127 of file EngineSim.h.

+ Here is the caller graph for this function:

◆ HasTurbo()

bool RoR::EngineSim::HasTurbo ( ) const
inline

Definition at line 92 of file EngineSim.h.

+ Here is the caller graph for this function:

◆ isRunning()

bool RoR::EngineSim::isRunning ( ) const
inline

Definition at line 93 of file EngineSim.h.

+ Here is the caller graph for this function:

◆ OffStart()

void EngineSim::OffStart ( )

Quick start of vehicle engine.

Definition at line 1016 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ PushNetworkState()

void EngineSim::PushNetworkState ( float  engine_rpm,
float  acc,
float  clutch,
int  gear,
bool  running,
bool  contact,
char  auto_mode,
char  auto_select = -1 
)

Sets current engine state;.

Parameters
gearCurrent gear {-1 = reverse, 0 = neutral, 1...21 = forward}

Definition at line 885 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ SetAcceleration()

void EngineSim::SetAcceleration ( float  val)

Definition at line 852 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ SetAutoMode()

void EngineSim::SetAutoMode ( RoR::SimGearboxMode  mode)

Definition at line 847 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ SetClutch()

void EngineSim::SetClutch ( float  clutch)

Definition at line 970 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ SetEngineOptions()

void EngineSim::SetEngineOptions ( float  einertia,
char  etype,
float  eclutch,
float  ctime,
float  stime,
float  pstime,
float  irpm,
float  srpm,
float  maximix,
float  minimix,
float  ebraking 
)

Sets engine options.

Parameters
einertiaEngine inertia
etypeEngine type {'t' = truck (default), 'c' = car}
eclutch
ctimeClutch time
stimeShift time
pstimePost-shift time
irpmIdle RPM
srpmStall RPM
maximixMax. idle mixture
minimixMin. idle mixture

Definition at line 197 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ SetEnginePriming()

void EngineSim::SetEnginePriming ( bool  p)

Set current engine prime.

Definition at line 923 of file EngineSim.cpp.

◆ SetEngineRpm()

void EngineSim::SetEngineRpm ( float  rpm)

Set current engine RPM.

Definition at line 918 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ SetGear()

void EngineSim::SetGear ( int  v)

low level gear changing

Definition at line 1047 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ SetGearRange()

void EngineSim::SetGearRange ( int  v)

low level gear changing

Definition at line 1057 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ SetHydroPumpWork()

void EngineSim::SetHydroPumpWork ( float  work)

Set current hydro pump work.

Definition at line 928 of file EngineSim.cpp.

◆ setManualClutch()

void EngineSim::setManualClutch ( float  val)

Definition at line 1189 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ SetTCaseRatio()

void EngineSim::SetTCaseRatio ( float  ratio)

Set current transfer case gear (reduction) ratio.

Definition at line 938 of file EngineSim.cpp.

◆ SetTurboOptions()

void EngineSim::SetTurboOptions ( int  type,
float  tinertiaFactor,
int  nturbos,
float  param1,
float  param2,
float  param3,
float  param4,
float  param5,
float  param6,
float  param7,
float  param8,
float  param9,
float  param10,
float  param11 
)

Sets turbo options.

Parameters
tinertiatinertiaFactorTurbo inertia factor
nturbosNumber of turbos
additionalTorqueTorque that will be added to the engine at max turbo rpm

Definition at line 129 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ SetWheelSpin()

void EngineSim::SetWheelSpin ( float  rpm)

Set current wheel spinning speed.

Definition at line 933 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ shift()

void EngineSim::shift ( int  val)

Changes gear by a relative offset. Plays sounds.

Definition at line 1087 of file EngineSim.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ shiftTo()

void EngineSim::shiftTo ( int  val)

Changes gear to given value. Plays sounds.

Definition at line 1111 of file EngineSim.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ StartEngine()

void EngineSim::StartEngine ( )

Quick engine start. Plays sounds.

Definition at line 998 of file EngineSim.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ StopEngine()

void EngineSim::StopEngine ( )

stall engine

Definition at line 1062 of file EngineSim.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ToggleAutoShiftMode()

void EngineSim::ToggleAutoShiftMode ( )

Definition at line 818 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ toggleContact()

void EngineSim::toggleContact ( )

Definition at line 985 of file EngineSim.cpp.

+ Here is the caller graph for this function:

◆ UpdateEngineAudio()

void EngineSim::UpdateEngineAudio ( )

Definition at line 791 of file EngineSim.cpp.

◆ UpdateEngineSim()

void EngineSim::UpdateEngineSim ( float  dt,
int  doUpdate 
)

Definition at line 259 of file EngineSim.cpp.

+ Here is the call graph for this function:

◆ UpdateInputEvents()

void EngineSim::UpdateInputEvents ( float  dt)

Definition at line 1263 of file EngineSim.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updateShifts()

void EngineSim::updateShifts ( )

Changes gears. Plays sounds.

Definition at line 1116 of file EngineSim.cpp.

+ Here is the caller graph for this function:

Friends And Related Function Documentation

◆ ActorSpawner

friend class ActorSpawner
friend

Definition at line 37 of file EngineSim.h.

Field Documentation

◆ m_accs

std::deque<float> RoR::EngineSim::m_accs
private

Definition at line 223 of file EngineSim.h.

◆ m_actor

ActorPtr RoR::EngineSim::m_actor
private

Definition at line 157 of file EngineSim.h.

◆ m_air_pressure

float RoR::EngineSim::m_air_pressure
private

Definition at line 197 of file EngineSim.h.

◆ m_antilag_min_rpm

float RoR::EngineSim::m_antilag_min_rpm
private

Definition at line 244 of file EngineSim.h.

◆ m_antilag_power_factor

float RoR::EngineSim::m_antilag_power_factor
private

Definition at line 246 of file EngineSim.h.

◆ m_antilag_rand_chance

float RoR::EngineSim::m_antilag_rand_chance
private

Definition at line 245 of file EngineSim.h.

◆ m_auto_cur_acc

float RoR::EngineSim::m_auto_cur_acc
private

Definition at line 215 of file EngineSim.h.

◆ m_auto_mode

int RoR::EngineSim::m_auto_mode
private

Transmission mode (.

See also
enum EngineSim::shiftmodes)

Definition at line 213 of file EngineSim.h.

◆ m_autoselect

autoswitch RoR::EngineSim::m_autoselect
private

Definition at line 214 of file EngineSim.h.

◆ m_brakes

std::deque<float> RoR::EngineSim::m_brakes
private

Definition at line 224 of file EngineSim.h.

◆ m_braking_torque

float RoR::EngineSim::m_braking_torque
private

Engine attribute.

Definition at line 180 of file EngineSim.h.

◆ m_clutch_force

float RoR::EngineSim::m_clutch_force
private

Clutch attribute.

Definition at line 168 of file EngineSim.h.

◆ m_clutch_time

float RoR::EngineSim::m_clutch_time
private

Clutch attribute.

Definition at line 169 of file EngineSim.h.

◆ m_contact

bool RoR::EngineSim::m_contact
private

Ignition switch is in ON/RUN position.

Definition at line 200 of file EngineSim.h.

◆ m_cur_acc

float RoR::EngineSim::m_cur_acc
private

Engine.

Definition at line 181 of file EngineSim.h.

◆ m_cur_clutch

float RoR::EngineSim::m_cur_clutch
private

Definition at line 170 of file EngineSim.h.

◆ m_cur_clutch_torque

float RoR::EngineSim::m_cur_clutch_torque
private

Definition at line 171 of file EngineSim.h.

◆ m_cur_engine_rpm

float RoR::EngineSim::m_cur_engine_rpm
private

Engine.

Definition at line 182 of file EngineSim.h.

◆ m_cur_engine_torque

float RoR::EngineSim::m_cur_engine_torque
private

Engine.

Definition at line 183 of file EngineSim.h.

◆ m_cur_gear

int RoR::EngineSim::m_cur_gear
private

Gears; Current gear {-1 = reverse, 0 = neutral, 1...21 = forward}.

Definition at line 162 of file EngineSim.h.

◆ m_cur_gear_range

int RoR::EngineSim::m_cur_gear_range
private

Gears.

Definition at line 163 of file EngineSim.h.

◆ m_cur_turbo_rpm

float RoR::EngineSim::m_cur_turbo_rpm[MAXTURBO]
private

Definition at line 229 of file EngineSim.h.

◆ m_cur_wheel_revolutions

float RoR::EngineSim::m_cur_wheel_revolutions
private

Gears; measured wheel revolutions.

Definition at line 161 of file EngineSim.h.

◆ m_diff_ratio

float RoR::EngineSim::m_diff_ratio
private

Engine.

Definition at line 184 of file EngineSim.h.

◆ m_engine_addi_torque

float RoR::EngineSim::m_engine_addi_torque[MAXTURBO]
private

Definition at line 233 of file EngineSim.h.

◆ m_engine_has_air

bool RoR::EngineSim::m_engine_has_air
private

Engine attribute.

Definition at line 175 of file EngineSim.h.

◆ m_engine_has_turbo

bool RoR::EngineSim::m_engine_has_turbo
private

Engine attribute.

Definition at line 176 of file EngineSim.h.

◆ m_engine_idle_rpm

float RoR::EngineSim::m_engine_idle_rpm
private

Engine attribute.

Definition at line 193 of file EngineSim.h.

◆ m_engine_inertia

float RoR::EngineSim::m_engine_inertia
private

Engine attribute.

Definition at line 190 of file EngineSim.h.

◆ m_engine_is_electric

bool RoR::EngineSim::m_engine_is_electric
private

Engine attribute.

Definition at line 174 of file EngineSim.h.

◆ m_engine_is_priming

bool RoR::EngineSim::m_engine_is_priming
private

Engine.

Definition at line 195 of file EngineSim.h.

◆ m_engine_is_running

bool RoR::EngineSim::m_engine_is_running
private

Engine state.

Definition at line 178 of file EngineSim.h.

◆ m_engine_max_rpm

float RoR::EngineSim::m_engine_max_rpm
private

Engine attribute.

Definition at line 191 of file EngineSim.h.

◆ m_engine_min_rpm

float RoR::EngineSim::m_engine_min_rpm
private

Engine attribute.

Definition at line 192 of file EngineSim.h.

◆ m_engine_stall_rpm

float RoR::EngineSim::m_engine_stall_rpm
private

Engine attribute.

Definition at line 194 of file EngineSim.h.

◆ m_engine_torque

float RoR::EngineSim::m_engine_torque
private

Engine attribute.

Definition at line 186 of file EngineSim.h.

◆ m_engine_turbo_mode

int RoR::EngineSim::m_engine_turbo_mode
private

Engine attribute.

Definition at line 177 of file EngineSim.h.

◆ m_engine_type

char RoR::EngineSim::m_engine_type
private

Engine attribute {'t' = truck (default), 'c' = car}.

Definition at line 179 of file EngineSim.h.

◆ m_full_rpm_range

float RoR::EngineSim::m_full_rpm_range
private

Definition at line 216 of file EngineSim.h.

◆ m_gear_ratios

std::vector<float> RoR::EngineSim::m_gear_ratios
private

Gears.

Definition at line 165 of file EngineSim.h.

◆ m_half_rpm_range

float RoR::EngineSim::m_half_rpm_range
private

Definition at line 218 of file EngineSim.h.

◆ m_hydropump_state

float RoR::EngineSim::m_hydropump_state
private

Engine.

Definition at line 187 of file EngineSim.h.

◆ m_kickdown_delay_counter

int RoR::EngineSim::m_kickdown_delay_counter
private

Definition at line 221 of file EngineSim.h.

◆ m_max_idle_mixture

float RoR::EngineSim::m_max_idle_mixture
private

Engine attribute.

Definition at line 189 of file EngineSim.h.

◆ m_max_turbo_rpm

int RoR::EngineSim::m_max_turbo_rpm
private

Definition at line 232 of file EngineSim.h.

◆ m_min_bov_psi

int RoR::EngineSim::m_min_bov_psi
private

Definition at line 237 of file EngineSim.h.

◆ m_min_idle_mixture

float RoR::EngineSim::m_min_idle_mixture
private

Engine attribute.

Definition at line 188 of file EngineSim.h.

◆ m_min_wastegate_psi

float RoR::EngineSim::m_min_wastegate_psi
private

Definition at line 239 of file EngineSim.h.

◆ m_num_gears

int RoR::EngineSim::m_num_gears
private

Gears.

Definition at line 164 of file EngineSim.h.

◆ m_num_turbos

int RoR::EngineSim::m_num_turbos
private

Definition at line 231 of file EngineSim.h.

◆ m_one_third_rpm_range

float RoR::EngineSim::m_one_third_rpm_range
private

Definition at line 217 of file EngineSim.h.

◆ m_post_shift_clock

float RoR::EngineSim::m_post_shift_clock
private

Definition at line 205 of file EngineSim.h.

◆ m_post_shift_time

float RoR::EngineSim::m_post_shift_time
private

Shift attribute.

Definition at line 204 of file EngineSim.h.

◆ m_post_shifting

int RoR::EngineSim::m_post_shifting
private

Definition at line 208 of file EngineSim.h.

◆ m_ref_wheel_revolutions

float RoR::EngineSim::m_ref_wheel_revolutions
private

Gears; estimated wheel revolutions based on current vehicle speed along the longi. axis.

Definition at line 160 of file EngineSim.h.

◆ m_rpms

std::deque<float> RoR::EngineSim::m_rpms
private

Definition at line 222 of file EngineSim.h.

◆ m_shift_behaviour

float RoR::EngineSim::m_shift_behaviour
private

Definition at line 219 of file EngineSim.h.

◆ m_shift_clock

float RoR::EngineSim::m_shift_clock
private

Definition at line 207 of file EngineSim.h.

◆ m_shift_time

float RoR::EngineSim::m_shift_time
private

Shift attribute.

Definition at line 206 of file EngineSim.h.

◆ m_shift_val

int RoR::EngineSim::m_shift_val
private

Definition at line 210 of file EngineSim.h.

◆ m_shifting

int RoR::EngineSim::m_shifting
private

Definition at line 209 of file EngineSim.h.

◆ m_starter

bool RoR::EngineSim::m_starter
private

Ignition switch is in START position.

Definition at line 201 of file EngineSim.h.

◆ m_tcase_ratio

float RoR::EngineSim::m_tcase_ratio
private

Engine.

Definition at line 185 of file EngineSim.h.

◆ m_torque_curve

TorqueCurve* RoR::EngineSim::m_torque_curve
private

Definition at line 196 of file EngineSim.h.

◆ m_turbo_bov_rpm

float RoR::EngineSim::m_turbo_bov_rpm[MAXTURBO]
private

Definition at line 236 of file EngineSim.h.

◆ m_turbo_engine_rpm_operation

float RoR::EngineSim::m_turbo_engine_rpm_operation
private

Definition at line 234 of file EngineSim.h.

◆ m_turbo_flutters

bool RoR::EngineSim::m_turbo_flutters
private

Definition at line 240 of file EngineSim.h.

◆ m_turbo_has_antilag

bool RoR::EngineSim::m_turbo_has_antilag
private

Definition at line 243 of file EngineSim.h.

◆ m_turbo_has_bov

bool RoR::EngineSim::m_turbo_has_bov
private

Definition at line 235 of file EngineSim.h.

◆ m_turbo_has_wastegate

bool RoR::EngineSim::m_turbo_has_wastegate
private

Definition at line 238 of file EngineSim.h.

◆ m_turbo_inertia_factor

float RoR::EngineSim::m_turbo_inertia_factor
private

Definition at line 230 of file EngineSim.h.

◆ m_turbo_ver

int RoR::EngineSim::m_turbo_ver
private

Definition at line 228 of file EngineSim.h.

◆ m_turbo_wg_threshold_n

float RoR::EngineSim::m_turbo_wg_threshold_n
private

Definition at line 242 of file EngineSim.h.

◆ m_turbo_wg_threshold_p

float RoR::EngineSim::m_turbo_wg_threshold_p
private

Definition at line 241 of file EngineSim.h.

◆ m_upshift_delay_counter

int RoR::EngineSim::m_upshift_delay_counter
private

Definition at line 220 of file EngineSim.h.


The documentation for this class was generated from the following files: