|
|
|
|
/****************************************************************************/
|
|
|
|
|
/* 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><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD>ӿ<EFBFBD>
|
|
|
|
|
* @file ai_objrw.h */
|
|
|
|
|
/* */
|
|
|
|
|
/* <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> ע<><D7A2> */
|
|
|
|
|
/* 2007/07/16 YH <20><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD> */
|
|
|
|
|
/****************************************************************************/
|
|
|
|
|
#ifndef IEC61850_AI_OBJRW_INCLUDED
|
|
|
|
|
#define IEC61850_AI_OBJRW_INCLUDED
|
|
|
|
|
|
|
|
|
|
#include "glbtypes.h"
|
|
|
|
|
#include "scl.h"
|
|
|
|
|
#include "mvl_defs.h"
|
|
|
|
|
#include "mms_mp.h"
|
|
|
|
|
#include "ai_def.h"
|
|
|
|
|
#include "ai_obj.h"
|
|
|
|
|
#include "sx_log.h"
|
|
|
|
|
#include "mvl_log.h"
|
|
|
|
|
#include "ai_objid.h"
|
|
|
|
|
#include "ai_objval.h"
|
|
|
|
|
#include "ai_log.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
|
extern "C" {
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<EFBFBD><EFBFBD>VMDָ<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>objVal_out<EFBFBD><EFBFBD>Աprim_vals<EFBFBD><EFBFBD>prim_idsָ<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_id <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID
|
|
|
|
|
* @param vmd <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>ṹ
|
|
|
|
|
* @param obj_val <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>Ϣ<EFBFBD>ṹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @retval SD_FAILURE ʧ<EFBFBD><EFBFBD>
|
|
|
|
|
* @retval SD_SUCCESS <EFBFBD>ɹ<EFBFBD>
|
|
|
|
|
*/
|
|
|
|
|
ST_RET ai_read_obj_primVals(AI_OBJ_ID obj_id, AI_IED_CTRL *ied, AI_OBJ_VAL *objVal_out);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>е<EFBFBD>ֵ<EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>
|
|
|
|
|
* @param obj_id <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID
|
|
|
|
|
* @param vmd <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>ṹ
|
|
|
|
|
* @param dataSize_out <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD>
|
|
|
|
|
*/
|
|
|
|
|
ST_VOID *ai_get_obj_data_ptr(AI_OBJ_ID obj_id, AI_IED_CTRL *ied, ST_INT *dataSize_out);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<EFBFBD><EFBFBD>VMDָ<EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
* @param obj_id <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID
|
|
|
|
|
* @param vmd <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>ṹ
|
|
|
|
|
* @param obj_val <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>Ϣ<EFBFBD>ṹ
|
|
|
|
|
* @retval SD_FAILURE ʧ<EFBFBD><EFBFBD>
|
|
|
|
|
* @retval SD_SUCCESS <EFBFBD>ɹ<EFBFBD>
|
|
|
|
|
*/
|
|
|
|
|
ST_RET ai_write_obj_primVals(AI_OBJ_ID obj_id, AI_IED_CTRL *ied, AI_OBJ_VAL *obj_val);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<EFBFBD><EFBFBD>VMDָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>Ĵ洢<EFBFBD><EFBFBD>ͷָ<EFBFBD>룬<EFBFBD><EFBFBD><EFBFBD>ݴ<EFBFBD>С<EFBFBD><EFBFBD>
|
|
|
|
|
* *data_out<EFBFBD>ڴ<EFBFBD><EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>룬ʹ<EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷŴ<EFBFBD><EFBFBD>ڴ档
|
|
|
|
|
* @param obj_id <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID
|
|
|
|
|
* @param vmd <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>ṹ
|
|
|
|
|
* @param data <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>洢<EFBFBD><EFBFBD>ͷָ<EFBFBD>룬<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @param data_size <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
* @retval SD_FAILURE ʧ<EFBFBD><EFBFBD>
|
|
|
|
|
* @retval SD_SUCCESS <EFBFBD>ɹ<EFBFBD>
|
|
|
|
|
*/
|
|
|
|
|
ST_RET ai_read_obj_compVal(AI_OBJ_ID obj_id, AI_IED_CTRL *ied, ST_VOID **data_out, ST_INT *dataSize_out);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<EFBFBD><EFBFBD>VMDָ<EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
|
|
|
|
|
* @param obj_id <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID
|
|
|
|
|
* @param vmd <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD>ṹ
|
|
|
|
|
* @param data <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>洢<EFBFBD><EFBFBD>ͷָ<EFBFBD><EFBFBD>
|
|
|
|
|
* @param data_size <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>С
|
|
|
|
|
* @param val_chg <EFBFBD>仯<EFBFBD><EFBFBD>־
|
|
|
|
|
* @retval SD_FAILURE ʧ<EFBFBD><EFBFBD>
|
|
|
|
|
* @retval SD_SUCCESS <EFBFBD>ɹ<EFBFBD>
|
|
|
|
|
*/
|
|
|
|
|
ST_RET ai_write_obj_compVal(AI_OBJ_ID obj_id, AI_IED_CTRL *ied, ST_VOID *data, ST_INT data_size, ST_BOOLEAN *val_chg);
|
|
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#endif /** !IEC61850_AI_MSOBJ_INCLUDED */
|