/**
 * @file log_modulename.h
 *
 * @brief This file contains logger enumeration values for the module SCHEDULER 
 *
 *  This is a template file to be followed to include new modules in logger software component
 *
 */


/* Note: header guard format should not be changed;
 * valid way to represent header guard should be "_LOG_<your module name>_H_" example: _LOG_SCHEDULER_H_
 * */
#ifndef _LOG_SCHEDULER_H_
#define _LOG_SCHEDULER_H_





/* User has to update enumeration member list */
#define SCHEDULER_FOREACH_LOG(SCHEDULER_LOG_NAME)                             \
        SCHEDULER_LOG_NAME(TIME_DIFF__u32_)                                             \
        SCHEDULER_LOG_NAME(TRIG_REQ__u8__u8_)                                             \
		SCHEDULER_LOG_NAME(TRIG_REQ_ERROR__u8__u8_)                                             \
        SCHEDULER_LOG_NAME(LUT_RX_G_u8_S_u8_)                                             \
        SCHEDULER_LOG_NAME(NEW_LUT_TOTSEG_u8_)                                             \
        SCHEDULER_LOG_NAME(DATE_ERROR)                                             \
        SCHEDULER_LOG_NAME(TIME_ERROR)           \
		SCHEDULER_LOG_NAME(SEG_EXEC_CMPLT)         \
		SCHEDULER_LOG_NAME(SUCCESS_)                \
		SCHEDULER_LOG_NAME(LUT_SEG_CNT_ERR) \
		SCHEDULER_LOG_NAME(OBC_SAT_SYNC_TMR_START)\
		SCHEDULER_LOG_NAME(OBC_SAT_SYNC_TMR_STOP)\
		SCHEDULER_LOG_NAME(OBC__SCH_INIT_REQ)\
		SCHEDULER_LOG_NAME(OBC__SCH_DEINIT_REQ)\
		SCHEDULER_LOG_NAME(OBC__ZES_INIT_REQ)\
		SCHEDULER_LOG_NAME(ZES_STGD_TC)\
		SCHEDULER_LOG_NAME(LUT_STRT__u8_)\
		SCHEDULER_LOG_NAME(LUT_EXEC_CMPLT_u8_)\
		SCHEDULER_LOG_NAME(EPS_REQ_CH__u8__u32_)\
		SCHEDULER_LOG_NAME(EPS_REQ_CH_u8__u32_INP_ERR)\
		SCHEDULER_LOG_NAME(STAGED_TC_u32_)\
		SCHEDULER_LOG_NAME(VM_ON_u32_)\
		SCHEDULER_LOG_NAME(VM_OFF_u32_)\
		SCHEDULER_LOG_NAME(ADCS_TRIG_ID__u8__ADDR__u32__SIZE__u32_)   \
		SCHEDULER_LOG_NAME(OTSU_TRIG_ID_u8__ADDR_u32__SIZE_u32_)\
		SCHEDULER_LOG_NAME(SBAND_TX_ON_OFF__u32_) \
		SCHEDULER_LOG_NAME(OTSU_SYNC_TIME_CALCULATED__u32_)\
		SCHEDULER_LOG_NAME(SECS_ERR)  \
		SCHEDULER_LOG_NAME(RTC_ERR)\
		SCHEDULER_LOG_NAME(DSECS__u32_)\
		SCHEDULER_LOG_NAME(SEG_EXEC_CMPLT_u8__u8_) \
		SCHEDULER_LOG_NAME(TIMER_STARTS__u32_)    \
		SCHEDULER_LOG_NAME(TIMER_EXPIRES__u32_)\
		SCHEDULER_LOG_NAME(_90MINS_TIMER_FIRST_START__u64_DIFF__u32_)\
		SCHEDULER_LOG_NAME(_90MINS_TIMER_AFTER_RESTART__u64_DIFF__u32_)\
        SCHEDULER_LOG_NAME(TRIG_No__G_u8_S_u8_E_u8_)  \
        SCHEDULER_LOG_NAME(CLR_LUT__u8_)  \
        SCHEDULER_LOG_NAME(BIN__hex_)  \
		SCHEDULER_LOG_NAME(LUT_RDY_hex_)  \
		SCHEDULER_LOG_NAME(D_u8_E_u8__ST__u32__ET__u32_)     \
                SCHEDULER_LOG_NAME(SCHEDULER_LOG_MAX)


#define SCHEDULER_GENERATE_ENUM(ENUM) ENUM,
#define SCHEDULER_GENERATE_STRING(STRING) #STRING,

typedef enum log_scheduler_e_
{
        SCHEDULER_FOREACH_LOG(SCHEDULER_GENERATE_ENUM)
}log_scheduler_e;

#endif /* _LOG_SCHEDULER_H_ */
