Documentation

slreportgen.report.SimulinkObjectProperties class

Package: slreportgen.report
Superclasses:

Simulink object properties reporter

Description

The SimulinkObjectProperties reporter generates tables that list the properties and property values of Simulink® objects.

Note

To use a Simulink object properties reporter in a report, you must create the report using the slreportgen.report.Report class.

Construction

reporter = SimulinkObjectProperties() creates an empty Simulink object properties reporter. Use the properties of this reporter to specify reporting on these Simulink objects:

  • Object whose properties to report

  • Properties to report

  • Format of the reported properties

reporter = SimulinkObjectProperties(obj) creates a reporter that generates a table listing the property values of the specified Simulink object.

To specify a list of properties to include in the generated properties table, use the Properties property of the reporter. If you do not specify any properties, the reporter includes a default set of properties based on the object type. For example, the property table for a block includes the properties set by its parameter dialog box.

To customize the format of the generated property table., use the PropertyTable property

Note

This reporter compiles the model containing the object to be reported if the model is not already compiled. Compiling the model is necessary to propagate values to properties that are unspecified when the model has not been compiled. The model is uncompiled when you close the report that contains the generated property table.

reporter = SimulinkObjectProperties(Name,Value) sets properties using name-value pairs. You can specify multiple name-value pair arguments in any order. Enclose each property name in single quotes.

Input Arguments

expand all

See Object property.

Properties

expand all

Simulink object whose properties to report, specified as a path to or handle of the specified object. The Object value must be one of these types of objects:

  • model

  • block

  • annotation

  • port

  • line

  • line segment

Object properties table reporter, specified as a mlreportgen.report.BaseTable reporter. The object properties reporter uses the base table reporter to format object properties. If this property is initially empty, the object properties reporter sets the property to a default property table reporter. To customize the property table formatting, set this property to a base table reporter that meets your formatting requirements.

Choice to display property names as dialog box prompts, specified as a logical. If true and the property appears on the dialog box of the object, the table lists its dialog box prompt instead of its property name. Otherwise, the generated property table lists the property using its property name.

Choice to show properties with empty values.

Whether to show properties with empty values, specified as a logical. If false, the generated object properties table omits object properties whose value is empty. If true, the table includes properties whose value is empty.

Names of object properties to be reported, specified as a cell array.

A cell array of names of object properties to be reported, specified as a cell array of strings or character vectors. If you do not specify any properties, the reporter determines a set of properties to report.

Source of template for this reporter, specified as one of these values:

  • String or character array specifying the path of the file containing the template for this reporter

  • Reporter or report whose template is used as the template for this reporter or whose template library contains the template for this reporter

  • DOM document or document part whose template is used as the template for this reporter or whose template library contains the template for this reporter

The specified template must be of the same type as the report to which this reporter is appended. For example, for a Word report, TemplateSrc must be a Word reporter template. If the TemplateSrc property is empty, this reporter uses the default reporter template for the output type of the report.

Name of template for this reporter, specified as a string or character array. The template for this reporter is in the template library of the template source (TemplateSrc) for this reporter.

Hyperlink target for this reporter, specified as a string, character array that specifies the link target ID, or an mlreportgen.dom.LinkTarget object. A string or character array value is converted to a LinkTarget object. The link target object immediately precedes the content of this reporter in the output report.

Example: firstchapter.LinkTarget = 'ch1_link';

Methods

createTemplate Create Simulink object properties reporter template
customizeReporter Create custom Simulink object properties class
getClassFolder Simulink object properties class definition file location

Inherited Methods

Copy Semantics

Handle. To learn how handle classes affect copy operations, see Copying Objects (MATLAB).

Examples

Add Properties Table to Report

Use the SimulinkObjectProperties reporter to add a properties table for the vdp model to the report.

import slreportgen.report.*
import mlreportgen.report.*
model_name = 'vdp';
load_system(model_name);

rpt = slreportgen.report.Report('output','pdf');
chapter = Chapter(model_name);
rptr = SimulinkObjectProperties(model_name);

add(chapter, rptr);
add(rpt, chapter);
close(rpt);
close_system(model_name);
rptview(rpt);

Specify Object Properties for Report Table

Add a properties table to a report and include properties for a model line segment only.

import slreportgen.report.*
model_name = 'vdp';
rpt = slreportgen.report.Report('output','pdf');
chapter = Chapter(model_name);

load_system(model_name);
ph = get_param('vdp/Mu','PortHandles');
outPort = ph.Outport;
line = get_param(outPort,'Line');
rptr = SimulinkObjectProperties(line);
rptr.Properties = {'Parent','SourcePort','StorageClass'};

add(chapter,rptr);
add(rpt,chapter);
close(rpt);
close_system(model_name);
rptview(rpt);

Introduced in R2017b

Was this topic helpful?