slreportgen.finder.DiagramFinder类

包:slreportgen.finder
超:

对于图表创建取景器

描述

查找的Sim金宝appulink®图表和Stateflow®图表。

施工

发现者= DiagramFinder(容器创建一个搜索器,通过默认的发现所有未注释的Simulink框图和Stateflow图表示在指定金宝app容器。将搜索范围限制包括特定类型的图表,使用取景器的性能。

注意

该取景器可以要么找到或迭代器模式下运行。在查找模式下,使用其方法返回一个搜索的结果作为结果的数组。在迭代器模式下,使用其hasNext下一个方法返回一个搜索一个接一个的结果。当有许多模型引用模型搜索,使用迭代器模式。迭代器模式下进行编译和搜索之后关闭一个模型,而发现模式将保持其开放搜索的所有车型。有许多开放模型可以消耗掉所有的系统内存和缓慢的报告生成。迭代器模式比查找模式慢,所以在使用查找模式搜索引用很少或根本没有其他型号的机型。

发现者= DiagramFinder(名称,值设定使用的名称 - 值对的特性。您可以按任意顺序指定多个名称 - 值对的参数。单引号括起来每个属性的名称。

输入参数

展开全部

看到容器属性。

属性

展开全部

在其中搜索模型容器,指定为下列值之一:

  • 处理Simulink模型金宝app,子系统或模型块的

  • 路径Simulink金宝app模型,子系统或模型块

  • 处理状态流图表块的

  • 指向Stateflow图表块的路径

  • 状态流图表ID

  • 状态流图表对象

系统图搜索的深度,指定为或一个正整数。SearchDepth指定多层次的深度搜索图图容器。要搜索各级,使用

选择搜索蒙面子系统,指定为逻辑。如果此属性为真正,取景器屏蔽搜索子系统块在图容器。它搜索到指定的SearchDepth并包括它发现在搜索结果的图。

选择要搜索参考模型,指定为逻辑。如果此属性为真正,取景器的搜索模式在图容器引用。它搜索到指定的SearchDepth并包括它发现在搜索结果的图。

选择要搜索的Simulink库链接金宝app,指定为逻辑。如果此属性和IncludeMaskedSubsystems真正,在图容器到两个子系统取景器搜索链接和掩蔽在Simulink库子系统块。金宝app它搜索到指定的SearchDepth并包括它发现在搜索结果的图。如果此属性为真正IncludeMaskedSubsystems, finder只搜索到Simulink库中子系统块的链接。金宝app

选择要搜索用户库链接,指定为逻辑。如果此属性为真正IncludeMaskedSubsystems属性真正,查找程序在关系图容器中搜索到子系统的链接,并在用户库中搜索屏蔽的子系统块。它搜索到指定的SearchDepth并包括它发现在搜索结果的图。如果此属性为真正,但IncludeMaskedSubsystems属性,取景器只搜索链接到子系统块用户库。

是否包括在搜索结果中注释的图表,指定为逻辑。如果,被注释掉的图不包括在搜索结果中。

变体来搜索图,指定为字符串或字符向量。默认值是活性。有效值是:

  • 所有- 所有变种

  • 活性- 只有活动变种

  • ActivePlusCode- 所有活性变体和代码变种

对象的属性,以找到,指定为名称 - 值对的单元阵列。只有取景器返回具有与指定的值指定属性的对象。

例:者。属性={“获得”,“5”}

是否关闭模式,指定为真正。如果真正中,下一个取景器的方法关闭移动到下一个模型来搜索之前,当前打开的模型。关闭模型搜索了一个模型,引用许多模型时,可以防止过多的内存消耗。

注意

取景器的方法忽略这个属性和叶全部参考模型打开。出于这个原因,你不应该使用find方法与许多模型引用的搜索模式。

方法

结果=寻找(取景器)发现在指定的图容器。该发现者是一个slreportgen.finder.DiagramFinder对象。结果是阵列slreportgen.finder.DiagramResult对象,其中每个都包含通过该方法发现的图。添加此阵的报告或报告将所有它所包含的图的图像。该报告您可以添加结果这种方法的是类型的报告slreportgen.report.Report或另一个记者对象,诸如slreportgen.report.Chapter记者。

注意

方法打开并编译顶级模型及其引用的所有模型。该方法在搜索结束时保留所有模型的打开状态,这可能会降低对包含许多模型引用的模型的报告速度。要避免这种减速,请使用hasNext下一个方法来寻找这样的模式。

TF = hasNext(取景器)确定容器中的取景器的搜索包含至少一个图。如果容器具有至少一个图中,hasNext方法队列该图作为下一个图,该下一个方法将返回。该hasNext方法然后返回真正。使用下一个方法来获得图。在随后的通话中,hasNext方法确定是否所述容器具有图,该下一个尚未恢复。它队列的图下一个方法来检索并返回真正。如果没有要被检索更图,此方法返回。逐步搜索的容器的图表,使用hasNext方法与下一个方法在while循环。

注意

如果当前的结果是最后的结果在当前模型和搜索队列AutoCloseModel属性真正这种方法是打开下一个模型前关闭当前的模型。虽然这会增加搜索时,它搜索的俯视模式,引用许多其他模型时,减少内存消耗。如果模型没有引用很多其他车型,以加快搜索速度,设置AutoCloseModel属性或者使用方法。

导致=下一个(取景器)返回下一个搜索结果在结果队列,所述hasNext方法创建的。所述搜索结果包含所得图。添加此结果对象到报告或报告增加了一个图记者示意图。

复制语义

处理。要了解手柄类如何影响复制操作,请参阅复制对象(MATLAB)。

例子

查找所有框图和Stateflow的图表

创建一个报告,其中包括在所有图表的图像sf_car模型。使用为每个图表单独的一章。虽然在本例中使用的模型不包含模型引用,该示例使用迭代器模式来说明它的语法。

导入mlreportgen.report *进口slreportgen.report *进口slreportgen.finder *模型名称= 'sf_car'。;load_system(模型名称);RPT = slreportgen.report.Report( '输出', 'PDF');加(RPT,扉页( '标题',sprintf的( '%s系统',...... MODEL_NAME)));取景= DiagramFinder(模型名称);而hasNext(取景器)的附加(RPT,下一个(取景器));端附近(RPT);close_system(模型名称);rptview(RPT);

找到一个子系统中的所有图表

打开sf_car建模,发现在所有的图发动机子系统。使用子系统的路径或它的句柄。然后,您可以将结果包括在报告中。

sf_car%用途路径enginePath = “sf_car /引擎”;取景= slreportgen.finder.DiagramFinder(enginePath);结果=寻找(取景器);%或用途把手engineHandle = get_param( “sf_car /引擎”, “把手”);取景= slreportgen.finder.DiagramFinder(engineHandle);results_enginehandle =找到(取景器);

查找图元素与特定属性值

打开F14建模并找到所有获得用的值的块ZW

模型= 'F14';取景= slreportgen.finder.DiagramElementFinder(模型)finder.Properties = { '增益', '度Zw'};结果=寻找(取景器);

介绍了在R2017b