/****************************************************************************/ /* Copyright (c) 2007,许继集团有限公司 */ /* All rights reserved. */ /* */ /* 模块描述: */ /** 客户端目录服务模块,提供通过目录创建对象空间相关函数 * @file ac_crdir.h */ /* */ /* 日期 作者 注释 */ /* 2007/08/14 ZYZ 创建文件 */ /****************************************************************************/ #ifndef IEC61850_AC_CRDIR_H #define IEC61850_AC_CRDIR_H #include "ac_reqm.h" #ifdef __cplusplus extern "C" { #endif /** * 获取ld目录服务超时时间宏定义 */ #define DIR_TIME_OUT 90 /** 保存var结构定义的中间结构*/ typedef struct { AI_OBJ_REF var_ref; ST_CHAR *tdl; }AC_VARAA_CTRL; /** 保存nvl目录的中间结构*/ typedef struct { AI_OBJ_REF nvl_ref; ST_BOOLEAN deletable; AI_OBJ_REF *names; //成员变量的名称数组 ST_INT num; //成员变量总数 } AC_NVLD_CTRL; /** 保存dom目录的中间结构*/ typedef struct { ST_CHAR dom_name[MAX_IDENT_LEN + 1]; AC_VARAA_CTRL *varaa_tbl; //存放var信息的AC_VARAA_CTRL数组 ST_INT var_num; AC_NVLD_CTRL *nvl_tbl; //存放nvl信息的AC_NVLD_CTRL数组 ST_INT nvl_num; }AC_DOMD_CTRL; /** 保存vmd目录的中间结构*/ typedef struct { ST_INT dir_state; //初始时状态为0,发送目录服务请求后置1,服务结束后置0 ST_INT cre_counter; AC_DOMD_CTRL *dom_tbl; //存放dom信息的AC_DOMD_CTRL数组 ST_INT dom_num; }AC_VMDD_CTRL; /** * 通过目录服务创建一个ied设备的对象空间. * 应用层只需传入服务器id该接口自动通过目录服务完成对象空间的创建 * @param srv_id 服务器ID * @retval SD_SUCCESS 发送通过目录服务创建对象空间请求成功 * @retval SD_FAILURE 发送通过目录服务创建对象空间请求失败 */ ST_RET ac_create_ied_dir(ST_INT srv_id); #ifdef __cplusplus } #endif #endif /** IEC61850_AC_CRDIR_H */