#ifndef GET_KEYWORD_H
#define GET_KEYWORD_H

#define STR_MAX_NUM 20			//暂定比较数组中最大字符串数量为20，后续可按需更改
#define STR_NAME_MAX_LEN 11		//1字节"<" + 8字节(4个汉字) + 1字节">" + 1字节"\0"

//枚举定义
enum
{
	KEYWORD_YC,	//遥测
	KEYWORD_YX,	//遥信
	KEYWORD_YK,	//遥控
};

typedef struct NAME_COMPARE
{
	char namestr[STR_NAME_MAX_LEN];
	
}NAME_COMPARE;


//结构体定义
typedef void (*remote_func)(u8, u32);	//传递值分别为硬件地址、板卡槽位
struct THREE_REMOTE
{
	int type;				//关键字属性(枚举量)
	char *name_type;		//关键字属性(字符串)，此部分内容会生成在/tmp/keyword.csv
	char *name;				//关键字，此部分内容会生成在/tmp/keyword.csv
	char *name_explain;		//关键字说明，此部分内容会生成在/tmp/keyword.csv
	remote_func function;	//关键字处理接口
};

extern const int REMOTE_NUM;
extern struct THREE_REMOTE g_three_remote_func[];

//函数定义
extern void three_remote_run(void);
void create_keyword_statement(void);
extern char* shield_str(struct equ_config_di *ecd);
extern void get_config(void);

#endif
