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

48 lines
1.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 参数缺省值重构方案
**原则**:缺省值只存在于 `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`
## 验证
```bash
./release/build.sh
```