文档

定义自定义检查

关于自定义支票

您可以创建一个自定义检查,以便在Model Advisor中使用。创建自定义检查为您提供了指定Model Advisor检查哪些条件和配置设置的能力。

属性的每个实例的属性的一个或多个函数中定义自定义检查ModelAdvisor。检查类。为每个想要添加到Model Advisor的自定义检查定义该类的一个实例,并注册自定义检查。

提示

可以将检查添加到多个文件夹任务

检查定义内容

定义Model Advisor检查时,它包含下表中列出的信息。

内容 描述
检查ID(必需) 唯一标识支票。Model Advisor使用这个id来访问检查。
检查回调函数的句柄(必选) 函数,它指定检查的内容。
检查名称(推荐) 为Model Advisor显示的检查创建名称。
检查属性(可选) 使用检查创建用户界面。当将检查添加为任务时,Model Advisor使用任务属性而不是检查属性,除了可见而且LicenseName
输入参数(可选) 添加请求用户输入的输入参数。Model Advisor使用输入执行检查。
操作(可选) 增加自动固定动作。
探索的结果按钮(可选) 添加了探索的结果按钮,用户单击该按钮打开Model Advisor结果资源管理器。

显示和启用检查

您可以创建一个检查,并指定它如何在Model Advisor中显示。属性可以定义何时显示检查,或者用户是否可以选择或清除检查可见启用,价值的属性ModelAdvisor。检查类。

请注意

将检查作为任务添加到Model Advisor时,在ModelAdvisor。任务类。如果在两者中都指定属性ModelAdvisor。检查而且ModelAdvisor。任务,ModelAdvisor。任务属性优先,但可见而且LicenseName属性。

下面的图表说明了如何可见启用,价值属性交互。

定义自定义检查出现的位置

使用以下指南指定Model Advisor放置自定义检查的位置:

  • 的新文件夹中放置支票模型的顾问根,使用ModelAdvisor。集团类。

  • 的新文件夹中放置支票按照任务文件夹,使用ModelAdvisor。FactoryGroup类。

  • 把支票放在通过产品文件夹,使用ModelAdvisor.Root.publish方法。如果通过产品文件夹没有显示在Model Advisor窗口中,请选择按产品文件夹显示设置>首选项对话框。

检查定义

中描述的回调函数关联的自定义检查创建回调函数和结果.检查定义函数返回要添加到Model Advisor的自定义检查单元格数组。

示例中的检查定义使用中描述的任务定义自定义组

定义自定义Model Advisor检查函数defineModelAdvisorChecks示例检查1:信息性检查rec = ModelAdvisor。检查(“mathworks.example.configManagement”);rec.Title =“模型配置管理的信息检查”;@modelVersionChecksumCallbackUsingFT setCallbackFcn (rec,“没有”“StyleOne”);rec.CallbackContext =“PostCompile”;mdladvRoot = ModelAdvisor.Root;mdladvRoot.register (rec);抽样检查2:状态为通过/失败的基本检查rec = ModelAdvisor。检查(“mathworks.example.unconnectedObjects”);rec.Title =“检查未连接的对象”;@unconnectedObjectsCallbackUsingFT setCallbackFcn (rec,“没有”“StyleOne”);mdladvRoot = ModelAdvisor.Root;mdladvRoot.register (rec);样例检查3:检查子检查和动作rec = ModelAdvisor。检查(“mathworks.example.optimizationSettings”);rec.Title =“检查安全相关的优化设置”;@OptmizationSettingCallback setCallbackFcn (rec,“没有”“StyleOne”);为此检查定义一个自动修复操作modifyAction = ModelAdvisor.Action;setCallbackFcn (modifyAction @modifyOptmizationSetting);modifyAction。Name =“修改设置”;modifyAction。描述=[“修改模型配置优化”...“可能影响安全的设置。”];modifyAction。启用= true; setAction(rec, modifyAction); mdladvRoot = ModelAdvisor.Root; mdladvRoot.register(rec);

定义检查输入参数

使用输入参数,您可以在运行检查之前请求输入。方法定义输入参数ModelAdvisor。InputParameter自定义检查函数中的类。您必须为想要添加到Model Advisor检查中的每个输入参数定义该类的一个实例。

使用以下方法指定输入参数的布局。

方法 描述

ModelAdvisor.Check.setInputParametersLayoutGrid

指定输入参数网格的大小。

ModelAdvisor.InputParameter.setRowSpan

指定参数在“输入参数”布局网格中占用的行数。

ModelAdvisor.InputParameter.setColSpan

指定参数在“输入参数”布局网格中占用的列数。

此示例演示如何定义添加到自定义检查的输入参数。必须在自定义检查定义中包含输入参数定义。下面的代码包含在自定义检查定义中时,将创建三个输入参数。

rec = ModelAdvisor。检查(“com.mathworks.sample.Check1”);rec.setInputParametersLayoutGrid (2 [3]);定义输入参数inputParam1 = ModelAdvisor.InputParameter;inputParam1。Name =“跳过字体检查。”;inputParam1。类型=“Bool”;inputParam1。价值= false; inputParam1.Description =“示例工具提示”;inputParam1。setRowSpan ([1]);inputParam1。setColSpan ([1]);inputParam2 = ModelAdvisor.InputParameter;inputParam2。Name =“标准字体大小”;inputParam2。值=“12”;inputParam2。类型=“字符串”;inputParam2。描述=“示例工具提示”;inputParam2。setRowSpan (2 [2]);inputParam2。setColSpan ([1]);inputParam3 = ModelAdvisor.InputParameter;inputParam3。Name =“有效的字体”;inputParam3。类型=组合框的;inputParam3。描述=“示例工具提示”;inputParam3。条目= {“天线”“Arial黑”};inputParam3。setRowSpan (2 [2]);inputParam3。setColSpan (2 [2]);rec.setInputParameters ({inputParam1、inputParam2 inputParam3});

模型顾问将这些输入参数显示在右边的窗格中输入参数盒子。

定义模型顾问结果资源管理器视图

一个列表视图为用户提供了一种使用Model Advisor Result Explorer修复检查警告和失败的方法。创建一个列表视图允许您:

  • 添加探索的结果按钮到Model Advisor窗口中的自定义检查。

  • 提供信息以填充Model Advisor结果资源管理器。

这个例子展示了如何定义列表视图。你必须探索的结果按钮可见,使用ModelAdvisor.Check.ListViewVisible属性,并在检查回调函数中包含列表视图定义。您必须为想要添加到Model Advisor Result Explorer窗口的每个列表视图定义该类的一个实例。

当包含在检查定义函数中时,下面的代码将添加探索的结果按钮到模型顾问中的检查。

rec = ModelAdvisor。检查(“com.mathworks.sample.Check1”);添加“搜索结果”按钮rec.ListViewVisible = true;

当包含在检查回调函数中时,下面的代码提供了填充Model Advisor Result Explorer的信息。

mdladvObj = 万博1manbetxSimulink.ModelAdvisor.getModelAdvisor(system);mdladvObj.setCheckResultStatus(真正的);定义列表视图参数myLVParam = ModelAdvisor.ListViewParameter;myLVParam。Name =“无效字体块”%名称出现在下拉过滤器myLVParam。数据= get_param“对象”)”;myLVParam。一个ttributes = {“字体名”};% name是默认属性mdladvObj.setListViewParameters ({myLVParam});

定义检查动作

一个行动提供了一种方法,让您可以指定Model Advisor执行的操作来修复Model Advisor检查。定义操作时,Model Advisor窗口包含行动方框下方分析盒子。

属性定义操作ModelAdvisor。行动自定义检查函数中的类。你必须定义:

  • 对于您想要执行的每个操作,该类的一个实例。

  • 每个动作都有一个动作回调函数。

属性所需要的信息行动框。将此包含在检查定义函数中。

rec = ModelAdvisor。检查(“mathworks.example.optimizationSettings”);为此检查定义一个自动修复操作modifyAction = ModelAdvisor.Action;modifyAction.setCallbackFcn (@modifyOptmizationSetting);modifyAction。Name =“修改设置”;modifyAction。描述=[“修改模型配置优化”...“可能影响安全的设置”];modifyAction。启用= true; rec.setAction(modifyAction);

在右侧窗格中,Model Advisor显示了一个行动盒子。

另请参阅

||||||

相关的例子

更多关于

这个话题有用吗?