#ifndef _DATA_USR_H
#define _DATA_USR_H

#include "data_config.h"
#include "bsp_type.h"
#include "head.h"
#include "MmiData.h"

typedef enum
{
    FIX_SHOW_MENU_CG = 3, // 常规保护
    FIX_SHOW_MENU_CHZ,    // 重合闸
    FIX_SHOW_MENU_FA,     // 常规FA
    FIX_SHOW_MENU_DFA,    // 智能分布式
    FIX_SHOW_MENU_TQHZ,   // 同期合闸
    FIX_SHOW_MENU_ZDJL,   // 自动解列
    FIX_SHOW_MENU_XDLD,   // 小电流接地
    FIX_SHOW_MENU_XLDXGJ, // 线路告警
    FIX_SHOW_MENU_BTCD    // 传动开关
} FixShowMenuId;

/***** 变量对外声明 *****/
extern t_datafixval_cfg gst_usr_dp[]; /* 设备参数 */
extern const uint8_t gst_usr_dp_num;

extern t_datafixval_cfg gst_usr_fs[]; /* 功能软压板 */
extern const uint8_t gst_usr_fs_num;

extern t_datafixval_cfg gst_usr_yxsb[]; /* 运行软压板 */
extern const uint8_t gst_usr_yxsb_num;

extern t_datafixval_cfg gst_usr_area[]; /* 定值区号 */
extern const uint8_t gst_usr_area_num; 

extern t_datafixval_cfg gst_usr_con[]; /* 常规保护 */
extern const uint8_t gst_usr_con_num;

extern t_datafixval_cfg gst_usr_rc[]; /* 重合闸 */
extern const uint8_t gst_usr_rc_num;

extern t_datafixval_cfg gst_usr_fa[]; /* 常规FA */
extern const uint8_t gst_usr_fa_num;

extern t_datafixval_cfg gst_usr_smfa[]; /* 分布式FA */
extern const uint8_t gst_usr_smfa_num;

extern t_datafixval_cfg gst_usr_tq[]; /* 同期合闸 */
extern const uint8_t gst_usr_tq_num;

extern t_datafixval_cfg gst_usr_as[]; /* 自动解列 */
extern const uint8_t gst_usr_as_num;

extern t_datafixval_cfg gst_usr_lcd[]; /* 小电流接地 */
extern const uint8_t gst_usr_lcd_num;

extern t_datafixval_cfg gst_usr_xlga[]; /* 线路告警 */
extern const uint8_t gst_usr_xlga_num;

extern t_datafixval_cfg gst_usr_chkg[]; /* 传动开关 */
extern const uint8_t gst_usr_chkg_num;

/////////////////////////////////////////////////////////////////////////////////

/* 定值查看所需数组 */
extern t_datafixval_cfg_total gst_usr_fix_val[];
extern const uint8_t gst_usr_fix_val_num ; /* 总的定值查看数目 */
/* 装置参数所需数组 */
extern t_datafixval_cfg_total gst_usr_dev_set_val[];
extern const uint8_t gst_usr_dev_set_val_num; /* 总的定值数目 */


extern void data_usr_update_from_system(uint8_t _uc_type, const SET_VALUE * _pt_val);
extern bool data_usr_check_diff(void);

#endif //_DATA_USR_H