CSM INI-Variable Addon
核心功能 VI
CSM - Populate Configuration Variables.vi
在字符串中填充配置变量。
应用场景: 在CSM的脚本中直接使用INI-Variable变量,或充当CSM消息的参数。
参考范例: 1. Used as parameters parsed by CSM.vi。
- Ref: CSM INI-Variable Addon
- Ref: CSM INI-Variable变量格式
- Ref: CSM INI-Variable配置文件路径
– 输入控件(Controls) –
- Section Name (“” as Default): 节名,空字符串表示使用默认节。
- String with INI-Variable: 包含变量引用的输入字符串。
– 输出控件(Indicators) –
- String: 填充变量后的输出字符串。
CSM - Read Configuration Variable.vim
根据原型读取配置中的变量值。
- 推荐使用簇作为配置原型,簇中的元素名称对应INI配置文件中的变量名。
- 如果是其他数据类型,对应的变量名称为
Config。 - 如果原型对应的变量在配置中不存在,则根据Write If not found?参数确定是否写入默认值。
应用场景: 直接将INI配置文件中的配置读取成LabVIEW数据。
参考范例: 2. Load the corresponding configuration by providing the prototype.vi。
- Ref: CSM INI-Variable配置文件路径
– 输入控件(Controls) –
- Configuration Prototype (Cluster Preferred): 配置原型(推荐使用簇)。
- Section Name (“” as Default): 节名,空字符串表示使用默认节。
- Write If not found? (F): 如果未找到,是否写入默认值。
– 输出控件(Indicators) –
- Configuration: 输出配置值。
CSM - Read Cluster Elements From Session.vim
读取配置中的簇数据,数据保存在指定的节(section)中,簇中的元素名称对应节(section)中的键(key)。
- 如果指定的节(section)不存在,则使用默认节。
- 如果簇中的元素对应的键(key)不存在,则使用输入原型中的值作为默认值。
应用场景: 直接将INI配置文件中的配置读取成LabVIEW数据。
参考范例: 2. Load the corresponding configuration by providing the prototype.vi。
- Ref: CSM INI-Variable配置文件路径
– 输入控件(Controls) –
- Cluster: 簇原型。
- Section Name (“” as Default): 节名,空字符串表示使用默认节。
– 输出控件(Indicators) –
- Cluster out: 输出簇。
CSM - Read Cluster Elements From Key.vim
读取配置中的簇数据,数据保存在指定的节(section)中的指定键(key),数据以API String格式保存。
应用场景: 直接将INI配置文件中的配置读取成LabVIEW数据。
参考范例: 2. Load the corresponding configuration by providing the prototype.vi。
- Ref: CSM INI-Variable配置文件路径
– 输入控件(Controls) –
- Cluster: 簇原型。
- Key: 键名。
- Section Name (“” as Default): 节名,空字符串表示使用默认节。
– 输出控件(Indicators) –
- Cluster out: 输出簇。
- Key Found?: 键是否存在。
CSM - Write Configuration Variable.vim
写入配置变量。
- 推荐使用簇作为配置原型,簇中的元素名称对应INI配置文件中的变量名。
- 如果是其他数据类型,对应的变量名称为
Config。
参考范例: 7. Write and Read Configuration.vi。
- Ref: CSM INI-Variable配置文件路径
- Ref: CSM INI-Variable缓存机制警告
– 输入控件(Controls) –
- Configuration: 要写入的配置数据。
- Section Name (“” as Default): 节名,空字符串表示使用默认节。
– 输出控件(Indicators) –
- Configuration (dup): 写入的配置数据副本。
Convert API String to Cluster(Default in Session).vim
将API String字符串转换为簇,数据保存在指定的节(section)中,簇中的元素名称对应节(section)中的键(key)。具有明确的优先级层次: CSM API参数>配置文件参数>默认常量参数。例如,这使得将串口初始化参数固定在配置文件中变得非常简单。
- 初始化时,显式发送的参数具有最高优先级。
- 若未发送参数,则使用配置文件中的参数。
- 在没有配置文件参数的情况下,应用默认常量参数。
应用场景: 用于将CSM的参数固化到配置文件中。
参考范例: 3. In CSM API parameters.vi。
– 输入控件(Controls) –
- API String: API String字符串。
- Section Name (“” as Default): 节名,空字符串表示使用默认节。
- Type: 数据类型。
– 输出控件(Indicators) –
- Data: 转换后的数据。
- error: 错误信息。
Convert API String to Cluster(Default in Key).vim
将API String字符串转换为簇,数据保存在指定的节(section)中的指定键(key)。具有明确的优先级层次: CSM API参数>配置文件参数>默认常量参数。例如,这使得将串口初始化参数固定在配置文件中变得非常简单。
- 初始化时,显式发送的参数具有最高优先级。
- 若未发送参数,则使用配置文件中的参数。
- 在没有配置文件参数的情况下,应用默认常量参数。
应用场景: 用于将CSM的参数固化到配置文件中。
参考范例: 3. In CSM API parameters.vi。
– 输入控件(Controls) –
- API String: API String字符串。
- Section Name (“” as Default): 节名,空字符串表示使用默认节。
- Type: 数据类型。
- Variable Name: 变量名称。
– 输出控件(Indicators) –
- Data: 转换后的数据。
- error: 错误信息。
原始配置信息读取与写入
CSM - Read All Variable Names.vi
读取当前内存中所有变量名称。
– 输入控件(Controls) –
- Permanent Variables Only? (F): 是否仅读取永久变量。
– 输出控件(Indicators) –
- All Variable Names: 变量名称数组。
CSM - Read Sections.vi
读取当前内存中所有节名称。
– 输出控件(Indicators) –
- Sections: 节名称数组。
CSM - Read Key Names.vi
读取指定节中的所有键名。
– 输入控件(Controls) –
- Section Name (“” as Default): 节名,空字符串表示使用默认节。
– 输出控件(Indicators) –
- Keys: 键名数组。
CSM - Read INI String.vi
读取配置信息字符串。此读取为获取原始的字符串描述,不替换INI变量引用。
应用场景: 需要读取原始的配置信息,而不是替换内部变量引用后的配置信息。
参考范例: 6. Read Nested Variables.vi。
– 输入控件(Controls) –
- Section Name (“” as Default): 节名,空字符串表示使用默认节。
- Key: 包含变量引用的输入字符串。
- Default Value: 默认值。
- Write If not found? (F): 如果未找到,是否写入默认值。
– 输出控件(Indicators) –
- Value: 替换变量后的输出字符串。
- Key Found?: 键是否存在。
CSM - Write INI String.vi
写入配置信息字符串。
参考范例: 6. Read Nested Variables.vi。
- Ref: CSM INI-Variable缓存机制警告
– 输入控件(Controls) –
- Section Name (“” as Default): 节名,空字符串表示使用默认节。
- Key: 键名。
- Value: 变量值字符串。
– 输出控件(Indicators) –
- Key Replace?: 键是否被替换。
多文件支持与配置管理
CSM - Configuration File Path.vi
返回加载的所有配置文件路径。
参考范例: 5. import Config.ini with __include section.vi。
- Ref: CSM INI-Variable配置文件路径
– 输入控件(Controls) –
- Include All Paths?(F): 是否包含所有配置文件路径。
– 输出控件(Indicators) –
- Default Config File Path: 默认配置文件路径。
- All Config Files: 所有配置文件列表。
CSM - Load Configuration Variables From File.vi
从指定文件加载配置变量。如果节名后缀不为空,载入的节名称会加上该后缀。
Section Postfix (“”)主要用于载入多个配置文件但具有相同节的情况。例如: 两个配置文件Hardware1.ini和Hardware2.ini,都有一个名为Serial的节且内部的Keys相同(表示串口配置),那么后载入的文件中的配置会覆盖先载入的文件中的配置。使用Section Postfix (“”)可以避免节名冲突。
参考范例: 5. import Config.ini with __include section.vi。
- Ref: CSM INI-Variable配置文件路径
– 输入控件(Controls) –
- Configuration Path: 配置文件路径。
- Section Postfix (“”): 节名后缀。
CSM - Unload Configuration Variable File.vi
卸载配置变量文件。
- Ref: CSM INI-Variable配置文件路径
– 输入控件(Controls) –
- Path: 配置文件路径。
CSM - Mark All Temp Variables as Permanent.vi
将所有临时变量标记为永久变量,并将变量存储到指定的配置文件中。
注意: 虽然已经标记为永久变量,但是如果不使用CSM - Sync Configuration Variables to File VI,依然不会将变量同步到文件中。
- Ref: CSM INI-Variable配置文件路径
– 输入控件(Controls) –
- Path (“” to Use Default File): 配置文件路径,空字符串表示使用默认INI文件。
CSM - Sync Configuration Variables to File.vi
将内存中的变量同步到指定的配置文件中。
注意: 只有永久变量才会同步到文件中,如果想将临时变量写入文件,需要提前将临时变量标记为永久变量。
- Ref: CSM INI-Variable配置文件路径
– 输入控件(Controls) –
- All Temp Variable to Default Ini(F): 是否将所有临时变量同步到默认INI文件。
- Write UnSupported Datatype?(F): 是否写入不支持的数据类型。
CSM - Restore Variable Value.vi
恢复变量值,将所有的永久变量刷新为首次载入的配置值,临时变量不会被修改。
- Ref: CSM INI-Variable配置文件路径
CSM - Reset to Default.vi
将配置重置为默认值。所有的变量将被清空,所有的配置会从现在加载的配置文件中重新加载。
- Ref: CSM INI-Variable配置文件路径
实用工具 VI
CSM - Read Log Filter Rules from INI Strings.vi
从配置中读取日志过滤规则。此配置主要配合以下几个VI使用:
CSM - Set Log Filter Rules.viaddons\Logger\CSM - Start File Logger.vi
CSM - Read File Logger Configuration from INI String.vi
从配置中读取日志记录配置。此配置主要配合以下几个VI使用:
addons\Logger\CSM - Start File Logger.vi