chronaxis.fast.config
把一个CAN来源编译成fast会话,共用Chronaxis的单位、类型与来源位置规则。
会话保存完整输入序列、合并方式及资源额度,工作进程接收其中一个文件的声明。
这是模块参考。日常调用先查公开API索引;下划线对象和嵌套函数供维护者查阅。签名来自固定源码,公开类构造签名经实际Python接口核对。
相关类型
ASCSpec、AnalysisPlan、ConfigurationError、LegacyCANSpec、Path、PlanValidationError
对象导航
| 对象 | 用途 |
|---|---|
_unsupported |
构造可由已有配置诊断和 CLI 消费的错误。 |
_capabilities |
仅检查显式请求,避免把通用计划的默认设置误判为用户要求。 |
_source |
展开同一来源的文件和时间解释,不打开日志。 |
_flag |
合并同一公式中每个信号和选择器的身份限制;显式矛盾不可合并。 |
_metric |
静态验证本次请求的信号及原单位,将已检查的表达式树编码为简单数值指令。 |
_compile_plan |
将公共分析计划编译为同一会话的多文件执行声明,冻结公式、来源和资源选项。 |
compile_template_plan |
为 batch.template_jobs 展开的一个真实文件编译 fast 任务。 |
compile_config |
读取配置及导入定义,验证DBC与fast子集,返回可序列化的单会话文件清单和计算定义。 |
导入与重导出来源(展开)
from dataclasses import asdict
from hashlib import sha256
from pathlib import Path
from ..configuration import ConfigurationError, load_configuration
from ..configuration.diagnostics import locate_error
from ..configuration.imports import expand_document_imports
from ..legacy.binding import dbc_candidates
from ..planning.checks import PlanValidationError, configuration_error
from ..planning.dbc_defaults import load_dbc, scoped_dbc_cache
from ..planning.plan import AnalysisPlan
from ..sources.asc import ASCSpec
from ..sources.can_spec import LegacyCANSpec, can_field_from_key
from .compute import encode_program, _prepare_program_metric_unsupported
构造可由已有配置诊断和 CLI 消费的错误。
_unsupported(path, message)参数
| 名称 | 数据类型 | 必填 | 省略时的值 | 用途、取值和效果 |
|---|---|---|---|---|
path |
str | 是 | 无 | 位置或关键字。不受支持设置的配置字段路径,如 $.outputs.contributions。 |
message |
str | 是 | 无 | 位置或关键字。当前字段为什么不能按 fast 方式执行的具体原因。 |
源码:src/chronaxis/fast/config.py:21(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。
_capabilities
仅检查显式请求,避免把通用计划的默认设置误判为用户要求。
_capabilities(raw)参数
| 名称 | 数据类型 | 必填 | 省略时的值 | 用途、取值和效果 |
|---|---|---|---|---|
raw |
dict | 是 | 无 | 位置或关键字。显式声明的配置字段,在加默认值前检查 fast 能力限制。 |
源码:src/chronaxis/fast/config.py:26(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。
_source
展开同一来源的文件和时间解释,不打开日志。
_source(plan)参数
| 名称 | 数据类型 | 必填 | 省略时的值 | 用途、取值和效果 |
|---|---|---|---|---|
plan |
AnalysisPlan | 是 | 无 | 位置或关键字。公开解析器构建的计划,含静态信号绑定及逐消息计算项。 |
返回说明
可序列化会话声明。
异常说明
不支持来源或解码策略。
源码:src/chronaxis/fast/config.py:73(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。
_flag
合并同一公式中每个信号和选择器的身份限制;显式矛盾不可合并。
_flag(selector, fields, name)参数
| 名称 | 数据类型 | 必填 | 省略时的值 | 用途、取值和效果 |
|---|---|---|---|---|
selector |
MessageSelector | 是 | 无 | 位置或关键字。逐消息触发报文的身份声明。 |
fields |
Iterable | 是 | 无 | 位置或关键字。本公式涉及的信号字段,用于与选择器合并帧型限制。 |
name |
str | 是 | 无 | 位置或关键字。要合并的帧型字段,取 is_extended 或 is_fd。 |
源码:src/chronaxis/fast/config.py:104(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。
_metric
静态验证本次请求的信号及原单位,将已检查的表达式树编码为简单数值指令。
_metric(plan, item, database)参数
| 名称 | 数据类型 | 必填 | 省略时的值 | 用途、取值和效果 |
|---|---|---|---|---|
plan |
AnalysisPlan | 是 | 无 | 位置或关键字。公开解析器构建的计划,含静态信号绑定及逐消息计算项。 |
item |
MessageCalculationPlan | 是 | 无 | 位置或关键字。一个已解析的逐消息累计项,含选择器、公式和方向规则。 |
database |
cantools.database.Database | None | 是 | 无 | 位置或关键字。预检时加载的 DBC,可交本次执行复用。 |
源码:src/chronaxis/fast/config.py:112(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。
_compile_plan
将公共分析计划编译为同一会话的多文件执行声明,冻结公式、来源和资源选项。
_compile_plan(plan, with_database)参数
| 名称 | 数据类型 | 必填 | 省略时的值 | 用途、取值和效果 |
|---|---|---|---|---|
plan |
AnalysisPlan | 是 | 无 | 位置或关键字。公开解析器构建的计划,含静态信号绑定及逐消息计算项。 |
with_database |
bool | 是 | 无 | 位置或关键字。是否将已加载的数据库交给当前进程继续执行。 |
源码:src/chronaxis/fast/config.py:156(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。
compile_template_plan
为 batch.template_jobs 展开的一个真实文件编译 fast 任务。
只使用原模板中显式声明的选项判断能力冲突,不把通用缺省值解释为用户要求。 模板绑定错误带模板路径及当前文件说明。此步骤不执行分析或打开原始日志。
compile_template_plan(plan, *, template_path=None, _with_database=False)参数
| 名称 | 数据类型 | 必填 | 省略时的值 | 用途、取值和效果 |
|---|---|---|---|---|
plan |
AnalysisPlan | 是 | 无 | 位置或关键字。公开解析器构建的计划,含静态信号绑定及逐消息计算项。 |
template_path |
str | Path | None | 否 | None | 仅关键字。原始模板路径,用于保持显式设置和拒绝位置。 |
_with_database |
bool | 否 | False | 仅关键字。启用时附上本次 DBC 对象供同进程复用,默认产出可传递的普通参数。 |
源码:src/chronaxis/fast/config.py:192(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。
compile_config
读取配置及导入定义,验证DBC与fast子集,返回可序列化的单会话文件清单和计算定义。
compile_config(path, *, _with_database=False)装饰器:scoped_dbc_cache()。
参数
| 名称 | 数据类型 | 必填 | 省略时的值 | 用途、取值和效果 |
|---|---|---|---|---|
path |
str | Path | 是 | 无 | 位置或关键字。要读取的文件路径。 |
_with_database |
bool | 否 | False | 仅关键字。启用时附上本次 DBC 对象供同进程复用,默认产出可传递的普通参数。 |
源码:src/chronaxis/fast/config.py:219(行号属于 8904c2f744951857659abd40aaa3535d57faf53c)。