RTU/mimo/plan/参数缺省值重构方案.md

1.8 KiB
Raw Blame History

参数缺省值重构方案

原则:缺省值只存在于 param.xml,运行时不再存储。

改动清单

T1: 移除 stru_signal.vec_p_default_data

文件: dc_signal.h

  • 删除 std::vector<void *> vec_p_default_data; 字段

T2: 移除 API 中的默认值参数及返回值

文件: myDatacenter.h, dc_signal.cpp

  • dc_signal_ao() — 删除 void *p_default_data 参数
  • dc_signal_param() — 删除 void **p_default_data 参数
  • dc_get_ao_signal_info() — 删除 void **p_default_data 输出参数
  • dc_get_param_signal_info() — 删除 std::vector<void *> *p_vec_p_default_data 输出参数
  • 删除 dc_signal_ao_add_check() / dc_signal_param_add_check()(不复存在)

T3: dc_param.cpp 不创建默认值

文件: dc_param.cpp

  • dc_param_register_signals() 中删除 p_default_data 创建和传参
  • 值优先级self_param.xml value > param.xml value > param.xml default逻辑不变只是不再单独创建 default 指针)

T4: self_ptl 不再创建/传递默认值

文件: self_ptl.cpp, self_ptl.h

  • stru_self_ptl_cfg_param_data 删除 vec_p_default_data
  • self_ptl_cfg_init() 删除 p_default_data/p_default_val_data 创建
  • self_ptl_do_signal_out() 删除默认值传参
  • method.cpp CLI 展示不再读取 vec_p_default_data

T5: ws_method 去掉默认值

文件: ws_method.cpp, ws_method.h

  • stru_ws_signal 删除 vec_p_default_data
  • 删除所有默认值读写

T6: iec61850m 不再创建默认值

文件: iec61850m.cpp

  • 删除 dc_create_data_ptr_by_type 调用 + p_default 赋值

T7: dc_param_cfg_check() 不写 default 字段

文件: dc_signal.cpp

  • self_param.xml 只写 value,不写 default

验证

./release/build.sh