from enum import Enum


class SenmlNames(Enum):
    # ========== ECU ==========
    # ECU:inverter:info
    ECU_INVERTER_INFO = "ECU:inverter:info"
    ECU_INVERTER_INFO_INVERTERON_FL = "ECU:inverter:info:FLon"
    ECU_INVERTER_INFO_INVERTERON_FR = "ECU:inverter:info:FRon"
    ECU_INVERTER_INFO_INVERTERON_RL = "ECU:inverter:info:RLon"
    ECU_INVERTER_INFO_INVERTERON_RR = "ECU:inverter:info:RRon"
    ECU_INVERTER_INFO_INVERTERDCON_FL = "ECU:inverter:info:FLdcOn"
    ECU_INVERTER_INFO_INVERTERDCON_FR = "ECU:inverter:info:FRdcOn"
    ECU_INVERTER_INFO_INVERTERDCON_RL = "ECU:inverter:info:RLdcOn"
    ECU_INVERTER_INFO_INVERTERDCON_RR = "ECU:inverter:info:RRdcOn"
    ECU_INVERTER_INFO_INVERTERSYSTEMREADY_FL = "ECU:inverter:info:FLready"
    ECU_INVERTER_INFO_INVERTERSYSTEMREADY_FR = "ECU:inverter:info:FRready"
    ECU_INVERTER_INFO_INVERTERSYSTEMREADY_RL = "ECU:inverter:info:RLready"
    ECU_INVERTER_INFO_INVERTERSYSTEMREADY_RR = "ECU:inverter:info:RRready"
    # ECU:inverter:status
    ECU_INVERTER_STATUS = "ECU:inverter:status"
    ECU_INVERTER_STATUS_INVERTERDERATNG_FL = "ECU:inverter:status:FLderating"
    ECU_INVERTER_STATUS_INVERTERDERATNG_FR = "ECU:inverter:status:FRderating"
    ECU_INVERTER_STATUS_INVERTERDERATNG_RL = "ECU:inverter:status:RLderating"
    ECU_INVERTER_STATUS_INVERTERDERATNG_RR = "ECU:inverter:status:RRderating"
    ECU_INVERTER_STATUS_INVERTERERROR_FL = "ECU:inverter:status:FLerror"
    ECU_INVERTER_STATUS_INVERTERERROR_FR = "ECU:inverter:status:FRerror"
    ECU_INVERTER_STATUS_INVERTERERROR_RL = "ECU:inverter:status:RLerror"
    ECU_INVERTER_STATUS_INVERTERERROR_RR = "ECU:inverter:status:RRerror"
    ECU_INVERTER_STATUS_INVERTERERRORCODE_FL = "ECU:inverter:status:FLerrorCode"
    ECU_INVERTER_STATUS_INVERTERERRORCODE_FR = "ECU:inverter:status:FRerrorCode"
    ECU_INVERTER_STATUS_INVERTERERRORCODE_RL = "ECU:inverter:status:RLerrorCode"
    ECU_INVERTER_STATUS_INVERTERERRORCODE_RR = "ECU:inverter:status:RRerrorCode"
    # ECU:inverter:sensor
    ECU_INVERTER_SENSOR = "ECU:inverter:sensor"
    ECU_INVERTER_SENSOR_INVERTERACTUALTORQUE_FL = "ECU:inverter:sensor:FLtorque"
    ECU_INVERTER_SENSOR_INVERTERACTUALTORQUE_FR = "ECU:inverter:sensor:FRtorque"
    ECU_INVERTER_SENSOR_INVERTERACTUALTORQUE_RL = "ECU:inverter:sensor:RLtorque"
    ECU_INVERTER_SENSOR_INVERTERACTUALTORQUE_RR = "ECU:inverter:sensor:RRtorque"
    ECU_INVERTER_SENSOR_INVERTERSVOLTAGE_FL = "ECU:inverter:sensor:FLinverterVoltage"
    ECU_INVERTER_SENSOR_INVERTERSVOLTAGE_FR = "ECU:inverter:sensor:FRinverterVoltage"
    ECU_INVERTER_SENSOR_INVERTERSVOLTAGE_RL = "ECU:inverter:sensor:RLinverterVoltage"
    ECU_INVERTER_SENSOR_INVERTERSVOLTAGE_RR = "ECU:inverter:sensor:RRinverterVoltage"
    ECU_INVERTER_SENSOR_INVERTERTEMP_FL = "ECU:inverter:sensor:FLinverterTemp"
    ECU_INVERTER_SENSOR_INVERTERTEMP_FR = "ECU:inverter:sensor:FRinverterTemp"
    ECU_INVERTER_SENSOR_INVERTERTEMP_RL = "ECU:inverter:sensor:RLinverterTemp"
    ECU_INVERTER_SENSOR_INVERTERTEMP_RR = "ECU:inverter:sensor:RRinverterTemp"
    ECU_INVERTER_SENSOR_INVERTERACTUALRPM_FL = "ECU:inverter:sensor:FLspeed"
    ECU_INVERTER_SENSOR_INVERTERACTUALRPM_FR = "ECU:inverter:sensor:FRspeed"
    ECU_INVERTER_SENSOR_INVERTERACTUALRPM_RL = "ECU:inverter:sensor:RLspeed"
    ECU_INVERTER_SENSOR_INVERTERACTUALRPM_RR = "ECU:inverter:sensor:RRspeed"
    # ECU:accu:sensor
    ECU_ACCU_SENSOR = "ECU:accu:sensor"
    ECU_ACCU_SENSOR_ACCUPOWER = "ECU:accu:sensor:accuPower"
    ECU_ACCU_SENSOR_AVERAGEPOWER = "ECU:accu:sensor:averagePower"
    ECU_ACCU_SENSOR_ACCUSTATEOFCHARGE = "ECU:accu:sensor:charge"
    ECU_ACCU_SENSOR_HVVOLTAGE = "ECU:accu:sensor:voltage"
    ECU_ACCU_SENSOR_HVCURRENT = "ECU:accu:sensor:current"
    ECU_ACCU_SENSOR_ACCUTEMPERATURE = "ECU:accu:sensor:accuTemperature"
    # ECU:error:code
    ECU_ERROR_CODE = "ECU:error:code"
    ECU_ERROR_CODE_CODE = "ECU:error:code:code"
    # ECU:driverless:control
    ECU_DRIVERLESS_CONTROL = "ECU:driverless:control"
    ECU_DRIVERLESS_CONTROL_STEERINGANGLE = "ECU:driverless:control:steeringAngle"
    ECU_DRIVERLESS_CONTROL_DVTHROTTLE = "ECU:driverless:control:throttle"
    ECU_DRIVERLESS_CONTROL_DVBRAKE = "ECU:driverless:control:brake"
    # ECU:motor:sensor
    ECU_MOTOR_SENSOR = "ECU:motor:sensor"
    ECU_MOTOR_SENSOR_MOTORTEMP_FL = "ECU:motor:sensor:FLmotorTemp"
    ECU_MOTOR_SENSOR_MOTORTEMP_FR = "ECU:motor:sensor:FRmotorTemp"
    ECU_MOTOR_SENSOR_MOTORTEMP_BL = "ECU:motor:sensor:BLmotorTemp"
    ECU_MOTOR_SENSOR_MOTORTEMP_BR = "ECU:motor:sensor:BRmotorTemp"
    # ECU:steering:sensor
    ECU_STEERING_SENSOR = "ECU:steering:sensor"
    ECU_STEERING_SENSOR_STEERINGCURRENT = "ECU:steering:sensor:SteeringCurrent"
    ECU_STEERING_SENSOR_STEERINGERRORCODE = "ECU:steering:sensor:SteeringErrorCode"
    ECU_STEERING_SENSOR_STEERINGPOSITION = "ECU:steering:sensor:SteeringPosition"
    ECU_STEERING_SENSOR_STEERINGSPEED = "ECU:steering:sensor:SteeringSpeed"
    ECU_STEERING_SENSOR_STEERINGTEMPERATURE = "ECU:steering:sensor:SteeringTemperature"
    # ECU:pedal:sensor
    ECU_PEDAL_SENSOR = "ECU:pedal:sensor"
    ECU_PEDAL_SENSOR_BREAKPRESSUREFRONT = "ECU:pedal:sensor:FbreakPressure"
    ECU_PEDAL_SENSOR_BREAKPRESSUREREAR = "ECU:pedal:sensor:RbreakPressure"
    ECU_PEDAL_SENSOR_THROTTLELEFTMAX = "ECU:pedal:sensor:LthrottleMax"
    ECU_PEDAL_SENSOR_THROTTLELEFTMIN = "ECU:pedal:sensor:LthrottleMin"
    ECU_PEDAL_SENSOR_THROTTLELEFTVALUE = "ECU:pedal:sensor:LthrottleValue"
    ECU_PEDAL_SENSOR_THROTTLERIGHTMAX = "ECU:pedal:sensor:RthrottleMax"
    ECU_PEDAL_SENSOR_THROTTLERIGHTMIN = "ECU:pedal:sensor:RthrottleMin"
    ECU_PEDAL_SENSOR_THROTTLERIGHTVALUE = "ECU:pedal:sensor:RthrottleValue"
    # ECU:other:status
    ECU_OTHER_STATUS = "ECU:other:status"
    ECU_OTHER_STATUS_AIRNEGATIVE = "ECU:other:status:AIRNegative"
    ECU_OTHER_STATUS_AIRPOSITIVE = "ECU:other:status:AIRPositive"
    ECU_OTHER_STATUS_DC_DC_24V = "ECU:other:status:DC_DC_24V"
    ECU_OTHER_STATUS_DVON = "ECU:other:status:DVon"
    ECU_OTHER_STATUS_LV_BATTERY_24 = "ECU:other:status:LV_Battery_24V"
    ECU_OTHER_STATUS_RTDBUTTON = "ECU:other:status:RTDButton"
    ECU_OTHER_STATUS_SDC_PRESSED = "ECU:other:status:SDC_Pressed"
    ECU_OTHER_STATUS_TSBUTTON = "ECU:other:status:TSButton"
    ECU_OTHER_STATUS_CURRENT = "ECU:other:status:current"
    ECU_OTHER_STATUS_INPUT_12V = "ECU:other:status:input_12V"
    ECU_OTHER_STATUS_PRECHARGERELAY = "ECU:other:status:prechargeRelay"
