⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 manage.h

📁 包括EPA协议栈
💻 H
字号:
#ifndef _MANAGE_H
#define _MANAGE_H

#include "global.h"

#ifdef MANAGE_GLOBALS
   #define MANAGE_EXTERN
#else
   #define MANAGE_EXTERN extern
#endif

// 设备查询请求查询类型定义
#define QT_PDTAG			   0		//根据PD Tag查询
#define QT_FBTAG			   1		//根据FB Tag查询
#define QT_ELEMENTID		   2		//根据ElementID查询

typedef struct {
	uint32 		 dst_ip;
	VisualString dev_id;				//本地设备标识ID
	VisualString pd_tag;				//本地物理设备位号。长度为32字节,不足用空格(0x20)填充。
	uint16 		 ann_interval;			//设备发送声明消息的时间间隔
	boolean 	 dup_tag_detected;		//该属性描述设备的PD Tag是否与网络上其他设备的PD Tag发生冲突(即重复)。TURE=PD Tag冲突
	uint8 		 dev_r_num;				//本地设备冗余号,如为活动设备,则该值为0,并且无以下参数
	uint16		 lan_r_port;			//发送此服务请求的设备的LAN冗余消息处理端口
	uint8		 dev_r_state;			//本地设备所处的冗余状态:
	uint8		 max_r_num;				//设备最大冗余个数
	uint32		 act_ip;				//活动设备的IP地址(如无冗余,即为本地IP地址);
} EM_SetAttrib;


void Find_Tag_Query_Output(uint8 type, VisualString pd_tag, VisualString fb_tag, uint16 element);
void Find_Tag_Query_Input(PSock psock, uint8 com_type, uint16 msg_id);

void Find_Tag_Reply_Output(uint8 type, uint8 detected, uint16 msg_id, uint16 dst_port, uint32 dst_ip);
void Find_Tag_Reply_Input(PSock psock, uint8 com_type, uint16 msg_id);

void Get_Attrib_Output(uint32 dst_ip);
void Get_Attrib_Input(PSock psock, uint8 com_type, uint16 msgid);

void Get_Attrib_Pos_Output(uint16 msg_id, uint16 dst_port, uint32 dst_ip);
void Get_Attrib_Pos_Input(PSock psock, uint8 com_type, uint16 msg_id);

void Get_Attrib_Neg_Output(uint8 err_class, uint8 err_code, uint8 add_code, uint16 msg_id, uint16 dst_port, uint32 dst_ip);
void Get_Attrib_Neg_Input(PSock psock, uint8 com_type, uint16 msg_id);

void Ann_Output(void);
void Ann_Input(PSock psock, uint8 com_type, uint16 msg_id);

void Set_Attrib_Output(EM_SetAttrib* pmsg);
void Set_Attrib_Input(PSock psock, uint8 com_type, uint16 msg_id);

void Set_Attrib_Pos_Output(uint16 msg_id, uint16 dst_port, uint32 dst_ip);
void Set_Attrib_Pos_Input(PSock psock, uint8 com_type, uint16 msg_id);

void Set_Attrib_Neg_Output(uint8 err_class, uint8 err_code, uint8 add_code, uint16 msg_id, uint16 dst_port, uint32 dst_ip);
void Set_Attrib_Neg_Input(PSock psock, uint8 com_type, uint16 msg_id);

void Clr_Attrib_Output(uint32 dst_ip, VisualString dev_id, VisualString pd_tag);
void Clr_Attrib_Input(PSock psock, uint8 com_type, uint16 msg_id);

void Clr_Attrib_Pos_Output(uint16 msg_id, uint16 dst_port, uint32 dst_ip);
void Clr_Attrib_Pos_Input(PSock psock, uint8 com_type, uint16 msg_id);

void Clr_Attrib_Neg_Output(uint8 err_class, uint8 err_code, uint8 add_code, uint16 msg_id, uint16 dst_port, uint32 dst_ip);
void Clr_Attrib_Neg_Input(PSock psock, uint8 com_type, uint16 msg_id);

#endif	// _MANAGE_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -