trait DrivetrainSignals:
    signal_interface.drivetrain_throttle_input is Physics.Signals.Input: drivetrain.engine.throttle_input
    signal_interface.drivetrain_gear_selection_input is Physics.Signals.IntInput: drivetrain.gear_box.gear_selection_input

    signal_interface.drivetrain_front_left_brake_engage_input is Physics.Signals.FractionInput: drivetrain.front_left_brake.engagement_fraction_input
    signal_interface.drivetrain_front_right_brake_engage_input is Physics.Signals.FractionInput: drivetrain.front_right_brake.engagement_fraction_input
    signal_interface.drivetrain_mid_left_brake_engage_input is Physics.Signals.FractionInput: drivetrain.mid_left_brake.engagement_fraction_input
    signal_interface.drivetrain_mid_right_brake_engage_input is Physics.Signals.FractionInput: drivetrain.mid_right_brake.engagement_fraction_input
    signal_interface.drivetrain_rear_left_brake_engage_input is Physics.Signals.FractionInput: drivetrain.rear_left_brake.engagement_fraction_input
    signal_interface.drivetrain_rear_right_brake_engage_input is Physics.Signals.FractionInput: drivetrain.rear_right_brake.engagement_fraction_input

    signal_interface.drivetrain_front_diff_lock_input is Physics.Signals.BoolInput: drivetrain.front_differential.lock_up_input
    signal_interface.drivetrain_mid_diff_lock_input is Physics.Signals.BoolInput: drivetrain.mid_differential.lock_up_input
    signal_interface.drivetrain_rear_diff_lock_input is Physics.Signals.BoolInput: drivetrain.rear_differential.lock_up_input

    signal_interface.drivetrain_mid_center_axle_lock_input is Physics.Signals.BoolInput: drivetrain.mid_center_axle.lock_up_input
    signal_interface.drivetrain_rear_center_axle_lock_input is Physics.Signals.BoolInput: drivetrain.rear_center_axle.lock_up_input

    signal_interface.drivetrain_engine_speed_rpm is Physics.Signals.Output: drivetrain.engine.rpm_output
    signal_interface.drivetrain_engine_torque is Physics.Signals.Output: drivetrain.engine.torque_output
    signal_interface.drivetrain_gear_selection is Physics.Signals.IntOutput: drivetrain.gear_box.gear_selection_output
    signal_interface.drivetrain_gear_ratio is Physics.Signals.RatioOutput: drivetrain.gear_box.gear_ratio_output

    signal_interface.drivetrain_torque_converter_slip_velocity is Physics.Signals.Output: drivetrain.torque_converter.slip_velocity_output
    signal_interface.drivetrain_torque_converter_turbine_torque is Physics.Signals.Output: drivetrain.torque_converter_turbine_torque
    signal_interface.drivetrain_torque_converter_pump_torque is Physics.Signals.Output: drivetrain.torque_converter_pump_torque

    signal_interface.drivetrain_front_diff_lock_engaged is Physics.Signals.BoolOutput: drivetrain.front_differential.locked_up_output
    signal_interface.drivetrain_mid_diff_lock_engaged is Physics.Signals.BoolOutput: drivetrain.mid_differential.locked_up_output
    signal_interface.drivetrain_rear_diff_lock_engaged is Physics.Signals.BoolOutput: drivetrain.rear_differential.locked_up_output

    signal_interface.drivetrain_mid_center_axle_lock_engaged is Physics.Signals.BoolOutput: drivetrain.mid_center_axle.locked_up_output
    signal_interface.drivetrain_rear_center_axle_lock_engaged is Physics.Signals.BoolOutput: drivetrain.rear_center_axle.locked_up_output

    signal_interface.drivetrain_wheel_front_left_torque is Physics.Signals.Output: drivetrain.front_left_final_drive.torque_output
    signal_interface.drivetrain_wheel_front_right_torque is Physics.Signals.Output: drivetrain.front_right_final_drive.torque_output
    signal_interface.drivetrain_wheel_mid_left_torque is Physics.Signals.Output: drivetrain.mid_left_final_drive.torque_output
    signal_interface.drivetrain_wheel_mid_right_torque is Physics.Signals.Output: drivetrain.mid_right_final_drive.torque_output
    signal_interface.drivetrain_wheel_rear_left_torque is Physics.Signals.Output: drivetrain.rear_left_final_drive.torque_output
    signal_interface.drivetrain_wheel_rear_right_torque is Physics.Signals.Output: drivetrain.rear_right_final_drive.torque_output
