|
|
|
|
/****************************************************************************/
|
|
|
|
|
/* Copyright (c) 2007,<2C><><EFBFBD>̼<EFBFBD><CCBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾ */
|
|
|
|
|
/* All rights reserved. */
|
|
|
|
|
/* */
|
|
|
|
|
/* ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
|
|
|
|
/** <20><><EFBFBD><EFBFBD>id<69><64><EFBFBD><EFBFBD>
|
|
|
|
|
* @file ai_objid.h */
|
|
|
|
|
/* */
|
|
|
|
|
/* <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> ע<><D7A2> */
|
|
|
|
|
/* 2007/07/18 TYJ <20><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD> */
|
|
|
|
|
/****************************************************************************/
|
|
|
|
|
#ifndef IEC61850_AI_OBJID_INCLUDE
|
|
|
|
|
#define IEC61850_AI_OBJID_INCLUDE
|
|
|
|
|
|
|
|
|
|
#include "sysincs.h"
|
|
|
|
|
#include "glbtypes.h"
|
|
|
|
|
#include "mvl_defs.h"
|
|
|
|
|
#include "ai_def.h"
|
|
|
|
|
#include "ai_obj.h"
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
|
extern "C" {
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
*<EFBFBD><EFBFBD>ȡied<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ld ln ds fco
|
|
|
|
|
*@param ied ied<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*@return <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*/
|
|
|
|
|
ST_INT ai_get_ied_obj_num(AI_IED_CTRL *ied);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ld<EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param ied <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>ṹ
|
|
|
|
|
* @return <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>, ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>0
|
|
|
|
|
* @author guoqiangm@xjgc.com
|
|
|
|
|
*/
|
|
|
|
|
ST_INT ai_get_ld_num(AI_IED_CTRL *ied);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ln<EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param ied <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>ṹ
|
|
|
|
|
* @return <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>, ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>0
|
|
|
|
|
* @author guoqiangm@xjgc.com
|
|
|
|
|
*/
|
|
|
|
|
ST_INT ai_get_ln_num(AI_IED_CTRL *ied);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ds<EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param ied <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>ṹ
|
|
|
|
|
* @return <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>, ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>0
|
|
|
|
|
* @author guoqiangm@xjgc.com
|
|
|
|
|
*/
|
|
|
|
|
ST_INT ai_get_ds_num(AI_IED_CTRL *ied);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id
|
|
|
|
|
* @param ied <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>Ľṹָ<EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_ref <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @return <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD><EFBFBD>id, ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>-1
|
|
|
|
|
*/
|
|
|
|
|
AI_OBJ_ID ai_obj_ref_to_id(AI_IED_CTRL *ied, ST_CHAR *obj_ref);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id<EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>.
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD>ʽ<EFBFBD>磺
|
|
|
|
|
* E1Q1SB1C1<EFBFBD><EFBFBD>E1Q1SB1C1/LLN0$ST$Mod<EFBFBD><EFBFBD>E1Q1SB1C1/LLN0$myDsName<EFBFBD><EFBFBD>@myDsName
|
|
|
|
|
* @param ied <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>Ľṹָ<EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_id <EFBFBD><EFBFBD><EFBFBD><EFBFBD>id
|
|
|
|
|
* @param obj_ref <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @return <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SD_SUCCESS, ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>SD_FAILURE
|
|
|
|
|
*/
|
|
|
|
|
ST_RET ai_obj_id_to_ref(AI_IED_CTRL *ied, AI_OBJ_ID obj_id, ST_CHAR *obj_ref);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id<EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽṹ
|
|
|
|
|
* @param vmd <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>Ľṹָ<EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_id <EFBFBD><EFBFBD><EFBFBD><EFBFBD>id
|
|
|
|
|
* @param obj_name <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>룬obj_name<EFBFBD>ṹ<EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD>ɽӿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @return <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SD_SUCCESS, ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>SD_FAILURE
|
|
|
|
|
*/
|
|
|
|
|
ST_RET ai_obj_id_to_objName(AI_IED_CTRL *ied, AI_OBJ_ID obj_id, OBJECT_NAME *obj_name);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽṹ
|
|
|
|
|
* @param vmd <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>Ľṹָ<EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_ref <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_name <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>룬obj_name<EFBFBD>ṹ<EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD><EFBFBD>ɽӿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @return <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SD_SUCCESS, ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>SD_FAILURE
|
|
|
|
|
*/
|
|
|
|
|
ST_RET ai_obj_ref_to_objName(ST_CHAR *obj_ref, OBJECT_NAME *obj_name);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽṹ<EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>.
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD>ʽ<EFBFBD>磺
|
|
|
|
|
* E1Q1SB1C1<EFBFBD><EFBFBD>E1Q1SB1C1/LLN0$ST$Mod<EFBFBD><EFBFBD>E1Q1SB1C1/LLN0$myDsName<EFBFBD><EFBFBD>@myDsName
|
|
|
|
|
* @param obj_name <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽṹ
|
|
|
|
|
* @param obj_ref <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @return <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SD_SUCCESS, ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>SD_FAILURE
|
|
|
|
|
*/
|
|
|
|
|
ST_RET ai_objName_to_ref(OBJECT_NAME *obj_name, ST_CHAR *obj_ref);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD>ͷŶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽṹobj name<EFBFBD><EFBFBD><EFBFBD>ڴ<EFBFBD>.
|
|
|
|
|
* <EFBFBD>ͷ<EFBFBD>obj name<EFBFBD>е<EFBFBD>time_id<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ棬domain_idָ<EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڴ棬<EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>dom<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>name<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_name <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽṹ
|
|
|
|
|
* @return ST_VOID
|
|
|
|
|
*/
|
|
|
|
|
ST_VOID ai_cleanup_objName(OBJECT_NAME *obj_name);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id<EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹ
|
|
|
|
|
* @param ied <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>ṹ
|
|
|
|
|
* @param obj_id <EFBFBD><EFBFBD><EFBFBD><EFBFBD>id
|
|
|
|
|
* @return <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹָ<EFBFBD><EFBFBD>, ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>NULL
|
|
|
|
|
*/
|
|
|
|
|
AI_OBJ_IDCTRL *ai_get_obj_id_ctrl(AI_IED_CTRL *ied, AI_OBJ_ID obj_id);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id<EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽṹ<EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>ied ld ln ds<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵Ķ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param ied <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>ṹ
|
|
|
|
|
* @param id <EFBFBD><EFBFBD><EFBFBD><EFBFBD>id
|
|
|
|
|
* @return <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṹָ<EFBFBD><EFBFBD>, ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>NULL
|
|
|
|
|
*/
|
|
|
|
|
AI_COMMON_OBJ *ai_obj_id_to_cobj(AI_IED_CTRL *ied, AI_OBJ_ID id);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD>obj_id<EFBFBD><EFBFBD>ȡ<EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD>µĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵Ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param ied <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD>
|
|
|
|
|
* @param obj_id <EFBFBD><EFBFBD><EFBFBD><EFBFBD>id<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊld<EFBFBD><EFBFBD>LN<EFBFBD><EFBFBD>FCO<EFBFBD><EFBFBD>id
|
|
|
|
|
* @return ST_INT <EFBFBD><EFBFBD><EFBFBD>ػ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
|
|
|
|
|
*/
|
|
|
|
|
ST_INT ai_get_prim_val_num(AI_IED_CTRL *ied, AI_OBJ_ID obj_id);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD>obj_id<EFBFBD><EFBFBD>ȡ<EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD>µĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>id<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param ied <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD>
|
|
|
|
|
* @param obj_id <EFBFBD><EFBFBD><EFBFBD><EFBFBD>id,<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊld<EFBFBD><EFBFBD>LN<EFBFBD><EFBFBD>D0<EFBFBD><EFBFBD>DA<EFBFBD><EFBFBD>id
|
|
|
|
|
* @param prim_obj_num <EFBFBD><EFBFBD><EFBFBD>淵<EFBFBD>صĻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ
|
|
|
|
|
* @return AI_OBJ_ID <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>id<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
*/
|
|
|
|
|
AI_OBJ_ID *ai_get_prim_sub_ids(AI_IED_CTRL *ied, AI_OBJ_ID obj_id, ST_INT *prim_obj_num);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD><EFBFBD>ȡruntime type<EFBFBD>ṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD>Ա<EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param rt runtime type<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͽṹ
|
|
|
|
|
* @return <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>rt<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD>Ա<EFBFBD><EFBFBD><EFBFBD><EFBFBD>, ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>0
|
|
|
|
|
*/
|
|
|
|
|
ST_INT ai_get_rt_num(RUNTIME_TYPE *rt);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id<EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
|
|
|
|
* @param ied <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>Ľṹָ<EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_id <EFBFBD><EFBFBD><EFBFBD><EFBFBD>id
|
|
|
|
|
* @param name <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ô<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƵĿռ<EFBFBD>
|
|
|
|
|
* @return <EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>SD_SUCCESS, ʧ<EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD>SD_FAILURE
|
|
|
|
|
* @author guoqiangm@xjgc.com
|
|
|
|
|
*/
|
|
|
|
|
ST_RET ai_obj_id_to_name(AI_IED_CTRL *ied, AI_OBJ_ID obj_id, ST_CHAR *name);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ied<EFBFBD><EFBFBD>idctrl<EFBFBD><EFBFBD><EFBFBD>ƻ<EFBFBD><EFBFBD><EFBFBD>.
|
|
|
|
|
* <EFBFBD><EFBFBD>ÿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>id<EFBFBD>ţ<EFBFBD><EFBFBD>Ͷ<EFBFBD>Ӧ<EFBFBD><EFBFBD>idctrl<EFBFBD>ṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>浽ied<EFBFBD><EFBFBD>id_ctrl<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>
|
|
|
|
|
* <EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>idΪ<EFBFBD>±꣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id ctrl<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>idctrl<EFBFBD>ṹ
|
|
|
|
|
*/
|
|
|
|
|
ST_RET ai_create_ied_idctrl(AI_IED_CTRL *ied);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD><EFBFBD>61850<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҷ<EFBFBD><EFBFBD><EFBFBD>.
|
|
|
|
|
* @param obj_tbl <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>飬<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD>ɻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_num <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еĶ<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_name Ҫ<EFBFBD><EFBFBD><EFBFBD>ҵĶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @return <EFBFBD>ҵ<EFBFBD><EFBFBD>Ķ<EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>NULL
|
|
|
|
|
*/
|
|
|
|
|
AI_COMMON_OBJ *ai_cobj_find(AI_COMMON_OBJ **obj_tbl, ST_INT obj_num, ST_CHAR *obj_name);
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD>Ҷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><EFBFBD><EFBFBD>Ӷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id
|
|
|
|
|
* @param ied ied<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_id <EFBFBD>ڴ˶<EFBFBD><EFBFBD><EFBFBD><EFBFBD>в<EFBFBD><EFBFBD>ң<EFBFBD>֧<EFBFBD><EFBFBD>ied ld ln fco
|
|
|
|
|
* @param child_name <EFBFBD>Ӷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id<EFBFBD><EFBFBD>-1
|
|
|
|
|
*/
|
|
|
|
|
AI_OBJ_ID ai_find_obj_child(AI_IED_CTRL *ied, AI_OBJ_ID obj_id, ST_CHAR *child_name);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD>ͷ<EFBFBD>AI_PRIM_VAL<EFBFBD>ṹ<EFBFBD><EFBFBD>ԱDATA<EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_val <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>ڴ<EFBFBD>ָ<EFBFBD><EFBFBD>
|
|
|
|
|
* @return ST_VOID
|
|
|
|
|
*/
|
|
|
|
|
ST_VOID ac_cleanup_objVals_data(AI_OBJ_VAL *obj_val);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD>Obj_id<EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>idctrl,Ȼ<EFBFBD><EFBFBD>idctrl<EFBFBD>е<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>ʧ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>OBJECT_TYPE_UNKNOWN
|
|
|
|
|
*/
|
|
|
|
|
AI_OBJ_TYPE ai_get_obj_type(AI_IED_CTRL *ied, AI_OBJ_ID obj_id);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD><EFBFBD>ȡln<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>lntype<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>AI_LNTYPE_UNKNOWN
|
|
|
|
|
*/
|
|
|
|
|
AI_FCO_SUBTYPE ai_get_fco_subtype(AI_IED_CTRL *ied, AI_OBJ_ID fco_id);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD>Ҷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id
|
|
|
|
|
* @param ied ied<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_id <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id
|
|
|
|
|
* @return <EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id<EFBFBD><EFBFBD>-1
|
|
|
|
|
*/
|
|
|
|
|
AI_OBJ_ID ai_find_obj_parent(AI_IED_CTRL *ied, AI_OBJ_ID obj_id);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC>б<EFBFBD><D0B1><EFBFBD>desc
|
|
|
|
|
ST_RET ai_create_iedDesc(AI_IED_CTRL *ied, SCL_INFO *scl_info);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD>obj_id<EFBFBD><EFBFBD><EFBFBD><EFBFBD>obj<EFBFBD><EFBFBD>desc, ֧<EFBFBD><EFBFBD>ld<EFBFBD><EFBFBD>ln<EFBFBD><EFBFBD>do<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡld<EFBFBD><EFBFBD>ln<EFBFBD><EFBFBD>descʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>do_nameӦΪNULL<EFBFBD><EFBFBD>
|
|
|
|
|
* <EFBFBD><EFBFBD>ȡdo<EFBFBD><EFBFBD>descʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ln<EFBFBD><EFBFBD>obj_id<EFBFBD><EFBFBD>do_name<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>do<EFBFBD><EFBFBD><EFBFBD><EFBFBD>do_nameΪ<EFBFBD><EFBFBD>do<EFBFBD><EFBFBD><EFBFBD><EFBFBD>do<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>do1$sdo1
|
|
|
|
|
* @param ied ied<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_id <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id
|
|
|
|
|
* @return desc<EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ
|
|
|
|
|
*/
|
|
|
|
|
const ST_CHAR* ai_get_obj_desc(AI_IED_CTRL *ied, ST_INT obj_id, ST_CHAR *do_name);
|
|
|
|
|
|
|
|
|
|
AI_OBJ_ID ac_get_next_rcbInst_id(AI_IED_CTRL *ied, AI_OBJ_ID rcb_id);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>da<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD>do<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param ied ied<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_id da<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD>da<EFBFBD><EFBFBD><EFBFBD><EFBFBD>-1
|
|
|
|
|
* @return <EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD>do<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id<EFBFBD><EFBFBD>-1
|
|
|
|
|
*/
|
|
|
|
|
AI_OBJ_ID ai_find_da_parentDo(AI_IED_CTRL *ied, AI_OBJ_ID da_id);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD>obj_id<EFBFBD><EFBFBD><EFBFBD><EFBFBD>obj<EFBFBD><EFBFBD>dU
|
|
|
|
|
* <EFBFBD><EFBFBD>ȡdo<EFBFBD><EFBFBD>descʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ln<EFBFBD><EFBFBD>obj_id<EFBFBD><EFBFBD>do_name<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>do<EFBFBD><EFBFBD><EFBFBD><EFBFBD>do_nameΪ<EFBFBD><EFBFBD>do<EFBFBD><EFBFBD><EFBFBD><EFBFBD>do<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>do1$sdo1
|
|
|
|
|
* @param ied ied<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param ln_id lnid
|
|
|
|
|
* @param do_name do<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @return dudu<EFBFBD><EFBFBD>ֵ
|
|
|
|
|
*/
|
|
|
|
|
const ST_CHAR* ai_get_obj_du_val(AI_IED_CTRL *ied, ST_INT ln_id, ST_CHAR *do_name);
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#endif /** IEC61850_AI_OBJID_INCLUDE */
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|