📄 mib.h
字号:
break;
case 7:
h2n16(gfb_app[id].first_instantion, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
default:
Read_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
return EPA_NO_ERR;
}
__inline uint8 FBApp_Write(uint16 id, uint16 idx, OctetString payload, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
id = id - MIB_BASE_OBJID_FBAPP;
if(id >= MIB_NUM_FBAPP) {
Write_Neg_Output(0, 1, 1, 0, msg_id, src_port, src_ip);
return EPA_OBJID_ILLEGAL;
}
switch (idx) {
case 0:
memcpy(gfb_app[id].name, payload + 4, VISUAL_STRING_LEN);
n2h16(payload + 4 + VISUAL_STRING_LEN, &gfb_app[id].type);
n2h16(payload + 6 + VISUAL_STRING_LEN, &gfb_app[id].max_instantion);
n2h32(payload + 8 + VISUAL_STRING_LEN, &gfb_app[id].exec_time);
n2h16(payload + 12 + VISUAL_STRING_LEN, &gfb_app[id].first_instantion);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 3:
memcpy(gfb_app[id].name, payload, VISUAL_STRING_LEN);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 4:
n2h16(payload, &gfb_app[id].type);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 5:
n2h16(payload, &gfb_app[id].max_instantion);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 6:
n2h32(payload, &gfb_app[id].exec_time);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 7:
n2h16(payload, &gfb_app[id].first_instantion);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
default:
if (idx > 7) {
Write_Neg_Output(0, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
Write_Neg_Output(0, 1, 3, 0, msg_id, src_port, src_ip);
return EPA_OBJ_UNWRITABLE;
}
return EPA_NO_ERR;
}
void DomainAppHdr_Init(void);
__inline uint8 DomainAppHdr_Read(uint16 idx, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
OctetString payload;
switch(idx){
case 0:
h2n16(gdomain_app_hdr.obj_id, payload);
h2n16(gdomain_app_hdr.num_domain_obj, payload + 2);
h2n16(gdomain_app_hdr.first_domain_obj, payload + 4);
h2n16(gdomain_app_hdr.cfged_domain_obj, payload + 6);
h2n16(gdomain_app_hdr.uncfged_domain_obj, payload + 8);
Read_Pos_Output(src_app, payload, 10, msg_id, src_port, src_ip);
break;
case 2:
h2n16(gdomain_app_hdr.num_domain_obj, payload + 2);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 3:
h2n16(gdomain_app_hdr.first_domain_obj, payload + 4);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 4:
h2n16(gdomain_app_hdr.cfged_domain_obj, payload + 6);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 5:
h2n16(gdomain_app_hdr.uncfged_domain_obj, payload + 8);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
default:
Read_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
return EPA_NO_ERR;
}
__inline uint8 DomainAppHdr_Write(uint16 idx, OctetString payload, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
if (idx > 5) {
Write_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
Write_Neg_Output(src_app, 1, 3, 0, msg_id, src_port, src_ip);
return EPA_OBJ_UNWRITABLE;
}
void DomainApp_Init(void);
__inline uint8 DomainApp_Read(uint16 id, uint16 idx, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
OctetString payload;
id = id - MIB_BASE_OBJID_DOMAINAPP;
if(id >= MIB_NUM_DOMAINAPP) {
Read_Neg_Output(src_app, 1, 1, 0, msg_id, src_port, src_ip);
return EPA_OBJID_ILLEGAL;
}
switch(idx){
case 0:
h2n16(gdomain_app[id].obj_id, payload);
h2n16(gdomain_app[id].domain_obj_id, payload + 2);
payload[4] = gdomain_app[id].cfg_status;
payload[5] = EPA_RESERVED_VALUE;
payload[6] = EPA_RESERVED_VALUE;
payload[7] = EPA_RESERVED_VALUE;
memcpy(payload + 8, gdomain_app[id].name, VISUAL_STRING_LEN);
Read_Pos_Output(src_app, payload, (8 + VISUAL_STRING_LEN), msg_id, src_port, src_ip);
break;
case 2:
h2n16(gdomain_app[id].domain_obj_id, payload + 2);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 3:
h2n16(gdomain_app[id].cfg_status, payload + 4);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 4:
payload[6] = gdomain_app[id].cfg_status;
Read_Pos_Output(src_app, payload, 1, msg_id, src_port, src_ip);
break;
case 6:
memcpy(payload + 10, gdomain_app[id].name, VISUAL_STRING_LEN);
Read_Pos_Output(src_app, payload, VISUAL_STRING_LEN, msg_id, src_port, src_ip);
break;
default:
Read_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
return EPA_NO_ERR;
}
__inline uint8 DomainApp_Write(uint16 id, uint16 idx, OctetString payload, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
id = id - MIB_BASE_OBJID_DOMAINAPP;
if(id >= MIB_NUM_DOMAINAPP) {
Write_Neg_Output(src_app, 1, 1, 0, msg_id, src_port, src_ip);
return EPA_OBJID_ILLEGAL;
}
switch (idx) {
case 0:
n2h16(payload + 2, &gdomain_app[id].domain_obj_id);
gdomain_app[id].cfg_status = payload[4];
gdomain_app[id].res[0] = EPA_RESERVED_VALUE;
gdomain_app[id].res[1] = EPA_RESERVED_VALUE;
gdomain_app[id].res[2] = EPA_RESERVED_VALUE;
memcpy(gdomain_app[id].name, payload + 8, VISUAL_STRING_LEN);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 3:
n2h16(payload, &gdomain_app[id].domain_obj_id);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 4:
gdomain_app[id].cfg_status = payload[0];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 5:
memcpy(gdomain_app[id].name, payload, VISUAL_STRING_LEN);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
default:
if (idx > 5) {
Write_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
Write_Neg_Output(src_app, 1, 3, 0, msg_id, src_port, src_ip);
return EPA_OBJ_UNWRITABLE;
}
return EPA_NO_ERR;
}
void LinkObjHdr_Init(void);
__inline uint8 LinkObjHdr_Read(uint16 idx, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
OctetString payload;
switch(idx){
case 0:
h2n16(glink_obj_hdr.obj_id, payload);
h2n16(glink_obj_hdr.num_link_obj, payload + 2);
h2n16(glink_obj_hdr.first_link_obj, payload + 4);
h2n16(glink_obj_hdr.cfged_link_obj, payload + 6);
h2n16(glink_obj_hdr.uncfged_link_obj, payload + 8);
Read_Pos_Output(src_app, payload, 10, msg_id, src_port, src_ip);
break;
case 2:
h2n16(glink_obj_hdr.num_link_obj, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 3:
h2n16(glink_obj_hdr.first_link_obj, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 4:
h2n16(glink_obj_hdr.cfged_link_obj, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 5:
h2n16(glink_obj_hdr.uncfged_link_obj, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
default:
Read_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
return EPA_NO_ERR;
}
__inline uint8 LinkObjHdr_Write(uint16 idx, OctetString payload, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
if (idx > 5) {
Write_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
Write_Neg_Output(src_app, 1, 3, 0, msg_id, src_port, src_ip);
return EPA_OBJ_UNWRITABLE;
}
void LinkObj_Init(void);
__inline uint8 LinkObj_Read(uint16 id, uint16 idx, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
OctetString payload;
id = id - MIB_BASE_OBJID_LINKOBJ;
if(id >= MIB_NUM_LINKOBJ) {
Read_Neg_Output(src_app, 1, 1, 0, msg_id, src_port, src_ip);
return EPA_OBJID_ILLEGAL;
}
switch(idx){
case 0:
h2n16(glink_obj[id].obj_id, payload);
h2n16(glink_obj[id].local_app, payload + 2);
h2n16(glink_obj[id].local_obj, payload + 4);
h2n16(glink_obj[id].rmt_app, payload + 6);
h2n16(glink_obj[id].rmt_obj, payload + 8);
payload[10] = glink_obj[id].srv_op;
payload[11] = glink_obj[id].srv_role;
h2n32(glink_obj[id].rmt_ip, payload + 12);
h2n32(glink_obj[id].send_time_offset, payload + 16);
Read_Pos_Output(src_app, payload, 20, msg_id, src_port, src_ip);
break;
case 2:
h2n16(glink_obj[id].local_app, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 3:
h2n16(glink_obj[id].local_obj, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 4:
h2n16(glink_obj[id].rmt_app, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 5:
h2n16(glink_obj[id].rmt_obj, payload);
Read_Pos_Output(src_app, payload, 2, msg_id, src_port, src_ip);
break;
case 6:
payload[0] = glink_obj[id].srv_op;
Read_Pos_Output(src_app, payload, 1, msg_id, src_port, src_ip);
break;
case 7:
payload[0] = glink_obj[id].srv_role;
Read_Pos_Output(src_app, payload, 1, msg_id, src_port, src_ip);
break;
case 8:
h2n32(glink_obj[id].rmt_ip, payload);
Read_Pos_Output(src_app, payload, 4, msg_id, src_port, src_ip);
break;
case 9:
h2n32(glink_obj[id].send_time_offset, payload);
Read_Pos_Output(src_app, payload, 4, msg_id, src_port, src_ip);
break;
default:
Read_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
return EPA_NO_ERR;
}
__inline uint8 LinkObj_Write(uint16 id, uint16 idx, OctetString payload, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip) {
id = id - MIB_BASE_OBJID_LINKOBJ;
if(id >= MIB_NUM_LINKOBJ) {
Write_Neg_Output(src_app, 1, 1, 0, msg_id, src_port, src_ip);
return EPA_OBJID_ILLEGAL;
}
switch (idx) {
case 0:
n2h16(payload + 2, &glink_obj[id].local_app);
n2h16(payload + 4, &glink_obj[id].local_obj);
n2h16(payload + 6, &glink_obj[id].rmt_app);
n2h16(payload + 8, &glink_obj[id].rmt_obj);
glink_obj[id].srv_op = payload[10];
glink_obj[id].srv_role = payload[11];
n2h32(payload + 12, &glink_obj[id].rmt_ip);
n2h32(payload + 16, &glink_obj[id].send_time_offset);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 2:
n2h16(payload, &glink_obj[id].local_app);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 3:
n2h16(payload, &glink_obj[id].local_obj);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 4:
n2h16(payload, &glink_obj[id].rmt_app);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 5:
n2h16(payload, &glink_obj[id].rmt_obj);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 6:
glink_obj[id].srv_op = payload[0];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 7:
glink_obj[id].srv_role = payload[0];
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 8:
n2h32(payload, &glink_obj[id].rmt_ip);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
case 9:
n2h32(payload, &glink_obj[id].send_time_offset);
Write_Pos_Output(src_app, msg_id, src_port, src_ip);
break;
default:
if (idx > 9) {
Write_Neg_Output(src_app, 1, 2, 0, msg_id, src_port, src_ip);
return EPA_SUBINDEX_ILLEGAL;
}
Write_Neg_Output(src_app, 1, 3, 0, msg_id, src_port, src_ip);
return EPA_OBJ_UNWRITABLE;
}
gAtcPrdOff = glink_obj[id].send_time_offset;
return EPA_NO_ERR;
}
/*----------------------------------------------------------------------------------*
*- Read & Write Interface of EPA Mib
*----------------------------------------------------------------------------------*/
uint8 MIBInit(void);
uint8 MIBRead(uint16 obj_id, uint16 sub_idx, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip);
uint8 MIBWrite(uint16 obj_id, uint16 sub_idx, OctetString payload, uint16 msg_id, uint16 src_app, uint16 src_port, uint32 src_ip);
#endif // _MIB_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -