#ifndef TELLTALES_USER_H
#define TELLTALES_USER_H

//#include "TYW_stdint.h"
#include "g_includes.h"

typedef enum
{
    m_LED_Fule_Lamp,
    m_LED_TPMS_Lamp,                  
    m_LED_Urea_Lamp,                  
    m_LED_EDC_WaterInFuelInd1_Lamp,  
    m_LED_AIRBAG_Lamp,                
    m_LED_HandBrake_Lamp,             
    m_LED_Diesel_Heating_Lamp,        
    m_LED_TBOX_Lamp,        
    m_LED_EBD_Lamp,                   
    m_LED_EDC_MaxVehSpeedLimSetp_Lamp,
    m_LED_EOBD_Lamp,
    m_LED_Water_High_Lamp,                    
    m_LED_Brake_Lamp,                 
    m_LED_DPF_Lamp,                   
    m_LED_ESC_Lamp,                   
    m_LED_EDC_Lamp,                   
    m_LED_Cruise_Lamp,              
    m_LED_ABS_Lamp,                   
    m_LED_DoorOpen_Lamp,          
    m_LED_EngWaitToStart_Lamp,        
    m_LED_EDC_EngOilPrsLow_Lamp,      
    m_LED_Ffog_Lamp,                  
    m_LED_TurnLeft_Lamp,              
    m_LED_Gearbox_Lamp,               
    m_LED_Gearbox_Serious_Lamp,        
    m_LED_High_Lamp,                  
    m_LED_Park_Lamp,                  
    m_LED_Safety_Belt_Lamp,           
    m_LED_TurnRight_Lamp,             
    m_LED_Rfog_Lamp,    
    m_LED_LDWS_Lamp,  
                
    LED_Max,
} LED_Idx_t;

typedef enum {
    LED_LDWS_G = 0,                          
    LED_Fule_Lamp,                         
    LED_LED3,                         
    LED_LED4,                                           
    LED_TPMS_Lamp,  

    LED_Urea_Lamp,                  
    LED_EDC_WaterInFuelInd1_Lamp,  
    LED_AIRBAG_Lamp,                
    LED_HandBrake_Lamp,             
    LED_Diesel_Heating_Lamp,  

    LED_TBOX_Lamp,       
    LED_LED5,                        
    LED_EBD_Lamp,                   
    LED_EDC_MaxVehSpeedLimSetp_Lamp,
    LED_EOBD_Lamp,     

    LED_Water_High_Lamp,               
    LED_Brake_Lamp,                 
    LED_DPF_Lamp,                   
    LED_ESC_Lamp,                   
    LED_EDC_Lamp,  

    LED_Cruise_Lamp,              
    LED_ABS_Lamp,                   
    LED_DoorOpen_Lamp,          
    LED_EngWaitToStart_Lamp,        
    LED_EDC_EngOilPrsLow_Lamp,      

    LED_Ffog_Lamp,                  
    LED_TurnLeft_Lamp,              
    LED_Gearbox_Lamp,               
    LED_Gearbox_Serious_Lamp,        
    LED_High_Lamp,     

    LED_Park_Lamp,                  
    LED_Safety_Belt_Lamp,           
    LED_TurnRight_Lamp,             
    LED_Rfog_Lamp,                  
    LED_LED7,                  

    LED_LDWS_Y,  
    LED_NumMax,
}LED_Attr_en_t;

typedef struct 
{
    INT8U chip;
    INT8U channel;
    INT8U brightness;
}LED_Attr_st_t;

#define POWERON_SCAN_TIMER   3000ul

#define LED_TEL_OFF (Tellib_uint16_t)(0x00u)
#define LED_TEL1_ON  (Tellib_uint16_t)(0x01u)
#define LED_TEL2_ON  (Tellib_uint16_t)(0x02u)
#define LED_TEL3_ON  (Tellib_uint16_t)(0x03u)

void Telltales_Init(void); 
void TurnLeft_Lamp(void);
void TurnRight_Lamp(void);
INT16U Get_LowFuelWarningSts(void);

//void Telltales_Left_Right_Management_Service(void) ;
//uint8_t  GET_FATIGUE_DRIVE_GET(void);
//void SET_Fatigue_Timekeeping(void);
//uint8_t GET_AIR_POS_STATUS(void);
//void LED_PowerTimer_Service(void);

#endif