主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

slreportgen.report.StateTransitionTable 类

命名空间: slreportgen.report
超类: slreportgen.report.Reporter

状态转换表报告器

自 R2022a 起

描述

使用 slreportgen.report.StateTransitionTable 类对象来报告 State Transition Table 模块和 Stateflow.StateTransitionTableChart 对象。报告器包括:

  • 包含状态转移表详细信息的表格。

  • 状态转移表使用的符号的可选属性表。

您只能将 StateTransitionTable 对象与 slreportgen.report.Report 对象一起使用。

slreportgen.report.StateTransitionTable 类是 handle 类。

类属性

HandleCompatible
true

有关类属性的信息,请参阅类属性

创建对象

描述

sttReporter = StateTransitionTable 创建一个空的状态转移表报告器。在将 sttReporter 对象添加到报告之前,请先设置 Object 属性。

sttReporter = StateTransitionTable(sttObj) 创建一个状态转换表报告器对象,并将 Object 属性设置为 sttObj

示例

sttReporter = StateTransitionTable(Name=Value) 使用一个或多个名称-值参量设置 属性

属性

全部展开

要报告的状态转移表,指定为以下选项之一:

描述
字符串标量或字符数组要报告的 State Transition Table 模块的路径。
模块句柄要报告的 State Transition Table 模块的模块句柄。要获取模块句柄,请使用函数 getSimulinkBlockHandleget_param
Stateflow.StateTransitionTableChart要报告的对象。
slreportgen.finder.BlockResult表示要报告的模块的搜索结果对象,该模块带有 Stateflow.StateTransitionTableChart 对象。
slreportgen.finder.DiagramElementResult搜索结果对象代表要报告的 Stateflow.StateTransitionTableChart 对象。

属性:

GetAccess
公共
SetAccess
公共

数据类型: char | string | double | Stateflow.StateTransitionTableChart | slreportgen.finder.BlockResult | slreportgen.finder.DiagramElementResult

是否在状态转换表中包含一个用于表示状态转换表中所用符号的表格,这些符号可以是数值型或逻辑型,分别对应0(false)或1(true)。属性表包括输入和输出端口以及本地、常量、参数和数据存储器数据元素的符号。您可以通过设置 slreportgen.report.Report 对象的 CompileModelBeforeReporting 属性来选择是否在将符号值添加到报告之前编译模型。

属性:

GetAccess
公共
SetAccess
公共

数据类型: logical

符号表的格式化器,指定为 mlreportgen.report.BaseTable 对象。此属性的默认值是一个 BaseTable 对象,其 TableStyleName 属性设置为 STTTableReporter 样式,这是 StateTransitionTable 的默认模板所定义的。要自定义符号表,请自定义现有的 BaseTable 对象或为 TableReporter 属性分配并自定义新的 BaseTable 对象。

此报告器的模板来源,以下列方式之一指定:

  • 字符向量或字符串标量,指定包含此报告器模板的文件的路径

  • 此报告器使用的模板或其模板库中包含此报告器模板的报告器或报告

  • 文档对象模型 (DOM) 文档或文档部分,该报告器使用其模板或其模板库包含该报告器的模板

指定的模板必须与您附加此报告器的报告类型相同。例如,对于 Microsoft® Word 报告,TemplateSrc 必须是 Word 报告模板。如果 TemplateSrc 属性为空,则此报告器将使用默认报告器模板作为报告的输出类型。

属性:

GetAccess
公共
SetAccess
公共
NonCopyable
true

此报告器的模板名称,指定为字符向量或字符串标量。此报告器的模板必须位于此报告器 TemplateSrc 属性所指定模板的模板库中。

属性:

GetAccess
公共
SetAccess
公共

数据类型: char | string

此报告器的超链接目标,指定为指定链接目标 ID 的字符向量或字符串标量,或 mlreportgen.dom.LinkTarget 对象。字符向量或字符串标量值转换为 LinkTarget 对象。链接目标紧接在输出报告中此报告器的内容之前。

属性:

GetAccess
公共
SetAccess
公共

方法

全部展开

示例

全部折叠

此示例显示如何报告 State Transition Table 模块。

导入这些包,这样您就不必使用长而完全限定的类名。

import slreportgen.utils.*
import slreportgen.report.*
import slreportgen.finder.*
import mlreportgen.dom.*
import mlreportgen.report.*

创建一个包含一个章节的 DOCX 类型的 slreportgen.report.Report 对象。

theReport = Report("STT_Generated_Report","docx");
chapter = Chapter("A State Transition Table Block");
append(theReport,chapter);

加载 Simulink® 模型并创建 slreportgen.finder.BlockFinder 对象来查找模型中的模块。

modelName = "sf_stt_boiler";
load_system(modelName);
blockFinder = BlockFinder(modelName);

遍历模块搜索结果,找到第一个代表 State Transition Table 模块的结果。

while(blockFinder.hasNext)
  nextRes = blockFinder.next;

使用此结果创建一个 slreportgen.report.StateTransitionTable 报告器。将 StateTransitionTable 报告器附加到报告中。关闭报告和模型,查看报告,并打破循环。

  if(isStateTransitionTable(nextRes))
    sttReporter = StateTransitionTable(Object=nextRes, ...
        IncludeSymbols=true);
    append(theReport,sttReporter);
    close(theReport);
    close_system(modelName);
    rptview(theReport);
    return;
  end
end

如果搜索未在模型中找到任何 State Transition Table 模块,请关闭模型和报告。

close_system(modelName);
close(theReport);

版本历史记录

在 R2022a 中推出