Getting Started (Report Generator)

Report Generator
Go to Component
Search Help Desk

Chapter 1
Getting Started

What Is the Report Generator?

The Report Generator is a software package that can take any information from your MATLAB® workspace and export it to a document in the form of a report. The reports that you create with the Report Generator can include figures, data, variables, and functions from your models or M-files, as well as snapshots of system graphics and figures.

Two Report Generator Packages

There are two Report Generator packages: the MATLAB Report Generator and the Simulink® Report Generator. If you want to create reports for MATLAB M-files, you need the MATLAB Report Generator. If you want to create reports for Simulink or Stateflow® models, you need both the MATLAB Report Generator and the Simulink Report Generator, which is built atop the MATLAB Report Generator. This manual documents both the MATLAB Report Generator and the Simulink Report Generator.

Multiple Report Formats

One of the key features of the Report Generator is that you can create reports in multiple documentation formats, such as:

  • RTF
  • XML
  • SGML
  • HTML
This chapter discusses how to generate a report and shows an example of a report.


Getting Started (Report Generator)

Creating and Generating a Report

Setup File

The contents of a report are specified in its setup file. You can use the standard setup files provided with the Report Generator to generate a default report or you can create a customized report by using the Setup File Editor. The Setup File Editor is the primary graphical user interface (GUI) for the Report Generator.

Using a Standard Setup File

You can generate a report with any of the setup files that are on your path. To list all of the setup files on your path, type rptlist in the MATLAB command window. The Setup File List will appear.

Select ch1-tutorial and click on Edit to invoke the Setup File Editor.

Generating and Viewing the Report

To generate a report from the Setup File Editor, click on the Report button, located at the bottom of the setup file outline on the left side of the Setup File Editor. This report is generated in HTML.

While the report is generating, the following events occur:

  • All options in the Setup File Editor become inactive, except for the Stop button (the Report button changes to the Stop button while the report is generating).
  • The outline highlights each component as it is executing.
  • The Setup File Editor shows the Generation Status tab, which displays generation messages.
After report generation is complete, your Web browser will open, displaying your report.

If your report does not display on the screen, click on Edit... in the Generation Options section. Make sure that the View report after generating option is selected (this is selected by default).

Report Contents

The report is shown below, on this page.

Comparing Components in the Setup File to the Report

The components in the setup file outline determine the information contained in the report. The following sections show the information each component in the outline inserts into the report.

Report Component

The first component in the setup file outline is always the Report component. The Report component specifies output options, including output file format. The default output format is HTML. The Report component does not insert any visible output into the report.

Paragraph Component

The next component in the setup file outline is a Paragraph component. The Paragraph component inserts the following paragraph in the report:

    When peaks.m runs in the workspace, the following text is
displayed to the command window:

Evaluate MATLAB Expression Component

The third component in the setup file outline is an Evaluate MATLAB Expression component. This is represented in the outline by

    Eval String-%Evaluate PEAKS in the base workspace.
This component evaluates the following M-code:

    %Evaluate PEAKS in the base workspace.

%This clears other open figures.
close all

%This creates the figure.
peaks

%This sets the figure print size to 5x4 inches
set(gcf,...
   'PaperPosition',[1 1 5 4],...
   'PaperUnits','inches');
and inserts the command-line output in the report:

    z =  3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ...
   - 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ...
   - 1/3*exp(-(x+1).^2 - y.^2)

Graphics Figure Snapshot Component

The fourth component in the setup file outline is the Graphics Figure Snapshot component. The Graphics Figure Snapshot component inserts a snapshot of the current figure into the report. Since the Evaluate MATLAB Expression component created the Peaks image, it is the current image and is inserted into the report.

Figure Property Table Component

The last component in the setup file outline is the Figure Property Table component. The Figure Property Table component inserts a table of selected Handle Graphics® figure property name/property value pairs for the Peaks image.

PaperPosition: (1.00, 1.00) 5.00 x 4.00 inches
PaperOrientation: portrait


Getting Started (Report Generator)

Report Generator Overview

The Report Generator has several parts, which are shown in the diagram below.

This Report Generator Part... | Has This Function...
Setup File Editor | Primary graphical user interface (GUI) for the Report Generator; you can view and modify setup files with it. The Setup File Editor is shown in a dashed box because it is not necessary to use the Setup File Editor to generate a report. You can generate a report with any of the setup files that are on your MATLAB path.
Setup File List | Shows all the setup files in your path.
Components | Self-contained, modular elements that control the report generation process and insert information into a report.
Setup File | Specifies which components will be in the report, as well as component attributes and component relationships.
Report Generator | Generating engine that uses the setup file to create a report.
Report | Formatted document that contains the information specified by the setup file.


Getting Started (Report Generator)

What's in This Manual

This manual contains six chapters.

Chapter | Explains...
1 | How to generate a report using the Setup File List.
2 | How to generate a report from the command line and from the Setup File Editor. Discusses output and generation options.
3 | How to edit attributes, using the Figure "For" Loop and the Figure Property Table components as examples.
4 | How to build and edit a setup file outline (move, add, delete, activate/deactivate, cut, copy, paste). Also discusses component hierarchy.
5 | How to build custom components.
6 | Components attributes and functions; it is a reference chapter.


Generating a Report (Report Generator)

Chapter 2
Generating a Report

Overview

Methods of Generating a Report

There are three ways you can generate a report:

  • From the command line, using the report command
  • With the Setup File List
  • With the Setup File Editor
All three methods use setup files. A setup file specifies the following:

  • Which components will be in the report
  • Component attributes
  • Component relationships
The Setup File Editor is the primary graphical user interface (GUI) for the Report Generator; you can view and modify setup files with it.

The Setup File List contains a list of setup files on your path and contains a brief, user-specified description of the setup file.

The report is generated for the current model or M-file, unless you specify otherwise (e.g., see the Model Loop component reference page in Chapter 6).

When to Use Each Method

To decide which report generation method to use, see the table below.

If you... | Use the... | Enter this command
Know the setup file you want to use and you don't need to edit it | Command line | report <SetupFileName>
Want to generate a report from an existing setup file (or edit the setup file) but are not sure of the name of the file or if it is on your path | Setup File List | rptlist
Want to create a new report, or edit an existing setup file (for example, if you want to customize a standard setup file or edit one of your own setup files) | Setup File Editor | setedit or setedit <SetupFileName>


Generating a Report (Report Generator)

Using the Command Line

You can generate a report from the command line by typing report <SetupFileName> in the MATLAB command window.

For example, if you type report ch1 tutorial you will get the report shown in Chapter 1.

If you type report ('<SetupFileName1>','<SetupFileName2>',...), the corresponding reports are generated and the report names are displayed in the MATLAB window.

If you type report without any input argument, the Generate a Report user interface (UI) appears. The Generate a Report UI lists all the setup files you have on your path.

Note that a user-supplied description of the selected setup file appears in a text box at the bottom of this window.

To generate a report, select a setup file and click on the Report button.


Generating a Report (Report Generator)

Using the Setup File List

You can use the Setup File List to generate or edit a report. To invoke the Setup File List, type rptlist at the command line. The following will appear.

To generate a report, select a setup file and click on the Report button.

To edit a report, select a setup file and click on the Edit button. This opens the Setup File Editor. The Setup File Editor is discussed in detail in the following section, "Getting Started With the Setup File Editor".

All Simulink systems have a property called ReportName. This property is used to specify which report to use for a particular system. Type rptlist <system_name> to start the Setup File List with Simulink's ReportName property selected. (You must have Simulink to use the rptlist command in this manner, but you do not need the Simulink Report Generator.)

If you type rptlist vdp, the following UI will appear:

This Setup File List UI has an additional button, Set, which sets the selected setup file name as the system's new ReportName property. Using the Edit or Report button opens the Setup File Editor or generates a report, respectively.

You can also call this UI from a Simulink model by selecting Report Generator... from the Tools menu.

Note that you can display a list of all the setup files on your path in the command window instead of in the Setup File List UI; to do so, type

    list = rptlist


Generating a Report (Report Generator)

Using the Setup File Editor

You can use the Setup File Editor to view and modify your setup files and generate reports from these files. The setup file establishes the framework for a report and contains information about:

  • Components included in the report and their relationships
  • Report output format and style sheet used
  • Name and location of the report file

Getting Started With the Setup File Editor

To open the Setup File Editor, type setedit in the MATLAB command window; this opens a new (empty) setup file. If you type setedit <setupfilename>, the Setup File Editor opens, displaying the setup file for that report. For example, if you type setedit magic-square, the following window will appear.

Elements of the Setup File Editor

Setup File Outline

The outline of the current setup file is in the left pane of the window. The outline shows all of the components in the current setup file. Components are self-contained, modular elements that control the report generation process and insert elements into a report.

Some components can contain other components, which are then called subcomponents or child components. Subcomponents or child components are shown indented under their parent components. Components and the relationships between child and parent components are discussed in Chapter 6.

Tab Dialog

The right pane of the setup file window contains three tabs:

  • The Options tab lets you set report output options and change component attributes.
  • The Add Components tab lets you add components to the outline.
  • The Generation Status tab shows you the status of the current generation process.
The sections that follow describe these tabs in more detail.

Menu Bar

The Setup File Editor also contains a menu bar with the following menus:

  • The File menu lets you:
    • start a new setup file
    • open an existing setup file
    • save a setup file
    • generate a report
    • create a log file
    • close a setup file
    • exit the Setup File Editor
  • The Edit menu lets you:
    • undo (5 levels)
    • cut
    • copy
    • paste
    • activate/deactivate
    • delete components
    • view report options
Chapter 4 discusses Edit actions

  • The Window menu lets you:
    • switch between multiple open setup files.
    • open the Setup File List
    • convert an SGML file to other output formats
  • The Help menu lets you go to the Report Generator Help (this manual) or go to the Setup File Editor Help ("Using the Setup File Editor" in this chapter).

Generating a Report

To generate a report using the Setup File Editor, click on the Report button, which is located under the setup file outline in the Setup File Editor. You can also select Report from the File menu. A report containing the components listed in setup file outline will be generated on any M-file, Simulink model, or Stateflow model.

While the report is in the process of generating, the Report button changes to the Stop button and all other controls (buttons and menus) are inactive. In addition, as each component executes, it is highlighted in the setup file outline.

Report Generation Cleanup

After the report is finished generating, the Report Generator closes all images, models, Stateflow windows, and Target Language Compiler™ (TLC) handles that were opened in the report generation process.

Halting Report Generation

During report generation, the Report button changes to the Stop button. To stop report generation, click on the Stop button, which is located under the setup file outline in the Setup File Editor.


Generating a Report (Report Generator)

Controlling Report Generation

When you generate a report using the Setup File Editor, you have a set of options that control aspects of report generation, such as how the report is generated, what it looks like, and whether it is displayed after generation is complete. You can set these options using the Setup File Editor.

Output Options

These are several options you can control. Each of the options listed below is described in more detail later in this chapter.

You can use the Options tab for the Report component to specify:

  • The name and location of the report file
  • The report format and style
  • Whether the setup file is saved automatically upon report generation
  • Whether the report will be displayed after it is generated
  • Whether images will be regenerated
  • A description of the report
Note:
To view the Options tab for the Report component, select the first component in the outline of the setup file, which is the Report component, and select the Options tab.

You can specify any of the above report characteristics before you generate the report.

Other Options

You can use the Generation Status tab to specify what kinds of generation messages are displayed.

You can use the Create Log File option of the File menu to generate a log file. A log file is a text file that lets you view setup file information and report generation information.

Both of these options are discussed in detail later in this chapter.


Generating a Report (Report Generator)

Specifying the Report Output

The Options tab for the Report component contains report output preferences.

Specifying the Directory for the Report File

Choose the appropriate directory for the report file according to the table below. Make sure you have write privileges for that directory.

To save your report in... | Select this option...
The same directory as the setup file | Same as setup file
The present working directory | Present working directory
Another directory | Specify a directory in the Other text box or use the browse button (...)

Naming the Report File

Choose the appropriate filename for the report file according to the table below.

If you want... | Select this option...
Your report have the same filename as the setup file | Same as setup file (this is the default report name)
Your report to have a filename that is different than the setup file name | Other; then enter the name of the report in the text box
To prevent writing over a report with the same filename (e.g., report1.html, report2.html,...) | If report already exists, increment to prevent overwriting

Report Format and Stylesheets

You can choose the report output format in the drop box on the left in this section. You should choose the output format according to the software or viewer you want to use to view the report. For example, if you want to use Microsoft Word 95, you should choose RTF 95.

Specify the stylesheet in the drop box on the right in this section. A stylesheet formats the report in terms of fonts, headings, etc. Stylesheets depend on the output format, that is, certain stylesheets are available for certain output formats. Each output format has a default stylesheet.

The table below shows which output format to use with different viewers or software as well as which stylesheets are available for use with each output format.

If you want to use... | Select this output format... | Stylesheet Options
An HTML viewer | web (HTML) (default) | Web (see "Web Stylesheets" later in this chapter)
SGML | Doc Book (SGML) | None (no transform)
Microsoft Word 95 | Rich Text Format (RTF) 95 | Print (see "Print Stylesheets" later in this chapter)
Microsoft Word 97 | Rich Text Format (RTF) 97 | Print
XML parser | Flow Object Tree (XML) | Print

If you want to create a report in multiple formats without regenerating your report each time, see "Converting a Generated Report Into Another Format" later in this chapter.

Report Output Format Descriptions

  • web (HTML) is the default output format. It is used for publishing on the World Wide Web.
  • Doc Book (SGML) produces source SGML. The SGML source code is always generated in addition to the output format you choose.
  • Rich Text Format (RTF) 95 is used with Microsoft Word 95 or any Word 95 viewer.
  • Rich Text Format (RTF) 97 is used with Microsoft Word 97 or any Word 97 viewer.
  • Flow Object Tree (XML) is the XML representation of low-level DSSSL formatting constructs. It can be parsed by an XML parser.

Web Stylesheets

Web Stylesheet | Description
Single-Page Web | HTML on a single page
Multi-Page Web | HTML with each chapter on a separate page
Single-Page Simple | Suppresses title page, table of contents, list of titles
Single-Page Unnumbered Chapters & Sections | Chapters and Sections are not numbered
Single-Page Numbered Chapters & Sections | Chapters and Sections are both numbered
Multi-Page Simple | Suppresses title page, table of contents, list of titles
Multi-Page Unnumbered Chapters & Sections | Chapters and Sections are not numbered
Multi-Page Numbered Chapters & Sections | Chapters and Sections are both numbered

Note that all Web and Print stylesheets include a list of titles, unless otherwise shown in table. The list of titles includes a list of (titled) tables and a list of (titled) figures.

Print Stylesheets

Print Stylesheet | Description
Standard Print | Displays title page, table of contents, list of titles
Unnumbered Chapters & Sections | Chapters and Sections are not numbered
Numbered Chapters & Sections | Chapters and Sections are both numbered
Compact Print | Minimizes white space to reduce page count
Compact Simple Print | Minimizes page count, suppresses title, table of contents, list of titles
Large Type Print | Uses 12 point font (slightly larger than "Standard Print")
Simple Print | Suppresses title page, table of contents, list of titles
Very Large Type Print | Uses 24 point font and landscape paper orientation

Viewing and Printing Your Report

You can use the View report after generating option to view your report. Click on Edit... in the Generation Options section and then select this option, or click on the corresponding button in the Setup File Editor.

Note that when this option is not selected, the button appears grayed out. When report generation is complete, the viewer associated with the report format output you chose is launched, displaying the report.

If you want to print your report, select the print option from the viewer.

Autosaving the Setup File

To automatically save the setup file before you generate a report, select Save setup file on generation. Click on Edit... in the Generation Options section and then select this option, or click on the corresponding button in the Setup File Editor.

Note that when this option is deselected, the button appears grayed out.

Regenerating Images

By default, the Regenerate Images button is selected. If you deselect this option, previously generated images (Simulink, Stateflow, etc.) will not be regenerated each time you generate a report; images from the previous generation will be used. This results in faster report generation. Use this option only if you have not made any changes that could affect these images.

Click on Edit... in the Generation Options section and then select this option, or click on the corresponding button in the Setup File Editor.

Note that when this option is deselected, the button appears grayed out.

Report Description

Use the Report Description field to makes notes and comments on your setup file. This description appears at the bottom of the Setup File List.


Generating a Report (Report Generator)

Setting the Generation Status Update Priority Level

The Generation Status tab in the Setup File Editor displays messages about the report generation and is automatically selected when you start report generation.

You can select the types of messages you want to see during report generation from the Show status updates drop box, which shows the level of importance (priority level) for each type of message, with 1 being most important and 6 being least important.

The following is a list of message priority levels and the messages types associated with each level (message priority levels ranked as follows: 1= most important, 6 = least important):

1) Error messages only

2) Warning messages

3) Important messages (running a loop)

4) Standard messages (running a component)

5) Low-level messages (running a nested component)

6) All messages

If you do not want to see any messages, choose 0) No message.

As the report is generated, messages of the chosen priority level and above will appear in the Generation Status tab. For example, the default message priority level is 3, which means that messages of priority level 3 (Important messages) and above will appear.

If you want to view messages of a different priority level after the report generation is complete, you can select the new priority level, and messages corresponding to that priority level and above will be displayed.


Generating a Report (Report Generator)

Converting a Generated Report Into Another Format

The report generation process always produces an SGML source file and then converts the file to the output format specified in the "Report Format & Stylesheet" section. The SGML source file is <reportname>.sgml.

If you want to convert a report in an SGML source file to one of the other file output formats without regenerating the report, you can use the rptconvert command. The rptconvert command transforms a DocBook SGML source file created by the Report Generator to a formatted document.

Working with the Report Conversion UI

If you type rptconvert without any input arguments, the report conversion UI will appear.

SGML Source File

Enter the name of the SGML source file you want to convert in this text box or use the browse button (...) to find it.

Conversion Options

Specify output options in this section.

Format. Choose the desired output format.

Stylesheet. Choose the desired stylesheet.

See "Report Format and Stylesheets" earlier in this chapter for more information about format and stylesheet.

View report after converting. Select this option if you want to view the report after the conversion is complete.

Display conversion status messages in command window. Select this option if you want to display conversion status messages in the MATLAB command window after report conversion is complete.

Converting the Report

Click on the Convert button to convert the report.

How Unreadable Image Files Are Handled

If the original document contains an image that your viewer cannot read, (e.g., if you are using an HTML viewer that cannot read EPS files), then a placeholder for the image will appear in your report instead of the actual image.

Make sure that the report you are converting has images saved in a format that your viewer can read.

Working from the Command Line

You can use rptconvert from the command line with varying levels of definition:

  • rptname=rptconvert(source); source is the name of the DocBook file (with or without the .sgml extension). The default format (HTML) and stylesheet (Single-Page Web) are used.
  • rptname=rptconvert(source,format); valid format arguments are:
    • HTML
    • RTF95
    • RTF97
    • FOT (for XML)

    The default stylesheet for the selected option is used.

  • rptname=rptconvert(source,format,stylesheet); for a discussion of valid stylesheet options for each output format, see "Report Format and Stylesheets". Type rptconvert #STYLESHEETLIST for a list of valid stylesheet arguments.


Generating a Report (Report Generator)

Creating Log Files

The main function of a log file is to document a setup file. The log file is a text file that allows you to view setup file information and report generation information. A log file can be used for many purposes, including:

  • As a debugging tool
  • As a reference on a setup file
  • To share information about a setup file through e-mail
A log file includes the following:

  • Setup file outline
  • Components and their attributes
  • Generation status messages currently displayed in the Generation Status tab.
  • All MATLAB licenses
To generate a log file, select Create Log File from the File menu. This will launch the MATLAB Editor/Debugger, displaying the log file.

The log file is saved in the same directory as the setup file and is named <setupfilename>.log.

The following two pages show an example of a log file (this is the log file for ch1-tutorial.rpt).

    Report Generator Log File

          Created: 12-Oct-1998
       Setup File: D:\v5\toolbox\rptgen\ch1-tutorial.rpt

========================================================

Outline Treeview:

[ -] Report - ch1-tutorial.rpt
   [ -] Paragraph - When peaks.m runs in the workspace, the
following text is displayed to the command window:
   [  ] Eval string -%Evaluate PEAKS in the base workspace
   [  ] Graphics Figure Snapshot
   [  ] Figure Prop Table -

========================================================

Generation Status Messages:

   Running component Paragraph.
   Running component Evaluate MATLAB Expression.
   Running component Graphics Figure Snapshot.
   Running component Figure Property Table.
  Beginning html output transform (this may take a moment)
  Output transform complete.
  Output file is "D:\v5\bin\nt\ch1-tutorial.html".
   File viewer for "D:\v5\bin\nt\ch1-tutorial.html" launched.
  Report complete

========================================================

(1)coutline

           DirectoryType: 'pwd'
           DirectoryName: ''
            FilenameType: 'setfile'
            FilenameName: 'index'
     isIncrementFilename: 0
                  Format: 'HTML'
              Stylesheet: 'html-!SingleClearTitleTocLot'
                  isView: 1
      isRegenerateImages: 1
    isAutoSaveOnGenerate: 0
                 isDebug: 0
             Description: [11x78 char]

(2)cfrparagraph

    TitleType: 'none'
    ParaTitle: ''
     ParaText: {[1x90 char]}

(3)cmleval

        EvalString: {8x1 cell}
           isCatch: 0
       CatchString: {'disp(['Error during eval: ', lasterr])'}
           isDiary: 1
    isInsertString: 0

(4)chgfigsnap

        FigureHandle: []
           isCapture: 0
    PaperOrientation: ''
      isResizeFigure: ''
           PrintSize: [5 4]
          PrintUnits: 'inches'
      InvertHardcopy: ''
         ImageFormat: 'AUTOHG'
          ImageTitle: ''

(5)chgfigproptable

              TableTitle: ''
                isBorder: 1
             TitleRender: 'v'
               ColWidths: [0.3000 1.0500]
            TableContent: [2x1 struct]
         SingleValueMode: 0
    isRemoveEmptyColumns: 0
       isRemoveEmptyRows: 1

========================================================

--------------------------------------------------
MATLAB Version 5.3.0.30976a (R11) Beta 4 on PCWIN
MATLAB License Number: mathworks
--------------------------------------------------
MATLAB Toolbox                          Version 5.3 (R11) beta 4
4-Sep-1998
Simulink                                Version 3.0 (R11) beta 3
29-May-1998
Stateflow                               Version 2.0 (R11) beta 4
06-Sep-1998
Real-Time Workshop                      Version 2.2.0
01-Jan-1998
Report Generator tools                  Version 1.0 (R11)
11-May-1998
Simulink Report Generator               Version 1.0 (R11)
11-May-1998


Editing Component Attributes (Report Generator)

Chapter 3
Editing Component Attributes

Introduction

Component attributes (parameters) determine what information a component inserts in the report and how the component will execute.

This chapter discusses changing attributes for two important components: the Handle Graphics Figure "For" Loop component and the Handle Graphics Figure Property Table component. These components are used as examples because they represent two large classes of components: looping components and property table components.

Attributes of individual components are discussed in detail in Chapter 6.

Displaying and Editing Component Attributes

When you select a component in the setup file outline, the Options tab displays component attributes. You can edit the attributes that are displayed.

You can edit only one component's attributes at a time. If you select multiple components, the Options tab displays the attributes of the first component in the list, but this attribute page will be inactive and appear gray.

Undoing an Attribute Edit

If you want to undo an edit action to a component attribute, select Undo from the Edit menu. There are five levels of "undo" (i.e., you can undo as many as your last five actions).

If you cannot undo a particular action, the Undo option appears grayed out or inactive.


Editing Component Attributes (Report Generator)

The Figure "For" Loop Component

A looping component executes its subcomponents several times. There are two types of looping components: flow control (e.g., For Loop, While Loop) and object (e.g., Handle Graphics Figure "For" Loop, Simulink Model Loop).

One type of object looping component is the Handle Graphics Figure "For" Loop. The Handle Graphics Figure "For" Loop executes its subcomponents (or loops over them) several times, each time applying its subcomponents to a different figure. You use the attributes page to specify the figures on which looping is to occur. The tutorial in the next section shows how the Handle Graphics Figure "For" Loop works.

Using the Handle Graphics Figure "For" Loop: A Tutorial

This section presents a figure loop tutorial to demonstrate how to use the attributes page for the Handle Graphics Figure "For" Loop. This tutorial shows how editing a component's attributes changes the information that the component inserts in the report.

In this figure loop tutorial, you will:

  • Create Handle Graphics figures for this tutorial.
  • Edit Handle Graphics Figure "For" Loop attributes to loop on certain figures that you created. You will loop on:
    • The current figure
    • Figures with certain tags
    • All visible figures
The figures included in the loop will appear in this report.

Note:
This tutorial creates .png images. Make sure you have a viewer that can read .png images (for example, Netscape 4.05 or later), and choose the appropriate output format in the Setup File Editor. See "Specifying the Report Output" in Chapter 2 for more information on output formats and viewers.

Starting the Tutorial

To use the figure loop tutorial and edit the setup file, type the following at the command line:

    setedit figloop-tutorial
The figure loop tutorial setup file will appear in the Setup File Editor, described in Chapter 2.

Creating Handle Graphics Figures

To create the Handle Graphics figures that you will be using in this tutorial, you should first close all of your figures. To close all figures that may still be open, type close all at the command line.

Type figloopfigures to create Figures 1 - 5. Figures 1,3, and 5 appear on the screen, but Figures 2 and 4 do not.

Figures 1, 3 and 5 are shown below.

Figure 2 and 4, which do not appear on the screen because they are invisible, are shown below.

Before you continue with the rest of the tutorial, it is important that you understand some important Handle Graphics concepts, such invisible figures, HandleVisibility, and tags. These are described in the next section.

Understanding Important Handle Graphics Concepts

There are three important Handle Graphics concepts you need to be familiar with before proceeding with the rest of this tutorial:

  • Invisible Figures
  • HandleVisibility
  • Tags

Invisible Figures

When you type figloopfigures, Figures 1,3, and 5 appear (see previous page), but Figures 2 and 4 do not. Figures 2 and 4 are invisible (visible='off'), so you can only see three figures. An invisible figure does not appear on screen; it exists, but it is hidden.

HandleVisibility

Figures 3 and 4 have HandleVisibility='off'. HandleVisibility is a parameter of a Handle Graphics figure, and it determines whether the handles in your figure are visible. See Using MATLAB Graphics for more information on HandleVisibility.

To list all figures in your workspace that have HandleVisibility='on', type get(0,'children')at the command line. The results show that Figures 5, 1, and 2 have HandleVisibility='on'.

    ans =
     5
     1
     2
Note that most figures have HandleVisibility='on'. To turn HandleVisibility off, you have to specify HandleVisibility='off' with the following:

    set(handle,'HandleVisibility','off')

Tags

A Handle Graphics figure can have a tag. A tag is a Handle Graphics figure parameter. A tag does not appear in a figure; it is an identifier that you specify.

If you want to see what, if any tag, a figure has, type get(<handle>, 'tag'). The handle of a figure is the figure number; enter the figure number for <handle>. For example, to see whether Figure 1 has a tag, type get(1, 'tag'). The following will appear:

    ans =
     membrane
This means that Figure 1 has a tag called membrane.

Every figure in this tutorial has a tag. However, by default, figures have empty tags.

Tutorial Figure Summary

The following table shows visibility (figure is visible if visible='on' and invisible if visible='off'), HandleVisibility, and tags for the figures in the tutorial.

Fig. No. | Name | Visible | HandleVisibility | Tag
1 | Membrane Data | on | on | membrane
2 | Invisible Membrane Data | off | on | membrane
3 | An Application | on | off | app
4 | An Invisible Application | off | off | app
5 | Peaks Data | on | on | peaks

Editing the Figure "For" Loop Component

Select the Figure Loop component and click on the Options tab. This will display the attributes page for the Figure "For" loop component.

Finding Out What Figures Are Looped On

The Loop Figure List shows you what figures are looped on when the report generates.

Note:
If your setup file generates new figures or changes existing figures, then the figures in the Loop Figure List will not be the figures that are actually reported on.

To see a figure in the Loop Figure List, click on the name of the figure. That figure becomes current and comes to the foreground on your screen, independent of the Setup File Editor window.

If you click on the name of an invisible figure, the figure becomes visible for a moment. For example, click on Invisible Membrane Data in the Loop Figures List; the figure briefly appears on the screen. Then type gcf (get current figure) in the MATLAB window. The following appears:

    ans =
    2
This means that Figure 2, "Invisible Membrane Data," is the current figure.

Note:
An invisible figure won't appear on the screen when it is created; it still exists, but it is hidden. For more information on invisible figures, see Using MATLAB Graphics.

Generating a Report

To generate a report, click on the Report button.

The generated report has two chapters. Chapter 1 contains the code for creating the figures. The second chapter contains the images that were looped on: "Membrane Data," "Invisible Membrane Data," "An Application," and "An Invisible Application." These are the four figures shown in the Loop Figure List.

Choosing Figures to Loop On

You can choose to loop on:

  • The current figure
  • All visible figures
  • Figures with certain tags

Looping on the Current Figure

Select the Figure 5 window ("Peaks Data") to make Figure 5 current.

To include only the current figure in the report, select Current figure only. Notice that the Loop Figure List now shows Peaks Data only. Click on the Report button to generate a report.

Note:
When you choose Current figure only, "current figure" refers to the figure that is current when the report is generated. This may not be the same figure you selected as the current figure in the Setup File Editor before report generation. For example, if the report generation process creates figures in your report, then the last figure created with HandleVisibility = 'on' is the current figure.

Looping on All Visible Figures

To loop on all visible figures, select Visible figures. This option runs subcomponents of the Figure "For" Loop component for all figures that are currently open and visible.

With HandleVisibility='on'

The Data figures only option is checked by default and excludes figures with HandleVisibility = 'off' from the loop. The Loop Figure List contains:

  • Membrane Data (Figure 1)
  • Peaks Data (Figure 5)
These are the figures that will be looped on.

Click on the Report button to generate a report. Notice that the report contains "Membrane Data" and "Peaks Data."

With HandleVisibility='on' or 'off'

Now deselect the Data figures only option. Figures with HandleVisibility = 'on'("Membrane Data" and "Peaks Data") and HandleVisibility = 'off' ("An Application") are now included in the loop.

The Loop Figure List now contains:

  • Membrane Data (Figure 1)
  • An Application (Figure 3 - HandleVisibility 'off')
  • Peaks Data (Figure 5).
Click on the Report button to generate a report. Notice that the report now contains "Membrane Data," "An Application," and "Peaks Data."

Looping on Figures With Certain Tags

To loop on figures with certain tags, select the All figures with tags option. When you select a tag, all figures with that tag are included, regardless of whether the figure is visible or whether HandleVisibility is 'on' or 'off'.

See the "Tags" section earlier in this tutorial for a brief discussion of Handle Graphics tags.

Adding a Tag to the Tag List Box

To add a tag to the tag list box, select the tag from the drop box on the right and click on the Add button, shown below.

The tutorial tag list box on the left starts with app and membrane. For example, to add peaks to the list, click on the down arrow in the tag drop box on the right and select peaks. Then click on the Add button.

Adding a Tag Manually

The tag drop box on the right shows a list of tags for figures that are open. If you want to add a tag that does not appear in the tag drop box, you can manually type in the tag.

To type in a tag, select Enter tag in edit field and type in the name of the tag in the edit field below the tag drop box. Then click on the Add button.

Removing a Tag From the Tag List Box

To remove a tag from the tag list box, select the tag and click on the delete button. Note that you can select multiple tags in the tag list box.

The tag list box should now contain app, membrane, and peaks. To remove membrane and peaks, hold the Ctrl key down and click on membrane and peaks. Both membrane and peaks are now selected. To delete them from the list box, click on the Delete button, shown below.

The only tag remaining in the tag list box is app. The Loop Figure List now contains An Application and An Invisible Application. Click on the Report button. Notice that the report only contains "An Application" and "An Invisible Application."

Tutorial Summary

This completes the figure loop tutorial. This tutorial showed you how to edit the Handle Graphics Figure "For" Loop attribute page to loop on different figures and include them in your report.

This tutorial showed you how to loop on:

  • The current figure
  • Figures with certain tags
  • All visible figures


Editing Component Attributes (Report Generator)

Property Table Components

This section discusses attributes of property table components. Property table components display property name/property value pairs in a table. For example, the Handle Graphics Figure Property Table component displays
property name/property value pairs in tabular form for Handle Graphics figures.

See Using MATLAB Graphics for more information on Handle Graphics property name/property value pairs.

Attribute pages for all property table components are similar in form. The attribute page for the Handle Graphics Figure Property Table is shown on the next page.

To view the component attribute page in the Setup File Editor, select the Figure Property Table component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first.

To add the Figure Property Table component to the setup file, first select the component in the Add Component tab in the Setup File Editor. Then click on the Add button, shown below.

The Handle Graphics Figure Property Table attribute page is shown below.

This section discusses how to use the Handle Graphics Figure Property Table attribute page to:

  • Select a table
  • Choose how a property name/property value is displayed
  • Add, replace, and delete properties to a table cell
  • Display or hide table and cell borders
  • Add and delete columns and rows

Selecting a Table

You can select a preset table to display property name/property value pairs, or you can create a custom table.

Preset Tables

A preset table is a table that is already formatted and set up. You can select a preset table in the preset table drop box in the upper left-hand corner of the attributes page. To apply a preset table, select the table and click on the Reset button. Note that the Reset button is active only when you select a preset table.

Custom Tables

To create a custom table, you can first select a preset table and then edit it. You may want to start with the Blank 4x4 preset table. You can add and delete rows and you can add properties.

If you want to use a custom table in more than one setup file, use Copy Component and Paste Component from the Edit menu to copy the custom table from one setup file to another.

You cannot save a custom table as a preset table. If you create a table and then select a preset table, all your changes will be lost once you click on the Reset button.

Choosing How a Property Name/Property Value Pair Is Displayed

The following sections discuss property name/property value pair display options.

Split Property/Value Cells

To have the property name and property value appear together in one cell, deselect the Split Property/Value Cells check box. This is the non-split mode. In the non-split mode, you can have more than one property name/property value pair per cell and you can also have additional text.

To have the property name and property value appear in adjacent horizontal cells in the table, select the Split Property/Value Cells check box. In this case, the table is in "split" mode and there can only be one property name/property value pair in a cell. If you have more than one pair in the cell in the Setup File Editor, then only the first pair is displayed in the report; all subsequent pairs are ignored.

Display Options

Each table cell in the report can display a property name/property value pair in one of several ways, shown in the table below.

Display Option | "Split" Mode | "Non-Split" Mode
Value |  |
Property Value |  |
Property Value (note: this is shown as PROPERTY value on the attributes page) |  |
Property: Value |  |
Property: Value |  |
Property - Value |  |
Property - Value |  |

To select how a property name/property value pair is displayed in a table cell in the report, select that cell and then choose one of the above display formats from the drop box at the bottom of the attributes page. You can also right-click on the table to invoke the context menu, and then select one of the above formats from the menu. Note that in the above table, the cells are center-justified. The next section discusses justification options.

Justification Options

The text in each cell can appear in the report in one of four ways, using the corresponding justification button. You can also right click on the table to invoke the context menu, select Cell justification, and then select one of the options shown below from the menu. These options are shown in the table below (note that the Property Value display option is shown here).

Option | Button | "Split" Mode | "Non-Split" Mode
Left- justified |  |  |
Centered |  |  |
Right- justified |  |  |
Double- justified |  |  |

Putting Text in a Table Cell

You can type text in a table cell in the Setup File Editor. The text appears in the report as long as you are in the non-split mode.

To enter text in a cell, double-click on the cell. When a gray box appears in the cell, you are in the edit mode. To exit the edit mode, press the Esc key.

In the edit mode, %<PropertyName> appears in the gray box. If you type text outside the %<>, then it will appear as text in the report. If you type text inside the %<>, it should be a valid property name. If you type an invalid property name, then that property name will appear in the report without a property value.

For example, if you choose to display the property name/property value pair as value, and enter the following in a table cell in the attribute page:

    My title: %<Name> is visible=%<visible>
and the value of Name is 'Membrane' and the value of visible is 'on', then the following table cell appears in the report if the cell is in the non-split mode.

If the table is in the split mode, then the following table cells appear in the report.

Title

The table has a title that you can edit. The title of the table can contain properties and text. The title is always in the non-split mode.

If the table has a title, it will appear in the List of Tables. Some stylesheets offer a list of tables. For a list of stylesheets that offer this option, see "Report Format and Stylesheets" in Chapter 2.

To enter title text, double click on the title, and enter text in the gray box.

To enter a property, follow the steps described in the next section, "Adding a Property".

Adding, Replacing, and Deleting Properties to a Table Cell

The following sections discuss how to add, replace, and delete properties to a table cell.

Adding a Property

To add a Handle Graphics property to a table cell in the Setup File Editor, follow these steps:

1.
Select the desired table cell.
2.
Choose the type of property from the type of property drop box on the right side of the attributes page. The type of property drop box acts like a filter by listing properties by category.
If you want to choose from all properties associated with a Handle Graphics figure, choose All properties in the type of property drop box.
3.
Choose the desired property name from the property list box.
4.
Double-click on the property name or use the Add button.
If you know the name of the property, you can also type the property name in the cell. See "Putting Text in a Table Cell" in the previous section.

Note:
The attribute page in the Setup File Editor does not display text wrapping inside a cell, but when the report is created, the text inside a cell will wrap.

Replacing or Deleting Properties

In the non-split mode, you can replace a property in a table cell in the Setup File Editor by following the instructions in "Putting Text in a Table Cell". You can delete a property by backspacing over it.

To replace a Handle Graphics property in a cell when the table is in split mode, follow the instructions in "Adding a Property". You cannot use these steps to delete a Handle Graphics property in a cell when the table is in non-split mode, since a cell can have more than one property name/property value pair.

Displaying or Hiding Table and Cell Borders

You can toggle the table and cell borders on and off in the Property Table by using the context menu.

To toggle a cell border on and off, place your cursor in the desired cell and click the right mouse button to invoke the context menu. Choose Cell borders and then select Top, Bottom, Right, or Left to toggle the desired border on or off.

To toggle the border of the table on and off, use the context menu. Place your cursor over the table and click on the right mouse button to invoke the context menu. Then choose Table frame to toggle the table border on or off.

Adding and Deleting Columns and Rows

To add or delete a column or row, select a cell, and then click on one of the following four buttons.

Press this button: | To do this:
 | Add column (added to the right of the selected column)
 | Delete selected column
 | Add row (added below the selected row)
 | Delete selected row

You cannot delete a row or column when it is the only row or column in the table.

Resizing Columns

To resize the column width, click and drag the vertical border between cells.

Zooming and Scrolling

While you are editing the table in the setup file, you can zoom in to and out of the table with the zoom buttons, located to the left of the horizontal scroll bar.

Press this button: | To do this:
 | Zoom in
 | Zoom out

You can scroll vertically and horizontally with the corresponding scroll bars around the table.

Property Table Summary

This completes the discussion of the Property Table component. This section showed you how to edit the Handle Graphics Figure Property Table attribute page to insert a property name/property value table in your report.

This section discussed how to:

  • Select a preset table or build a custom table
  • Edit the appearance of the table and of individual table cells
  • Edit the contents of the table by choosing property name/property value pairs to display


Building and Editing the Setup File (Report Generator)

Chapter 4
Building and Editing the Setup File

Overview

Components

A report consists of information that is specified by components in its setup file. If you have the MATLAB Report Generator package, you have the following types of components:

  • Formatting
  • Handle Graphics
  • Logical and Flow
  • MATLAB
  • Report Generator
If you also have the Simulink Report Generator package, you have the Simulink and Stateflow components as well. Chapter 6 is a components reference chapter and contains detailed information about each component.

You can use the Setup File Editor to select and edit components. This chapter explains how to use the Setup File Editor to edit a setup file.


Building and Editing the Setup File (Report Generator)

Building a Setup File

You can build your setup file by choosing components that you want in your report. You can add, delete, move, deactivate, and activate components using the Setup File Editor. You can always undo your last change by selecting Undo from the Edit menu. There are five levels of undo (i.e., you can undo as many as your last five actions).

In order to create a valid setup file, you must nest child components inside an appropriate parent component. A parent component usually determines how or whether its child components will execute. Chapter 6 discusses parent/child relationships between components in the same class.

Setup File Outline

The outline of the current setup file is displayed in the left pane of the Setup File Editor. The outline contains all the components which will be included in the report. Child components are always shown indented under their parent component. A sample setup file outline is shown below.


Building and Editing the Setup File (Report Generator)

Adding a Component to the Setup File

To add a component to your setup file outline, click on the Add Components tab. It will take a moment to load all of the components on the MATLAB path, and the following message will appear: Searching MATLAB path for Report Generator components.

The Add Components tab (shown below) contains a list of all components. The general classes of components are listed in capital letters (e.g., FORMATTING, HANDLE GRAPHICS). Components for each class are listed below the class to which they belong. For example, Figure Property Table and Graphics Figure Snapshot are listed below HANDLE GRAPHICS because they are Handle Graphics components.

Select the component you want to add to the setup file and then click on the Add button, shown below.

Alternatively, you can double-click on the desired component to add it to the setup file. The added component appears under the currently selected component in the setup file outline.

Immediately after you add a component to the setup file, a message appears at the bottom of the Add Components tab, indicating that the component has been added to the setup file. Otherwise, a brief description of the highlighted component appears at the bottom of the tab.

Getting Help on a Component

If you need help with a component, select the component in the Add Components tab and click on the Help button. If you need a quick summary of all components in a certain component category, select the component category and click on the Help button, shown below.


Building and Editing the Setup File (Report Generator)

Deleting a Component

To delete a component from your setup file, select the component you want to delete from the setup file outline and click on the Delete button, shown below.

Alternatively, you can choose Delete Component from the Edit menu.

If you are deleting a component that has subcomponents in your setup file, all of its subcomponents will be deleted as well.

Note:
You cannot delete the Report component, which is always the first component in the outline.


Building and Editing the Setup File (Report Generator)

Deactivating/Activating a Component

Deactivating a Component

If you do not want a component to execute when the report is generated, you can deactivate the component. To deactivate a component, select the component and click on the Activate/Deactivate button.

Alternatively, you can also choose Deactivate Component from the Edit menu.

When a component is deactivated, an ø will appear to the left of the component in the setup file outline. If you select the Options tab for a component that you have deactivated, the title of the tab appears grayed-out.

If you are deactivating a component that has subcomponents in your setup file, all of its subcomponents will be deactivated as well.

Note:
You cannot deactivate the Report component, which is always the first component in the outline.

Activating a Component

To activate a component that has been deactivated, select the component and click on the Activate/Deactivate button or choose Activate Component from the Edit menu.

Note that when you select a deactivated component, the Activate/Deactivate button has the following appearance.


Building and Editing the Setup File (Report Generator)

Moving Components

Three move buttons allow you to move components in the setup file outline. If the selected component cannot be moved to a particular position, the corresponding move button is inactive.

You can select multiple components and move them at the same time.

You must be careful when you move components, especially when there are parent-child relationships involved. Some components cannot have children and some components should not be children of other components. See Chapter 6 for details.

Note:
The Report component cannot be moved.

Up, Up and Out

You can move a component "up" or "up and out" with the Up button. The Up button is disabled for the first component after the Report component.

Up

"Up" moves the selected component above the component currently listed above it. A component can move up if it is not first in its list of peers (components at the same level). No component can move above the Report component.

When the Up button is enabled for an "up" operation, it has the appearance shown below.

Example. Select the Graphics Figure Snapshot component in Outline A below. Then click on the Up button. The Graphics Figure Snapshot component moves under the Figure Name component, as shown in Outline B.

Up and Out

"Up and out" moves the selected component directly above its parent and up to the level of its parent. A component can move up and out if it is first in its list of peers.

When the Up button is enabled for an "up and out" operation, it has the appearance shown below.

Example. Select the Figure Name component in Outline A below. Click on the Up button (which is now enabled for "up and out"). The Figure Name moves above the Section component, and is at the same level as the Section component.

Down, Down and Out

The Down button can move a component "down" or "down and out." The Down button is disabled if a component is the last component in the outline.

Down

"Down" moves the selected component below the component currently listed below it. A component can move down if it is not last in its list of peers.

When the Down button is enabled for a "down" operation, it has the appearance shown below.

Example. Select the Figure Name component in Outline A below. Click on the Down button. The Figure Name moves below the Graphics Figure Snapshot component.

Down and Out

"Down and out" moves the selected component directly below its parent and to the level of its parent. A component can move down and out if it is last in its list of peers.

When the Down button is enabled for a "down and out" operation, it has the appearance shown below.

Example. Select the Figure Property Table component in Outline A below. Click on the Down button (which is now enabled for "down and out"). The Figure Property Table component moves to the level of its parent (the Section component) and it is the next component at that level.

In

The In button can move a component "up and in" or "down and in." The In button is disabled when neither the component above nor below the selected component can have children.

Up and In

If the component listed above the selected component can have children, then "up and in" causes the selected component to become the child of the component listed above it. A component can move "up and in" if the peer component above it can have children.

When the In button is enabled for an "up and in" operation, it has the appearance shown below.

Example. Select the second Chapter component (Figures in Report) in Outline A below. Click on the In button (which is now enabled for "up and in"). The Chapter component becomes the child of the first Chapter component (Code for Creating Figures), and it becomes a section instead of a chapter.

Down and In

If the component listed below the selected component can have children, then the selected component becomes its child and is shown indented under the parent component below it. A component can move "down and in" if the peer component below it can have children.

When the In button is enabled for a "down and in" operation, it has the appearance shown below.

Example. Select the first Chapter component (Code for Creating Figures) in Outline A below. Click on the Down button (which is now enabled for "down and in"). The Chapter component will become the child of the first component below it that can take children, which is the second Chapter component (Figures in Report), and it becomes a section instead of a chapter.

Cut, Copy, and Paste from Edit Menu

You can cut, copy, and paste components using the Edit menu.

Removing (Cutting) a Component

To remove a component from the outline, select the component and then choose Cut from the Edit menu.

Copying a Component

To copy a component from the outline:

  • Select the component to copy.
  • Choose Copy from the Edit menu.
  • Select the component under which you want to paste the copied component (for example, if you want to copy the Text component under the Paragraph component, select the Paragraph component in this step).
  • Choose Paste from the Edit menu.
Note that the Paste option always places the pasted component below the component that is currently selected.


How to Create Your Own Components (Report Generator)

Chapter 5
How to Create Your Own Components

Creating Components

Components are self-contained, modular elements that control the report generation process and insert elements into a report.

A component is a MATLAB object (in the object-oriented programming sense). See Using MATLAB for a discussion of MATLAB object-oriented programming.

Why Create Your Own?

In most cases, the components provided with the Report Generator should be more than adequate to meet your needs. However, you may want to create your own components if you want to generate a report that cannot be easily created by components included with the Report Generator. For example, you can create a component that inserts a corporate logo into your report, or you can create a component that plots data.

What's Involved in Creating Components

You can create custom components with the Component Creation Wizard. There are two main steps to creating and running a component:

  • Use the Component Creation Wizard to create the component.
  • Edit execute.m to make the component executable (this is an M-file that is generated when you create a component).
The Component Creation Wizard is a tool for creating components. It takes you through five steps; there is a screen for each step.

The Component Creation Wizard creates a "skeleton" object, i.e., it sets up the raw structure of the component. It does not create all of the executable M-code.

After you create the component, several M-files are created, including execute.m. The default execute.m file for a new component inserts an empty space into the report. Therefore, you should edit execute.m to run the component properly.


How to Create Your Own Components (Report Generator)

Starting the Component Creation Wizard

To open the Component Creation Wizard, type compwiz at the command line.

The list box on the left side lists five pages that you should complete when you are creating a component. Although you should complete all five pages, you can skip ahead at any time if you prefer.

The five pages are:

  • Component Category
  • Component Name
  • Component Attributes
  • Component Methods
  • Confirm Selections

Tutorial Overview

This chapter discusses these options in detail, and uses a tutorial to guide you through the process of creating a new component. In this tutorial, you will create a component that will produce a plot and insert the plot into a report.

You will use the Component Wizard to create the skeleton component, which consists of a directory and M-files or methods. Then you will edit the component's M-files to complete the component.


How to Create Your Own Components (Report Generator)

Entering Component Category Information

When you create a component, you have to decide the category of components to which it will belong. This is the category in which the new component is displayed in the Add Component tab of the Setup File Editor. You can select from existing categories, such as Formatting, Handle Graphics, etc., or you can create a new category of components.

Click on Component Category in the list box on the left to get to the Component Category page. You will enter the component category information on this page.

Choosing the Component Category

The Component category list box on the right shows all the available component categories. To select and existing component category, select that component category from the list. The Category ID and Category name fields display the two-letter code and the name of the category of component you selected, respectively.

If you choose **Make New Component Category**, you can choose a new two-letter code and description (Category ID and Category name).

Tutorial Task

This step creates a new component category.

From the bottom of the Component Category list box, select

    **Make New Component Category**

Specifying the Component Category ID

The Category ID is a unique, two-letter code. Any component in this group will have this code. If the code already exists, a warning is displayed.

Tutorial Task

In the Category ID field, enter

    RP
(for Random Plotting).

Specifying the Component Category Name

The Category name is the name of the new component category. This is the component category that will appear in the Setup File Editor.

Tutorial Task

In the Category name field, enter

    Random Plotting Tools

Looking at the New Component Category Page

After you have completed the tutorial tasks, the Component Category page will have the following appearance.


How to Create Your Own Components (Report Generator)

Creating the Component Name

When you create a component, you have to decide:

  • What to name the component
  • What function name to give the component
  • Where to put the directory that contains all the M-files for the component
  • What description to give the component
  • Whether the component can have subcomponents
You enter this information on the Component Name page of the Component Creation Wizard.

Click on Component Name in the list box on the left to get to the Component Name page. Or, if you have just completed the Component Category page, click on the Next -> button.

Naming the Component

You need to specify a name for the component you are creating. The name you choose will appear in the Add Component tab of the Setup File Editor.

Tutorial Task

In the Name field, enter

    Figure Random Plot

Specifying the Component Function Name

By convention, the component function name should have the format cxx_<function name>. The first letter of the component function name should always be c. The second and third letters are from the two-letter code that you entered in the New category ID field in the Component category page. In this case, the letters are rp.

The function name should be simple, but descriptive. The function name should be made up of valid characters (for a MATLAB function); for example, the function name should not contain an ampersand (&). Any invalid characters are changed to an underscore (_).

After you create the new component, you can get an instance of the object or component by typing the component function name at the command line.

Tutorial Task

In the Component Function Name field, enter

    crp_randplot

Specifying the Parent Directory

When you create the component, methods or M-files are created for the component. These M-files are located in a directory called @cxx_<FunctionName>, which is located in the directory that you specify in the Parent directory field.

You should choose a parent directory that is on the MATLAB path. Otherwise, it may be difficult for MATLAB to find your component.

Tutorial Task

Enter the appropriate directory for the Parent Directory field.

What you enter for the parent directory depends on where you have MATLAB installed. For example, if your copy of MATLAB is in c:\matlab, you can select c:\matlab or c:\matlab\<directory name> as the parent directory. All the M-files created for the new component will then be placed in c:\matlab\@cxx_filename or c:\matlab\<directory name>\@cxx_filename, respectively.

Specifying the Component Description

The description of the component can be anything you want. You should keep the description to one or two sentences. The description appears at the bottom of the Add Components tab in the Setup File Editor.

Tutorial Task

In the Description field, enter

This component creates a random figure and inserts it into the report.

Subcomponents

If you select the Component can contain subcomponents option, then the component you are creating can have subcomponents or children.

For the tutorial, do not select the Component can contain subcomponents option.

Looking at the New Component Name Page

After you have completed the tutorial tasks, the Component Name page will have the following appearance.


How to Create Your Own Components (Report Generator)

Creating Component Attributes

Component attributes determine how a component behaves and what information it inserts into the report. You can see component attributes in the Options tab of the Setup File Editor.

You create an attribute page for the new component on the Component Attributes page of the Component Creation Wizard.

Click on Component Attributes in the list box on the left to get to the Component Attribute page. Or, if you have just completed the Component Name page, click on Next ->.

Component Attribute Tutorial Task 1

For the first component attribute tutorial task, you will create an attribute that lets you put a title on your plot. This attribute will have an editable text field. The default title will be My Random Plot. This attribute should appear on the attribute page with the name: Title of created plot.

Specifying the Field Name

The field name is the name of the attribute. It must be a valid variable name (e.g., no spaces, etc.).

Tutorial Task

In the Fieldname field, enter

    Plot_Title
Note that the field name must be a valid variable name, so if you enter Plot Title, it changes to Plot_Title as soon as you press the Enter key.

Specifying the Data Type

The data type is the type of data that is used by the attribute. For more information, see "Data Types" in Using MATLAB.

The Data type drop box contains the following options:

  • Logical T/F
  • Enumerated List
  • Number
  • Character String
  • Cell Array
  • Other (struct, object)

Tutorial Task

In the Data type drop box, select

    Character String

Setting the Default Value

You set the value that will be displayed on the attribute page as a default value for this attribute.

Tutorial Task

In the Default value field, enter

    'My Random Plot'

Setting the Control Type

The control type is the type of control you want to use to represent and change the attribute.

To see what each type of control looks like, type guide at the command line to get the Guide Control Panel. Or, see Using MATLAB Graphics.

The available options for Control type depend on the Data type that you chose earlier. The table below shows the available data types for each control type.

Control Type | Logial T/F | Enum.List | Number | Char. String | Cell Array | Other
checkbox | yes | yes |  |  |  |
togglebutton | yes | yes |  |  |  |
radiobutton | yes | yes |  |  |  |
popupmenu | yes | yes |  |  |  |
listbox | yes |  |  |  |  |
edit |  |  | yes | yes | yes | yes
multiedit |  |  |  | yes | yes |
slider |  |  | yes |  |  |

Tutorial Task

In the Control type drop box, select

    edit

Specifying the Attribute Name

The attribute name appears in the Options tab of the Setup File Editor (in the component attribute page). The attribute name should be short (two to four words).

Tutorial Task

In the Att. name field, enter

    Title of created plot

Looking at the New Component Attributes Page

After you have completed the tutorial tasks, the Component Attributes page will have the following appearance.

Creating Another Attribute

To create another attribute, click on the New button. To delete an attribute, select it and click on the Del button.

Component Attribute Tutorial Task 2

This task creates another attribute. This attribute lets you control the number of lines that appear in the plot. The default number will be 3. The UI control for this attribute will be a numerical slider. This attribute will appear on the attribute page with the name: Number of lines to appear in plot.

First click on the New button and then enter the following parameters:

1.
Fieldname: NumLines
2.
Data type: Number
3.
Default value: [3]
4.
Control type: slider
5.
Att. name: Number of lines to appear in plot
After you have completed the tutorial tasks, the Component Attributes page will have the following appearance.

These are the attributes you just created.


How to Create Your Own Components (Report Generator)

Creating Component Methods

Click on Component Methods in the list box on the left to get to the Component Methods page. Or, if you have just completed the Component Attributes page, click on Next ->.

Creating a Custom Attributes Method

The Create custom attributes method option creates a method called attribute.m that controls the creation of an attribute page.

If you do not select this option, the new component inherits an attribute page from rptcomponent, which is the component parent class. The attribute.m method is not created for the component, so you cannot customize the attributes page.

See Using MATLAB for a discussion of class, object, and method.

If you do not select the Create custom attributes method option, then this is the inherited attribute page.

Note:
If you are modifying an existing component, you should not select this option unless you want to overwrite the existing attributes method.

If you do select the Create custom attributes method option, then this is the attribute page.

Tutorial Task

Select the Create custom attributes method option for the tutorial.

Creating a Custom Outlinestring Method

The Create custom outlinestring method option creates a method called outlinestring.m. This method inserts a single-line string representation of the component in the setup file outline when the component is added to it.

The default outlinestring method gets the component string from the getinfo method. The string is taken from the Name field in the Component Name page of the Component Creation Wizard.

If you select this option, the outlinestring.m method is created for the component, and you can edit the outline representation of the component in the outlinestring.m method. This is discussed later, in "Changing the Outline String."

If you do not select this option, the new component inherits the outlinestring method from rptcomponent; the outlinestring.m method is not created for the component. The string that is displayed in the setup file outline is still taken from the Name field in the Component Name page of the Component Creation Wizard, but you cannot change the way the component is shown in the outline.

Note:
If you are modifying an existing component that has an existing outlinestring method, you should not select this option. Otherwise, you will overwrite the existing outlinestring method.

Tutorial Task

Select the Create custom outlinestring method option for the tutorial (you will edit the outlinestring method in a tutorial task later).


How to Create Your Own Components (Report Generator)

Reviewing All Component Information

To review all component information, click on Confirm Selections in the list box on the left to get to the Confirm Selections page. Or, if you have just completed the Component Methods, click on Next ->.

To create the component, click on Create.

Creating and Verifying the Component

In this section, you will create the component and then verify that it was created.

Creating the Component

Click on Create to create the new component.

Verifying Component Creation

To verify that your new component has been created, open the Setup File Editor if it is not already open and click on the Add Components tab. You will see the a new component category, Random Plotting Tools, and a new component in that category, Figure Random Plot.


How to Create Your Own Components (Report Generator)

Tutorial: Editing and Running the New Component

You have now completed the part of the tutorial that uses the Component Creation Wizard.

For the rest of this tutorial, you will be editing M-files that are produced when you create the component. The table below shows the M-files you will be editing.

Edit This M-File | To Complete This Task
execute.m | Incorporate new attributes and insert a snapshot of the figure into the report
getinfo.m | Add new attributes Change an existing attribute
outlinestring.m | Change the string that appears in the setup file outline in the Setup File Editor

Note:
The only M-file that you must edit is execute.m, which runs the component when the report is generated. In general, editing getinfo.m and outlinestring.m is optional.

In general, to edit these M-files, you must have some knowledge of MATLAB. To edit these M-files for the tutorial, you should have some knowledge of Handle Graphics as well.

Editing a New Component

When you create a component, the Report Generator creates an @<compfilename> directory; in this case the created directory is @crprandplot.

The M-files in this directory are methods; they are intended to be used by this object only. The following are M-files in @crp_randplot.

M-File | What It Does
crp_randplot.m | This M-file is the constructor; it creates the object. You can change the help in this file.
attribute.m | This M-file displays the attribute page.
outlinestring.m | This M-file returns the string that represents the component in the setup file outline when a component is added to it.
subasgn.m | This M-file accesses fields of object outside its method. Do not edit this file.
subsref.m | This M-file accesses fields of object outside its method. Do not edit this file.
getinfo.m | This M-file is used to store information about components - it tells the Report Generator how to create a component. You can edit this file to create a new attribute.
execute.m | This M-file is the method that is called during generation time. It inserts into the report the information that is created by the component when the report is generated.

Method, object, and constructor are object-oriented programming concepts that are discussed in Using MATLAB.

Editing the Execute Method

Open the execute.m file, which runs the component when the report is generated. This method inserts into the report the information that the component creates when the report is generated. The default execute.m file created by the Component Wizard inserts nothing into the report.

The execute.m file for the new component contains the following lines of code:

    function out=execute(c)
%EXECUTE returns a report element during generation
out=sgmltag;
In order for your execute.m method to insert meaningful information into the report, you must modify this M-file.

The single output argument of the execute.m method is inserted into the report. If the output is a string or number, the component acts like a text component and inserts the output directly into the report. It is possible to create a more sophisticated output by running another component within your execute method.

The following tutorial tasks show you how to use both output forms:

  • "Editing execute.m to Insert Text Output into the Report" shows you how to edit execute.m to use the component to insert a string or number into the report
  • "Editing execute.m to Insert a Figure into the Report" shows you how to edit execute.m to run the Graphics Figure Snapshot component within the Figure Random Plot component to insert the snapshot of the figure into the report.

Editing execute.m to Insert Text Output into the Report

Edit the execute.m file to create a figure, plot random lines in the figure's axes, and insert the handle to the figure (text output) into the report.

To complete this task, replace the default lines of code with the following lines of code (comments are optional):

    %EXECUTE returns a report element during generation
function out=execute(c)

%Create the figure.
figHandle=figure('Name',c.att.Plot_Title);

%Create the axes and make them a child of the figure.
%Set the axes "Color" property to be the value of
%the AxesColor attribute.
axHandle=axes('Parent',figHandle);

%This creates the data to be plotted
%and displays it in the axes.  The
%number of lines to be plotted is
%defined by the NumLines property.
plotData=rand(10,floor(c.att.NumLines));
plot(plotData,'Parent',axHandle);

%By setting 'out' to the figHandle variable,
%we will insert the figure handle into the report.
out=figHandle

%Clean up by deleting the figure
delete(figHandle)

Using the New Component

After editing the execute.m method, you are ready to use your component in a report. Add the component to a setup file and click on the Report button. If there is an error during generation, the Report Generator will skip over the component.

Create a setup file that looks like this:

    [-] Report - rplot-test.rpt
   [-] Paragraph - <Text from subcomponents>
      [ ] Text - Random Plotted Figure has handle=
      [ ] Figure Random Plot
Your report will look like this (it will contain the following line):

    Random Plotted Figure has handle=1
Note that the handle number may be different depending on how many figure windows you had open at the time of generation.

You now have a functioning component. The next section discusses how to add new attributes to the component and change the execute.m method so that it inserts a snapshot of the random plot figure into the report.

Creating a New Attribute

You can create a new attribute by editing getinfo.m. This methods file contains information on component attributes and how they are displayed in the component attribute page (shown in the Options tab of the Setup File Editor).

All attribute information for a component is taken from out.att.XXX and out.attx.XXX lines in getinfo.m. The out.att.XXX lines are attributes and the out.attx.XXX lines are UI options. The out.attx.XXX lines are optional; they do not need to be included in getinfo.m. If you do not include them, default UI controls are used for the attribute.

Finding Attributes and Their Default Values

Find the following section in getinfo.m:

    %---------------------- ATTRIBUTES --------------------
%The out.att.XXX section sets attribute defaults.
out.att.Plot_Title = 'My Random Plot';
out.att.NumLines = [3];
This section shows that there are two attributes:

  • Plot_Title, which has a default value of 'My Random Plot'
  • NumLines, which has a default value of 3
Note:
Plot_Title and NumLines were specified in the Fieldname field in the Component Attributes page of the Component Creation Wizard. The default values were specified in the Default value field in the Component Attributes page.

Adding a New Attribute and Default Value

Create another attribute called isVisibleAxes. This attribute determines whether the figure axes are visible. The attribute will have a default value of logical 1 (axes on).

To complete this task, add the following line to this section:

    out.att.isVisibleAxes = logical(1);

Specifying Attribute Name, Data Type and UI Control

To specify attribute name, data type, and UI Control, (corresponds to Att. name, Data type, and Control type fields in the Component Attributes page), find the following section in getinfo.m:

    %------------------ ATTRIBUTE DISPLAY -----------------
%The out.attx.XXX section sets attribute GUI information.
%Each .attx structure has the following fields:
% .String - Appears as a text field next to the UIcontrol
% .Type - data type of the corresponding attribute.
%      STRING - character string
%      NUMBER - scalar or vector number
%      LOGICAL - boolean logical(1)/logical(0)
%      ENUM - enumerated list of STRING, NUMBER, or LOGICAL
%      CELL - cell array
%      OTHER - structure or object
%         note: "OTHER" has no automated uicontrol updating
% .enumValues - options for an enumerated list (.Type='ENUM')
% .enumNames - display representation of .enumValues
%         note: must be same length as .enumValues
%         note: empty enumNames implies display from enumValues
% .UIcontrol - type of control to use in GUI
% .numberRange - min and max values (.Type-'NUMBER')

out.attx.Plot_Title.String='Title of created plot';
out.attx.Plot_Title.Type='STRING';
out.attx.Plot_Title.UIcontrol='edit';

out.attx.NumLines.String='Number of lines to appear in plot';
out.attx.NumLines.Type='NUMBER';
out.attx.NumLines.UIcontrol='slider';
out.attx.NumLines.numberRange=[inf inf];
Attribute Name. out.attx.isVisibleAxes.String is the name of the attribute as it appears in the Setup File Editor (corresponding to the Att. name field of the Component Attributes page in the Component Creation Wizard).

To create the attribute name for isVisibleAxes called 'Make figure axes visible', add the following line to this section:

    out.attx.isVisibleAxes.String='Make figure axes visible';
Attribute Data Type. out.attx.isVisibleAxes.Type is the data type of the attribute (corresponds to the Data type field of the Component Attributes page in the Component Creation Wizard).

To specify the data type for isVisibleAxes to be logical, add the following line to this section:

    out.attx.isVisibleAxes.Type='LOGICAL';
LOGICAL sets the data type to be a logical or Boolean number.

Note:
If you do not set the type, the Report Generator will infer the type from the default value you supplied earlier.

Attribute UI Control. out.attx.isVisibleAxes.UIcontrol is the type of UI control for the attribute (corresponding to the Control type option of the Component Attributes page in the Component Creation Wizard).

To specify the UI control for isVisibleAxes to be a check box, add the following line to this section:

    out.attx.isVisibleAxes.UIcontrol='checkbox';

Creating Another Attribute

Create another attribute called AxesColor, which lets the user choose one of four colors for the axes: white, green, red and blue. The default color will be white. The name of the attribute, as is appears in the Setup File Editor, will be Color of Axes.

To do this task, add the following lines of code to getinfo.m (comments are preceded by `%' and are optional):

    % This creates an attribute called AxesColor, which has a default
% color of  white (1 1 1).
out.att.AxesColor=[1 1 1];

% This creates a name for the attribute, which appears in the
% attribute page in the Options tab.
out.attx.AxesColor.String='Color of axes';

% This creates an enumerated list with color choices of
% white (1 1 1), green (0 1 0), red (1 0 0), and blue (0 0 1).
out.attx.AxesColor.enumValues = {[1 1 1] [0 1 0] [1 0 0] [0 0 1]};

% This creates the names for the entries in the enumerated
% list: white, green, red and blue.)
out.attx.AxesColor.enumNames  = {'white' 'green' 'red' 'blue'};
Note that out.attx.AxesColor.UIcontrol and out.attx.AxesColor.Type are not specified here. A default UI control and data type are used, according to the default value.

Changing a Previously Created Attribute

You can change a field for any attribute that you create by editing the getinfo.m.

The slider created for NumLines has a range of -inf to inf:

    out.attx.NumLines.numberRange=[-inf inf];
A slider by default has a range of: [-inf +inf]; it guesses about the range. Change the slider range to [1 10] (minimum and maximum number of lines).

Changing the Outline String

The outlinestring.m method creates a string that is a one-line description of the component in the setup file outline in the left-hand side of the Setup File Editor.

outlinestring.m contains the following lines of code:

    function strout=outlinestring(c)
% OUTLINESTRING display short component description
% STR=OUTLINESTRING(C) Returns a terse description of the
% component in the setup file editor report outline.  The
% default outlinestring method returns the component's name.
info=getinfo(c);
To change the outline string, add the following line of code in outlinestring.m:

    strout=[info.Name ' - ' c.att.Plot_Title];
This takes the first part of the outline string from out.Name in getinfo.m, adds a dash, and the second part from out.att.Plot_Title, which is My Random Plot. The string representing the new component in the setup file outline now has following appearance:

    Figure Random Plot - My Random Plot

Running the New Component

To run the new component, you must edit execute.m.

First, save all your changes to getinfo.m and outlinestring.m. You can use the Setup File Editor to view and check the attributes of your new component.

This is the attribute page.

If you did not select the Create custom attributes method option on the Component Methods page, then you get the inherited attribute page, shown below.

Editing execute.m to Insert a Figure into the Report

Open the execute.m file, which runs the component when the report is generated. Edit the file so that the component uses the new isVisibleAxes and AxesColor attributes that you just created. The new code will also insert a snapshot of the random plot figure into the report instead of returning the figure handle as text.

To complete this task, replace the old lines of code with the new lines of code shown below.

    function out=execute(c)
%EXECUTE returns a report element during generation

%Create the figure.
figHandle=figure('Name',c.att.PlotTitle);

%Create the axes and make them a child of the figure
axHandle=axes('Parent',figHandle);

%Turn axes visibility on or off depending
%on the value of the isVisibleAxes attribute
if c.att.isVisibleAxes
   axis on;
else
   axis off;
end

%This creates the data to be plotted
%and displays it in the axes.  The
%number of lines to be plotted is
%defined by the NumLines property.
plotData=rand(10,floor(c.att.NumLines));
plot(plotData,'Parent',axHandle);

%Set the axes "Color" property to be the value of
%the AxesColor attribute.
set(axHandle,'Color',c.att.AxesColor);

%Now what we have created the figure, we want
%to display it in the report.

%Create an HG Figure Snapshot component
snapComp=c.rptcomponent.comps.chgfigsnap;

%Set the title of the resulting snapshot
%to be the Plot_Title attribute.
snapComp.att.ImageTitle=c.att.Plot_Title;

%Since the random plot figure is the current
%figure, it will be the one captured by the
%snapshot component.  This command runs the
%snapshot component and returns the DocBook
%<figure> tag.  The second argument to
%runcomponent shows the priority of the
%"Running Component" message in the Generation
%Status tab.
out=runcomponent(snapComp,6);

%Clean up by deleting the figure
delete(figHandle)
Note the second argument to runcomponent in the line

    out=runcomponent(snapComp,6);
sets the message priority level to 6. If you set the Generation Status message priority level in the Setup File Editor to be less than 6, then no messages will be generated for this component as it is executing. See "Setting the Generation Status Update Priority Level" in Chapter 2 for a discussion on the message priority level.

The Report Created by the Figure Random Plot Component

To create a simple report with the Figure Random Plot Component, create a setup file that looks like this. This setup file uses the modified component to create a report. This report will include a paragraph of description text and a picture of a randomly plotted figure.

To do this task, create the following setup file:

    [-] Report - new-rp-test.rpt
   [-] Paragraph - This is a Random Plotted Figure
   [ ] Figure Random Plot - Random Lines
Click on the Report button. The following report is generated.


How to Create Your Own Components (Report Generator)

Summary

In this chapter, you completed a tutorial that demonstrated how to create a new component and its attributes with the Component Creation Wizard. You then learned how to edit certain method files (getinfo.m, outlinestring.m, and execute.m) to:

  • Create new attributes
  • Edit existing attributes
  • Change the string that appears in the setup file outline in the Setup File Editor
  • Determine how the component behaves during execution and what it inserts into the report


Component Reference (Report Generator)

Chapter 6
Component Reference

Introduction

The MATLAB Report Generator package contains the following types of components:

  • Formatting
  • Handle Graphics
  • Logical and Flow
  • MATLAB
  • Report Generator
The Simulink Report Generator package contains Simulink and Stateflow components as well. The Simulink Report Generator is built atop the MATLAB Generator.

What's In This Chapter

This is a reference chapter that discusses:

  • Different categories of components
  • Parent/child organization for each component category
  • Each component and its attributes (shown on the component attribute page)
Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.


Report (Report Generator)

Report

Component

Report

Category

none

Description

The Report component is the top-level component in the setup file. This component lets you specify the following output options:

  • The name and location of the report file
  • The report format and style
  • Whether the setup file is saved automatically upon report generation
  • Whether the report will be displayed
  • Whether images will be regenerated
  • A description of the report
The Report component is always the first component in the setup file and cannot be moved, deactivated, added, or deleted.

Attributes

This is the Report Options attribute page.

Note:
To view the Report attribute page in the Setup File Editor, select the Report component in the setup file outline on the left and click on the Options tab.

This component is discussed in detail in Chapter 2.

Insert anything into report?

No.

Filename

coutline


Formatting Components (Report Generator)

Formatting Components

You can use Formatting components to insert basic documentation elements in your report.

Formatting components have the following parent/child relationships:

Cell Table. This component converts a cell array into a table in the report. The Cell Table component can have either the Chapter/Subsection or Paragraph component as its parent and cannot have children.

Chapter/Subsection. This component groups portions of the report into sections. The following rules apply to the Chapter/Subsection component:

  • Children of the Chapter/Subsection component are placed inside the section created by this component.
  • The Chapter/Subsection component takes paragraph-level children unless you check the Take section title from the first subcomponent? check box. In this case, a Chapter/Subsection component's first child must be a Text component.
  • The Chapter/Subsection component can nest inside another Chapter/Subsection component.
Image. Inserts an image into the report. The Image component can have the Chapter/Subsection or Paragraph component as its parent.

Link. This component inserts a link or anchor into the report. The Link component should have the Paragraph component as its parent. If you select Anchor in the Link Type drop box, then the Link component can also have the Chapter/Subsection component as its parent.

List. This component inserts a bulleted or numbered list into the report. The List component must have the Chapter/Subsection or Paragraph component as its parent.

Paragraph. This component inserts a paragraph into the report. The Paragraph component must have the Chapter/Subsection component as its parent. The Paragraph component can have subcomponents, or it can have text. Text must be entered in the Paragraph Text parameter field.

Text. This component inserts text into the report. The Text component should have the Paragraph component as its parent unless you check the Take section title from the first subcomponent? check box in the Chapter/Subsection component; in this case, the Text component can have the Chapter/Subsection component as its parent.

Title Page. This component inserts a title page at the beginning of the report. The Title Page component should have the Report component as its parent and should be the first component that inserts information into the report. This component cannot have any children. If your report contains a title page, it should also contain Chapter/Subsection components.

Note:
The components discussed above are general classes of components; there are other components that act like the List, Paragraph, Text, Link, Image and Cell Table components. For example, the Block Execution Order component behaves like the List component, the Graphics Figure Snapshot component behaves like the Image component, the Simulink property table components behave like the Cell Table component, etc.


Cell Table (Report Generator)

Cell Table

Component

Cell Table

Category

Formatting

Description

The Cell Table component converts a rectangular cell array into a table and inserts the table into the report.

Attributes

This is the Cell Table attribute page.

Note:
To view the component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Create table from MxN cell array with workspace variable name
Enter the name of the cell array that will be used to create the cell table.

Formatting Options

Table title
Enter the title of your table. If you have a title for a table, it is included in the List of Tables if the stylesheet you chose in the Report Options attribute page supports it. See "Report Format and Stylesheets" in Chapter 2 to find stylesheets that have a List of Tables.
Cell alignment
Select a cell alignment option (left, center, right or double justified).
Table grid lines
Select this option if you want to have grid lines in your table. Grid lines create borders between the fields.
Table spans page width
Select this option if you want the table to have the same width as the page on which it appears.
Rotate table 90 degrees
Select this option to rotate the table 90 degrees.

Header/Footer Options

Designating a row as a header or footer row causes the contents of the row to be displayed in boldface.

Number of header rows
Enter the number of header rows (from the top): 0=none, 1= 1 row from top, 2 = two rows from the top, etc.
No footer
If you do not want a footer, select No footer.
Footer is the same as header
Select this option to create a footer that is identical to the header.
Last N rows of cell array are footer
If you want to select a footer that is different from your header, then select Last N rows of cell array are footer and enter the number of footer rows (from the bottom) in the corresponding field: 0 = none, 1 = one row from bottom, 2 = two rows from the bottom, etc.

Example

For example, if you have the following cell array in the MATLAB workspace:

    {'foo','bar';[3],[5]}
then the resulting cell table has the following appearance.

foo | bar
3 | 5

Note that in this example, the table has no headers or footers and no title. The table does have grid lines.

Insert anything into report?

Yes. Table.

Filename

cfrcelltable


Chapter/Subsection (Report Generator)

Chapter/Subsection

Component

Chapter/Subsection

Category

Formatting

Description

The Chapter/Subsection component groups portions of the report into sections. Each section has a title and some content. The following rules apply to the Chapter/Subsection component:

  • Children of the Chapter/Subsection component are placed inside the section created by this component.
  • The Chapter/Subsection component takes paragraph-level children unless you check the Take section title from the first subcomponent? check box. In this case, a Chapter/Subsection component's first child must be a Text component.
  • The Chapter/Subsection component can be the child of another Chapter/Subsection component.
Sections can be nested and titles will automatically become smaller inside sub-sections. There are seven levels of nesting possible:

    Chapter
    Section 1
        Section 2
            Section 3
                 Section 4
                     Section 5
                         Section 6
                                  No Section
Any Chapter/Subsection components beyond the sixth section do not create a titled section, although the subcomponents of these sections do insert information into the report.

Chapter Numbering

By default, chapters are numbered and sections are not numbered. Chapter and section numbering are specified by the stylesheet you choose in the Report Options attribute page. See Report Format and Stylesheets in Chapter 2 for chapter and section numbering options inWeb and Print stylesheets.

Attributes

This is the Chapter/Subsection attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Section Title

Get title from first subcomponent
Select this option if you want to take the title of the section of the first subcomponent. If you choose this option, the title is taken from the first subcomponent and section content is drawn from the second subcomponent until the end of the subcomponent list. The first subcomponent should be a Text component.
Specify title:
If you do not want to get the title from the first subcomponent, then enter the title in this field. You can enter %<VariableName> if you want to insert the value of a variable from the MATLAB workspace. Please see "%<VariableName> Notation" in the Text component reference page.

Section Type

The item in boldface shows you what level the selected section is residing in.

For example, if you have the following in the setup file outline

    Chapter/Subsection
    Paragraph
    Text
    Chapter/Subsection
        Paragraph
        Text
And you select the second Chapter/Subsection component, the Section Type hierarchy field will look like this:

    Chapter
    Section 1
        Section 2
            Section 3
                 Section 4
                     Section 5
                         Simple Section
                                  No Section
Section 1 appears in boldface to indicate the nesting level of the selected Chapter/Subsection component.

Insert anything into report?

Yes. Chapter or section.

Filename

cfrsection


Image (Report Generator)

Image

Component

Image

Category

Formatting

Description

The Image component inserts an image from an external file into the report. The Image component can have the Chapter/Subsection or Paragraph component as its parent. If the Paragraph component is its parent, then the Insert as inline image check box must be checked.

Attributes

This is the Image attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Image filename:
Enter the image filename in this field or use the browse button (...) to find the file that contains the image.
Make sure that the image is in a format that your viewer can read. Your viewer depends on the report format you selected in the Report Options page in the Setup File Editor. See "Report Format and Stylesheets" in Chapter 2 for a discussion on report format options.

Display Options

Image Title
Choose one of the following title options:
  • No title: Select this option if you do not want an image title.
  • Title: Select this option and type in the image title in the corresponding field if you want an image title that is not the same as the image file name.
  • Title from filename: Select this option if you want the image title to be the same as the image filename.
Insert as inline image
Select this option if you want to insert an inline image in a paragraph. To make this a valid option, the Image component must have the Paragraph component as its parent and text components as its peers.
Example: If the following components are included in a setup file,
        paragraph
        text - "This is an example of an inline image."
        text - "This is an example."
        image - *image.jpg*
        text - "This is an example of an inline image."
and you select the Insert as inline image option, the report would contain the following paragraph:
        This is an example of an inline image. This
    is an example. *image.jpg* This is
    an example of an inline image.
If you do not select the Insert as inline image option, then the report would contain the following paragraph (notice that the image is not inline):
        This is an example of an inline image. This
    is an example.
    *image.jpg*
    This is an example of an inline image.
Copy image to /rptimages directory
Select this option to copy the image to the /rptimages directory. This option creates a relative link from the report to the copied image in the /rptimages directory. You should use this option:

  • If you generate your report in SGML format and then want to produce the report in multiple formats
  • If you intend to move your report from one directory to another
The /rptimages has the same parent directory as the report. You specify this in the Directory: option in the Report Options page in the Setup File Editor. See "Specifying the Directory for the Report File" in Chapter 2 for a discussion of the Directory: option.

Image Preview

The Image Preview frame shows the image that you specify in the Image file name field. You cannot preview postscript images or image with formats that are not supported by the imread function, such as .gif.

If you click on the image in the Image Preview frame, it is displayed in full size on the screen.

Insert anything into report?

Yes. Image.

Filename

cfrimage


Link (Report Generator)

Link

Component

Link

Category

Formatting

Description

The Link component inserts linking anchors or pointers into the report.

Attributes

This is the Link attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Link type
Select the type of link to insert into the report:
  • Anchor: An anchor is the object to which something links; i.e., links "link" to an anchor.
  • Link: A link takes you to the location in your report (specified by an anchor) to which it points when you click on it.
  • External link (Web URL): A URL link is a link to a Web site. It takes you to the location on the Web to which your link points when you click on it.

Anchor ID

The anchor ID options are context-sensitive and change depending on the link type selected above. The anchor ID marks the location to which the link points. The anchor ID is not visible in the report.

Anchor ID to create
This option is available when you select Anchor as the Link type. Enter the anchor ID. The anchor ID should be an alphanumeric string, e.g., my_document_mfile3.
The anchor ID should be unique; if you choose an anchor ID that is already defined in your report, any links that point to this anchor ID may not link to the correct location.
Anchor ID to reference
This option is available when you select Link as the Link type. Enter the anchor ID to which the link points. Make sure you have another link component that is an anchor with the same ID as you are specifying in this field; otherwise, the link will not point to anything.
Web URL (http://) to link
This option is available when you select External Link (Web URL) as the Link type. Enter the URL to which the link points.
For example, to create a link to the Web site for The MathWorks, Inc., enter http://www.mathworks.com.

Link Text

The Link Text options change depending on the link type selected above.

Link text (optional for link type Anchor)
This option is available when you select Anchor as the Link type. The text that you enter in this field appears next to the location to which the link points. i.e., the anchor is located next to this text.
Link text (required for link type Link)
This option is available when you select Link as the Link type. Enter the text that serves as the link. When you click on this text, you will go to the location in your report to which the link points.
Link text (required for link type Web URL)
This option is available when you select External Link (Web URL) as the Link type. Enter the text that serves as the link. When you click on this text, you will go to the Web location to which the link points.
Emphasize link text
Select this option to italicize the link text.

Insert anything into report?

Yes. Text.

Filename

cfrlink


List (Report Generator)

List

Component

List

Category

Formatting

Description

The List component creates a bulleted or numbered list from a cell array or from subcomponents.

Attributes

This is the List attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Create list from cell array with workspace variable name
Enter the name of the 1-by-n or n-by-1 cell array from which the list will be created in this field. This option is not available when this component has subcomponents, since the list is then automatically generated from the subcomponents.

Formatting Options

    List title
Enter the title of the list in this field.
Spacing
Select either Compact spacing or Normal spacing.
List style
Select either Bulleted list or Numbered list. If you choose Numbered list, then you can select numbering options in the Numeration Options section.

Numeration Options

Numbering Style
Select a numbering style in this pull-down menu if you selected Numbered List for the List style. The options are:
  • 1,2,3,4,...
  • a,b,c,d,...
  • A,B,C,D,...
  • i,ii,iii,iv,...
  • I,II,III,IV,...
Show parent number in nested list (1.1.a)
Select this option to show all level numbers in a nested list. You can create a nested list by putting one cell array inside another or by nesting one List component inside another. If you choose this option, your list will have this type of appearance (the actual appearance depends on the numbering style chosen in Numeration Options):
    1. Example
2. Example
    2.1. Example
    2.2. Example
        2.2.a. Example
        2.2.b. Example
3. Example
Note that this option is not available if you select the Show only current list value (a) option.

Show only current list value (a)
Select this option to show only the current list value. If you choose this option, the list shown above will have this type of appearance (the actual appearance depends on the numbering style chosen in Numeration Options):
    1. Example
2. Example
    1. Example
    2. Example
        1. Example
        2. Example
3. Example
Note that this option is not available if you select the Show parent number in nested list (1.1.a) option.

Continue numbering from previous list
Select this option to continue list numbering from a previous list. Note that this option is not available if you select the Always start at 1 option.
Always start at 1
Select this option to always start list numbering at 1. Note that this option is not available if you select the Continue numbering from previous list option.

Example1: Creating a Nested List

You can create a nested list by putting one cell array inside another or by nesting one List component inside another.

For example, if you have the following setup file, with one List component nested inside another List component:

    [-] Report - Unnamed.rpt
   [-] Bulleted list from subcomponents
      [ ] Text - sky
      [ ] Table - varname
      [ ] Image - test.jpg
      [ ] Text - grass
      [-] Bulleted list from subcomponents
         [ ] Text - clouds
         [ ] Text - sun
      [-] Paragraph - information
Then the report would contain the following bulleted lists:

  • sky
  • Table from variable - varname
  • Snapshot of image - test.jpg
  • grass
  • clouds
  • sun
  • information

Example 2: Creating the Same List With Subcomponents and a Cell Array

Setup file with subcomponents:

       [-] Report - Unnamed.rpt
      [-] Bulleted list from subcomponents
         [ ] Text - red
         [ ] Text - green
         [ ] Text - blue
Setup file calling a cell array:

    [-] Report - Unnamed.rpt
   [-] Bulleted list from cell array called colors
Cell array:

    colors={'red','green','blue'}
Using either of these two setup files, the report contains the following bulleted list:

  • red
  • green
  • blue

Insert anything into report?

Yes. List.

Filename

cfrlist


Paragraph (Report Generator)

Paragraph

Component

Paragraph

Category

Formatting

Description

The Paragraph component inserts a paragraph into the report. The paragraph text is taken from a child text component or from text that you enter in the Paragraph Text field.

Attributes

This is the Paragraph attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Title Options

No paragraph title
Select this option if you do not want the paragraph to have a title.
Get title from first subcomponent
Select this option if you want the title of the paragraph to be taken from the first subcomponent. You must select the Paragraph has a title check box to use this check box.The first subcomponent should be a Text component.
Specify title:
Select this option and enter the title of the paragraph in this field if you do not want the title to come from the first subcomponent.

Paragraph Text

Enter paragraph text in this field. If the Paragraph component has subcomponents, then the paragraph content is taken from the subcomponents. Otherwise, the Paragraph component inserts text from this field.

If the Paragraph component does not have any subcomponents and you do not enter any text in this field, then the Paragraph component will not insert anything into the report.

Note that you can use the %<VariableName> notation in this field if you want to insert the value of a variable from the MATLAB workspace. Please see "%<VariableName> Notation" in the Text component reference page

Insert anything into report?

Yes. Can be text, an image, etc.; depends on subcomponents.

Filename

cfrparagraph


Text (Report Generator)

Text

Component

Text

Category

Formatting

Description

The Text component inserts and formats text into your report. The text component should have the Paragraph component as its parent.

Attributes

This is the Text attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Text to include in report
Enter the text you want to include in your report in this field.

%<VariableName> Notation

You can enter %<VariableName> in this field (and in any field where the text appears blue) to include the value of a variable from the MATLAB workspace. You cannot enter more than one variable in the %<>. If you enter an invalid variable name, then the report will contain %<VariableName> instead of the value of the variable.

Example 1

If you enter the following:

    I have a %<ObjName> and it has %<NumLeaves> leaves. The word
'%<ObjName>' has %<size(ObjName)> letters.
and if ObjName='plant' and NumLeaves=3 in the MATLAB workspace,

then the report will contain the following:

    I have a plant and it has 3 leaves. The word 'plant' has 5 letters.

Example 2

If you enter the following:

    %<help('peaks')>
then the report will contain the text that you get when you type help peaks at the command line.

Emphasize text
If you want to have the text appear italicized in the report, select this option.
Retain spaces and carriage returns
If you want to keep spaces and carriage returns in your text, select this option. If you do not select this option, the text will still insert one space any time you have one or more spaces; it will not keep any carriage returns.

Insert anything into report?

Yes. Text.

Filename

cfrtext


Title Page (Report Generator)

Title Page

Component

Title Page

Category

Formatting

Description

The Title Page component creates and inserts a title page at the beginning of the report.

Attributes

This is the Title Page attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

All of the text fields in this attribute page can contain the %<VariableName> notation. See "%<VariableName> Notation" in the Text component reference page.

Title
Enter the title of the report in this field. The title will appear in large font.
Subtitle
Enter the subtitle in this field. The subtitle will appear under the title, in a smaller font than the title.
Author
Enter the author in this field. The author will appear under the subtitle, in a smaller font than the subtitle.
Include date report was created
Select this option if you want to include the report creation date and choose the date format in the corresponding drop box.
Include copyright information
Select this option to include copyright holder and year information.
Name of copyright holder
If you check the Include copyright information check box, enter the name of the copyright holder in the Name of copyright holder field.
Copyright year
If you check the Include copyright information check box, enter the copyright year in the copyright Year field.
For example, if you select Include copyright information and enter The MathWorks, Inc. in the Name of copyright holder field and enter 1998 in the copyright year field, the following will appear in your report:
        Copyright © 1998 by The MathWorks, Inc.
If you check the Include copyright information check box, and leave the Name of copyright holder field and the copyright year field empty, then the following will appear in the report:
        Copyright © by
Abstract
Enter the abstract for the report in this field. This is optional.
Legal notice
Enter the legal notice for the report in this field. This is optional.

Insert anything into report?

Yes. Title page.

Filename

cfr_titlepage


Handle Graphics Components (Report Generator)

Handle Graphics Components

Handle Graphics components report on Handle Graphics figures. Handle Graphics components have the following parent/child hierarchy:

Figure "For" Loop. The Figure "For" Loop component runs its children for each Handle Graphics figure that you select. If a Handle Graphics component does not have the Figure "For" Loop as its parent, then it operates on the current figure.

Figure Property Table. This component creates and inserts a property name/property value table for Handle Graphics figures. The Figure Property Table component behaves like the Cell Table component and expects the Graphics Figure "For" Loop component as its parent.

Graphics Figure Snapshot. This component inserts an image of a figure window into your report. The Graphics Figure Snapshot component behaves like the Image component and expects the Figure "For" Loop component as its parent.

Graphics Object Name. This component inserts the name of a Handle Graphics object into your report. The Graphics Object Name component behaves like the Text component and expects the Figure "For" Loop component as its parent.

Handle Graphics Parameter. This component inserts a single property/value pair from a Handle Graphics figure, axis, or any other Handle Graphics object into your report. The Handle Graphics Parameter component behaves like the Text component and expects the Figure "For" Loop component as its parent.

This is an example of how Handle Graphics components can be used in a setup file:

    Figure "For" Loop
    Section (take title from first subcomponent)
        Graphics Object Name
        Figure Property Table
        Graphics Figure Snapshot
        Paragraph
                 Text ("My Parameter")
                 Handle Graphics Parameter


Figure "For" Loop (Report Generator)

Figure "For" Loop

Component

Figure "For" Loop

Category

Handle Graphics

Description

The Figure "For" Loop component applies each subcomponent to graphics figures specified in the attribute page.

See "Using the Handle Graphics Figure "For" Loop: A Tutorial" in Chapter 3 for a thorough, tutorial-based discussion of this component.

Attributes

This is the Figure "For" Loop attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Choosing Figure to Loop On

You can choose to loop on:

  • The current figure
  • All visible figures
  • Figures with certain tags
Current figure only
To include only the current figure in the report, select the Current figure only option.
Visible figures
To loop on all visible figures, select the Visible figures option. This option executes subcomponents for all figures that are currently open and visible.
The Data figures only option is checked by default and excludes figures with HandleVisibility = 'off' from the loop.
All figures with tags:
To loop on figures with certain tags, select the All figures with tags: option. When you are selecting a tag, all figures with that tag are included, regardless of whether the figure is visible or whether HandleVisibility is 'on' or 'off'.
The tag list box (located under the All figures with tags: option) shows the selected tags. To add a tag to the tag list box, select the tag from the drop box on the right and click on the Add button, shown below.

The tag drop box shows a list of tags for figures that are open. If you want to add a tag that does not appear in the tag drop box, you can type in the tag. To type in a tag, select Enter tag in edit field and type in the name of the tag in the edit field below the tag drop box.

Loop Figure List

The Loop Figure List shows you what figures are looped on.

Note:
If your setup file generates new figures or changes existing figures, then the figures in the Loop Figure List will not be the figures that are actually reported on.

To see a figure in the Loop Figure List, click on the name of the figure. That figure becomes current and comes to the foreground.

If you click on the name of an invisible figure, the figure becomes visible for a moment.

Insert anything into report?

No.

Filename

chgfigloop


Figure Property Table (Report Generator)

Figure Property Table

Component

Figure Property Table

Category

Handle Graphics

Description

The Figure Property Table component inserts a table that reports on property name/property value pairs.

See Chapter 3 for a tutorial on the Figure Property Table.

Attributes

This is the Figure Property Table attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Selecting a Preset Table

A preset table is a table that is already formatted and set up. You can select a preset table in the preset table drop box in the upper left-hand corner of the attributes page. To apply a preset table, select the table and click on the Reset button. Note that the Reset button is only active when you select a preset table.

Custom Tables

To create a custom table, you can first select a preset table and then edit it. You may want to start with the Blank 4x4 preset table. You can add and delete rows and you can add properties.

If you want to use a custom table in more than one setup file, use Copy Component and Paste Component from the Edit menu to copy the custom table from one setup file to another. You cannot save a custom table as a preset table. If you create a table and then select a preset table, all your changes will be lost once you click on the Reset button.

Split Property/Value Cells

To have the property name and property value appear in adjacent horizontal cells in the table, select the Split Property/Value Cells check box. In this case, the table is in "split" mode and there can only be one property name/property value pair in a cell. If you have more than one pair in the cell in the Setup File Editor, then only the first pair is displayed in the report; all subsequent pairs are ignored.

To have the property name and property value appear together in one cell, deselect the Split Property/Value Cells. This is the "non-split" mode. In the non-split mode, you can have more than one property name/property value pair and you can also have text.

If you want to switch from the non-split mode to the split mode, make sure that you only have one property name/property value pair per table cell before you switch modes. If you have more than property name/property value pair or any text, then only the first property name/property value pair appears in the report; subsequent pairs and text are omitted.

Display Options

Each table cell in the report can display a property name/property value pair in one of several ways. To select how a property name/property value pair is displayed in a table cell in the report, select that cell and then choose the one of the following display formats shown in the table below from the drop box at the bottom of the attributes page.

Display Option | "Split" Mode | "Non-Split" Mode
Value |  |
Property Value |  |
Property Value (note: this is shown as PROPERTY value on the attributes page) |  |
Property: Value |  |
Property: Value |  |
Property - Value |  |
Property - Value |  |

You can also right-click on the table to invoke the context menu, select Cell rendering, and then choose a display format from the menu. Note that in the above table, the cells are center-justified. The next section discusses justification options.

Justification Options

The text in each cell can appear in the report in one of four ways, using the corresponding justification button. These options are shown in the table below (note that the Property Value display option is shown here).

You can also right click on the table to invoke the context menu, select Cell justification, and select a display format (Left, Center, Right, or Double justify) from the menu.

:

Option | Button | "Split" Mode | "Non-Split" Mode
Left- justified |  |  |
Centered |  |  |
Right- justified |  |  |
Double- justified |  |  |

Putting Text in a Table Cell

You can type text in a table cell in the Setup File Editor. The text appears in the report as long as you are in the non-split mode.

To enter text in a cell, double-click on the cell. When a gray box appears in the cell, you are in the edit mode; enter text in the box. To exit the edit mode, press the Esc key.

In the edit mode, %<PropertyName> appears in the gray box. If you type text outside the %<>, then it will appear as text in the report. If you type text inside the %<>, it should be a valid property name. If you type an invalid property name, then that property name will appear in the report without a property value.

For example, if you choose to display the property name/property value pair as value, and enter the following in a table cell in the attribute page:

    My title: %<Name> is visible=%<visible>
and the value of Name is 'Membrane' and the value of visible is 'on', then the following table cell appears in the report if the cell is in the non-split mode.

If the table is in the split mode, then the following table cells appear in the report.

Title

The table has a title that you can edit. The title of the table can contain properties and text. To enter text, double click on the title, and enter text in the gray box.

If you have a title for a table, it is included in the List of Tables if the stylesheet you chose in the Report Options attribute page supports it. See "Report Format and Stylesheets" in Chapter 2 to find stylesheets that have a List of Tables.

Adding Properties

To add a property name to a cell in the Setup File Editor, follow these steps:

1.
Select the desired cell
2.
Choose the type of property name from the type of property drop box on the right side of the attributes page. The property drop box acts like a filter by listing properties by category.

    If you want to choose from all properties associated with a Handle Graphics figure, choose All properties in the type of property list box.

3.
Choose the desired property name from the property list box
4.
Double-click on the property name or use Add button
In the non-split mode, the steps shown above will add a new property to a table cell, in the split mode, they will replace the existing property with the new property.

If you know the name of the property, you can also type the property name in the cell as %<PropertyName>. If you enter a property name that is not valid, then nothing will appear for the corresponding value in the table.

Note:
The attributes page in the Setup File Editor does not display text wrapping inside a cell, but when the report is created, the text inside a cell will wrap.

Replacing or Deleting Properties

In the non-split mode, you can replace a property in a table cell in the Setup File Editor by following the instructions in "Putting Text in a Table Cell". You can delete a property by selecting it and either backspacing over it or pressing the Delete key.

Changing Table and Cell Borders

You can toggle the table and cell borders in the property table by using the context menu. To invoke the context menu, place your cursor over the table and click on the right mouse button.

To toggle border of the table on or off, invoke the context menu and select Table frame.

To toggle any cell border on or off, place your cursor in the desired cell and invoke the context menu. Choose Cell borders and then Top, Bottom, Right, or Left to toggle the selected border on or off.

Adding and Deleting Columns and Rows

To add or delete a column or row, select a cell, and then click on one of the four buttons shown in the table below.

Action | Button
Add column (added to the right of the selected column) |
Delete column |
Add row (added below the selected row) |
Delete row |

You cannot delete a row or column when it is the only row or column in the table, respectively.

Resizing Columns

To resize the column width, click and drag the horizontal border between cells.

Zooming and Scrolling

You can zoom in to and out of the table with the zoom buttons, located to the left of the horizontal scroll bar. These are shown in the table below.

Zoom Option | Button
Zoom in |
Zoom out |

You can scroll vertically and horizontally with the corresponding scroll bars around the table.

Example

The table below is an example of a Handle Graphics figure property table. It is the Graphics preset table.

BackingStore | on | DoubleBuffer | off
RendererMode | auto | Renderer | zbuffer
MinColormap | 64 | ShareColors | on
Visible | on | Clipping | on

Insert anything into report?

Yes. Table.

Filename

chgfigproptable


Graphics Figure Snapshot (Report Generator)

Graphics Figure Snapshot

Component

Graphics Figure Snapshot

Category

Handle Graphics

Description

The Graphics Figure Snapshot component inserts a snapshot of a Handle Graphics figure.

Attributes

This is the Graphics Figure Snapshot attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Image file format
Choose the image file format (e.g., JPEG, TIFF, etc.,) from this drop box. To automatically choose the format best suited for the output format that you chose in the Report component, select Automatic, which is the default option. Otherwise, make sure that you choose an image format that your output viewer can read.

Print Options

Use the attributes in this section to set printing parameters.

Capture picture from screen
Use the check box to capture a figure from the screen.
Paper orientation
You can choose Landscape or Portrait as your paper orientation, or you can choose the Use figure orientation option. This option uses the PaperOrientation parameter of the Handle Graphics figure. See Using MATLAB Graphics for a discussion of the PaperOrientation parameter.
Image size
Select the Use figure PaperPositionMode setting to use the PaperPositionMode parameter of the Handle Graphics figure to set the image size in the report. See Using MATLAB Graphics for a discussion of the PaperPositionMode parameter.
Select the Automatic (same size as on-screen) option if you want the image in your report to be the same size as the image on the screen.
Select the Manual option to choose a custom image size. If you choose this option, specify the image size in the Size field and Units drop box.
  • Size: Enter the size of the Handle Graphics figure snapshot in the form wxh (width times height). This field is active only if you choose Manual in the Image size list box.
  • Units: Enter the units for the size of the Handle Graphics figure snapshot. This field is active only if you choose Set image size in the Manual list box.
Invert hardcopy
Handle Graphics figures have an InvertHardcopy parameter. This parameter inverts colors for printing; i.e., it changes dark colors to light colors and vice versa. For more information, see Using MATLAB Graphics.
Select one of the following options:
  • Automatic - Select this option to automatically change dark axes colors to a light axes color. If the axes color is a light color, then it will not be inverted.
  • Invert - Select this option to change dark axes colors to light axes colors and vice versa.
  • Don't invert - Select this ooptionif you do not want to change the colors in the image displayed on the screen for printing.
  • Use figure's InvertHardcopy setting - Select this option to use the InvertHardcopy parameter set in the Handle Graphics image.

Insert anything into report?

Yes. Image.

Filename

chgfigsnap


Graphics Object Name (Report Generator)

Graphics Object Name

Component

Graphics Object Name

Category

Handle Graphics

Description

The Graphics Object Name component inserts the name of a Handle Graphics object as text into the report.

You can use this component to create a section title based on the current figure. First, make sure that this component is the first subcomponent of a Chapter/Subsection component. Then select the Get title from first subcomponent option in the Chapter/Subsection component.

Attributes

This is the Graphics Object Name attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Show Name of Current:

Select Figure to show the name of the current Handle Graphics figure. The name of the current figure comes from the first nonempty figure parameter in the following order:

  • Name
  • Tag
  • FileName
  • Handle
Select Axes to show the name of the current axes. The name of the current axes comes from the first nonempty axes parameter in the following order:

  • Title
  • Xlabel
  • Ylabel
  • Zlabel
  • Tag
  • Handle
Select the Other Object option to take the name of the current object from the figure's CurrentObject parameter and its first nonempty figure parameter in the following order:

  • uicontrol
    • String
    • Style
    • Handle
  • uimenu
    • Label
    • Accelerator
    • Tag
    • Handle
  • uicontextmenu, image, light, line, patch, or surface
    • Tag
    • Handle
  • text
    • String
    • Tag
    • Handle
See Using MATLAB Graphics for a discussion of the CurrentObject parameter.

Render Name As:

Select one of the four options listed below to display the Handle Graphics object name in the report:
  • Name (example: Name)
  • Type Name (example: Axes Name)
  • Type - Name (example: Axes - Name)
  • Type: Name (example: Axes: Name)

Insert anything into report?

Yes. Text.

Filename

chgobjname


Handle Graphics Parameter (Report Generator)

Handle Graphics Parameter

Component

Handle Graphics Parameter

Category

Handle Graphics

Description

The Handle Graphics Parameter component inserts a single
property name/property value pair from a Handle Graphics figure, axes, or other object.

Attributes

This is the Handle Graphics Parameter attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Object Type

Select a Handle Graphics object to report on:

  • Select Figure to insert a figure's property name/property value pair.
  • Select Axes to insert an axes' property name/property value pair.
  • Select Object to insert an object's property name/property value pair.

Figure Property

Choose the type of property you want to include from the drop box in this section. All shows every parameter for the current object.

Select the property you want to include in the report from the list box in this section.

Render As

Select one of the three options listed below to control how the Handle Graphics object name displays in the report:

  • Value - displays the value of the property only (e.g., if the name of the property is Tag and the value of the property is red, only red is displayed)
  • Property: Value - e.g., Tag: Red
  • PROPERTY Value - displays the name of the property in italics and the value of the property in regular text (e.g., Tag Red)

Insert anything into report?

Yes. Text.

Filename

chgproperty


Logical and Flow Components (Report Generator)

Logical and Flow Components

Logical and Flow components execute conditionally, enabling you to decide when a subcomponent will execute or how many times a subcomponent will execute.

Logical and Flow components have the following parent/child relationships:

For Loop. This component iteratively runs its child components. The For Loop component must have at least one child. The purpose of this component is to run its children several times. If it does not have any children, then this component does not add anything to the report.

While Loop. This component loops while a workspace expression is true. This component runs its subcomponents until its conditional string is true. The number of repetitions can be limited to prevent infinite loops. Similar to the For Loop component, the While Loop component must have at least one child. If it does not have any children, then this component does not add anything to the report.

The "If" Family. There are three possible ways in which you can use the "If" family components.

Components Used
 Appearance in the Outline
 How the Components Execute
Logical If
 if

    When the if condition is true, this component will run its children.
Logical If, <if> then, <if> else
 if
    then
else
    • When the if condition is true, only the children of the then component will run and the process will exit the if family.
    • When the if condition is false, only the children of the else component will run.
Logical If, <if> then, <if> elseif, <if> else
 if
    then
elseif
elseif
.
.
.
    else
    • When the if condition is true, only the children of the then component will run and the process will exit the if family.
    • When the if condition is false, the process checks all the elseif statements in order, and the children of the first true elseif statement will run. The process will then exit the if family.
    • If none of the elseif statements is true, the process runs the children of the else statement.
Note that only one of the conditional statements (then, else, elseif) will actually execute.


<if> Else (Report Generator)

<if> Else

Component

<if> Else

Category

Logical and Flow

Description

The <if> Else component acts as an else when it is the child of the Logical If component. There are two ways to use this component:

    if
    then
    else
or

    if
    then
    elseif
    elseif
       .
       .
       .
    else
For an explanation of how the above cases execute, see the introduction to Logical and Flow Components at the beginning of this section.

Attributes

This is the <if> Else attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

If "else" has no subcomponents, display this string:
When the <if> Else component has no subcomponents, the string in this field is printed in your report. In this case, this component acts like the Text component.

Insert anything into report?

Depends on whether if or elseif statements are true.

Filename

cloelse


<if> Elseif (Report Generator)

<if> Elseif

Component

<if> Elseif

Category

Logical and Flow

Description

The <if> Elseif component acts as an elseif when it is the child of the Logical If component. You must use this component in this format:

    if
    then
    elseif
    elseif
       .
       .
       .
    else
For an explanation of how the above case executes, see the introduction to Logical and Flow Components at the beginning of this section.

Attributes

This is the <if> Elseif attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Run subcomponents if this string is true in the base workspace:
When the statement in this field is true, the <if> Elseif's subcomponents execute.
If "elseif" has no subcomponents, display this string:
When the <if> Elseif component has no subcomponents, the string in this field is printed in the report. In this case, this component acts like the Text component.

Insert anything into report?

Yes, only when parent if statement is false.

Filename

cloelseif


For Loop (Report Generator)

For Loop

Component

For Loop

Category

Logical and Flow

Description

The For Loop component iteratively executes its subcomponents and must have at least one subcomponent to execute properly. This component functions like the for loop in MATLAB, except that instead of executing a statement, it executes its subcomponents while the following loop is active.

    for varname=x:y:z
where varname must be a string that is valid as a variable name. x, y, z can be scalar numbers or workspace expressions that are evaluated in the workspace as scalar numbers. If any one of these is a string that cannot be evaluated as a scalar number, then the For Loop will not execute.

For example, if red is a workspace variable, the following is a valid for statement:

    for i=1:1:length(red)
length(red) is 3, which is a scalar number.

Attributes

This is the For Loop attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

for
Enter varname (as explained above) in the first field, and x:y:z (see above) in the next three fields.
Make value of FOR loop visible in workspace
Use this option to place the loop index (the value of the FOR loop variable) in the workspace while other components are executing.
Remove variable from workspace when done
Use this option to remove the loop index from the workspace. This option is only available if you selected the Make value of FOR loop visible in workspace option.

Insert anything into report?

No.

Filename

clofor


Logical If (Report Generator)

Logical If

Component

Logical If

Category

Logical and Flow

Description

The Logical If component acts as a logical if; it can have the <if> Then, <if> Elseif, and <if> Else components as its subcomponents. This component executes its subcomponents when the given workspace expression is true. It displays a specified string when it has no subcomponents. There are three ways to use this component.

    if
    then

or

    if
    then
    else

or

    if
    then
    elseif
    elseif
       .
       .
       .
    else
For an explanation of how the above cases execute, see the introduction to Logical and Flow Components at the beginning of this section.

Attributes

This is the Logical If attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Run subcomponents if this string is true in the base workspace:
When the statement in this field is true, the Logical If's subcomponents execute.
If "if" has no subcomponents, display this string:
When the Logical If component has no subcomponents, the string in this field is printed in your report.

Insert anything into report?

Depends on attributes.

Filename

cloif


<if> Then (Report Generator)

<if> Then

Component

<if> Then

Category

Logical and Flow

Description

The <if> Then component acts as a then when it is the child of the Logical If component. There are three ways to use this component:

    if
    then

or

    if
    then
    else

or

    if
    then
    elseif
    elseif
       .
       .
       .
    else
For an explanation of how the above cases execute, see the introduction to Logical and Flow Components at the beginning of this section.

Attributes

This is the <if> Then attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

If "then" has no subcomponents, display this string:
When the <if> Then component has no subcomponents, the string in this field is printed in your report. In this case, this component acts like the Text component.

Insert anything into report?

Yes, only when parent if statement is true.

Filename

clothen


While Loop (Report Generator)

While Loop

Component

While Loop

Category

Logical and Flow

Description

The While Loop component iteratively executes its subcomponents while the string specified in the attributes page is true. You can limit the number of repetitions to prevent infinite loops. The While Loop component must have at least one subcomponent; the purpose of this component is to run its subcomponents several times. If it does not have any subcomponents, this component does not add anything to the report.

Attributes

This is the While Loop attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

while
Enter the string to be evaluated in this field. This string should be a valid MATLAB expression that evaluates to be a 1 or 0 (true or false) in the workspace. For example, if a=1, b=2, and c=3 in the MATLAB workspace, and you enter the following at the command line
       d=(a>b/c)
then MATLAB returns the following:
       d = 1
Since a (1) is greater than b/c (2/3), this expression is true, and evaluates to be a 1.
Limit number of loops to
Use this option to prevent infinite loops. Use the left and right arrows to increase or decrease the number of loops.

Insert anything into report?

Yes, as long as it has subcomponents.

Filename

clo_while


MATLAB Components (Report Generator)

MATLAB Components

You can use MATLAB components to interact with the workspace. The following are MATLAB components:

Evaluate MATLAB Expression. This component evaluates a specified MATLAB expression. The result of the evaluation and/or MATLAB expression (M-code) can appear in the report.

Insert Variable. This component inserts a specified variable into the report. If you check the Represent variable as text only check box, then this component will act like a Text component, and should be inside a paragraph. If you do not check the Represent variable as text only check box, then this component will act like a Paragraph component, Text component, or Cell Table component, depending on the variable.

Variable Table. This component creates a table that includes all variables in the MATLAB workspace. The Variable Table component behaves like the Cell Table component.


Evaluate MATLAB Expression (Report Generator)

Evaluate MATLAB Expression

Component

Evaluate MATLAB Expression

Category

MATLAB

Description

The Evaluate MATLAB Expression component evaluates a specified MATLAB expression in the workspace. The code and/or command line output can be inserted into the report.

Attributes

This is the Evaluate MATLAB Expression attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Insert MATLAB expression string in report
Select this option if you want the MATLAB expression that is evaluated by this component to appear in the report.
Display command window output in report
Select this option if you want to include the command window output that results when the MATLAB expression is evaluated.
Expression to evaluate in the base workspace:
Enter the expression that you want to evaluate in the MATLAB workspace.
Evaluate this expression if there is an error:
Select this option if you want to evaluate another MATLAB expression if the evaluated expression produces an error. Enter the expression that should be evaluated in case of an error in this field.

Insert anything into report?

Inserts text if you select one of the following options:

  • Insert MATLAB expression string in report
  • Display command window output in report
Otherwise, this component does not insert anything into the report.

Filename

cmleval


Insert Variable (Report Generator)

Insert Variable

Component

Insert Variable

Category

MATLAB

Description

The Insert Variable component takes one of the following variables and inserts its value (and name, if you choose to do so) into the report:

  • A variable from the MATLAB workspace
  • A variable from a MAT-file
  • A global variable

Attributes

This is the Insert Variable attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Variable to Include

Variable location
Select one of the following options:
  • Workspace - this options gets a variable from the MATLAB workspace.
  • MAT-file - this option gets a variable from a binary file with a .MAT extension.
  • Global variable - this option gets a global variable.
Variable name
Enter the name of the variable in this field.
You can use %<VariableName> to insert the value of a variable from the MATLAB workspace. For example, if you enter the following expression in this field:
        %<my_variable>
And you have the following in your MATLAB workspace:
        my_variable='velocity'
    velocity=50
Then your report will contain the following:
        50
If you enter %<velocity> in this field, and your MATLAB workspace contains the same information, then your report will also contain 50.

Render Options

Name display
Select one of the options listed below to display the variable in the report:
  • Value - displays the value of the variable only (e.g., if the variable is velocity, and its value is 25, only 25 is displayed).
  • Name: Value - displays the variable name, followed by the value of the variable (e.g., Velocity: 25)
  • NAME Value - displays the variable name in italics, followed by the value of the variable (e.g., Velocity 25)
You can choose how the variable appears in the report in the first drop box in this section:

  • Choose Render variable as single-line text only to display the variable as text. If you select this option, this component will act like the Text component, and should have the Paragraph component as its parent.
  • Choose Render 1xN structures and non-character arrays as tables to display the variables that are in one of these forms as tables.
You can choose how a variable array appears in the report in the second drop box in this section:

  • Choose Show entire array to display the entire array in the report.
  • Choose Show large arrays as "[MxN CLASS]" to display large variable arrays as "[MxN CLASS]". For example, if you have a 300-by-200 double array, it will display in the report as [300x200 DOUBLE].

Insert anything into report?

Yes. Text.

Filename

cmlvariable


Variable Table (Report Generator)

Variable Table

Component

Variable Table

Category

MATLAB

Description

The Variable Table component creates and inserts a table that includes all variables in the MATLAB workspace. You can find all the variables in the MATLAB workspace by typing whos at the command line.

Attributes

This is the Variable Table attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Read variables from:
Select one of the following options:
  • Base workspace - select this option to read variables from the MATLAB workspace.
  • MAT-file - select this option to read variables from a binary file with a .MAT extension.

Display Options

Table title
Select one of the following options for the table title:
  • Automatic (Variables from MATLAB workspace) - select this option if you want the table title to be a variable name from the MATLAB workspace
  • Manual - select this option and enter the title in this field if you want a custom title for the variable table.
If you have a title for a table, it is included in the List of Tables if the stylesheet you chose in the Report Options attribute page supports it. See "Report Format and Stylesheets" in Chapter 2 to find stylesheets that have a List of Tables.

Columns in table
Select information to be contained in table columns:
  • Variable size (MxN) - select this option to include the size of the variable.
  • Variable memory bytes - select this option to include the number of memory bytes occupied by the variable.
  • Variable class - select this option to include the variable class.
  • Variable value - select this option to include the value of the variable. Note that large variable arrays are collapsed to "[MxN CLASS]". For example, if you have a 300-by-200 double array, it will display in the report as [300x200 DOUBLE].

Example

This is an example of a variable table that includes variable size, variable memory bytes, and variable value information in the table columns.

name | size | bytes | Value
aCell | 1x2 | 238 | { [ 1 2 3 4 ] Speed (kph) }
aNumber | 1x1 | 8 | 1
aString | 1x11 | 22 | Speed (kph)
aStructure | 1x1 | 302 | [struct w/ fields: Inputs, Outputs]
aVector | 1x4 | 32 | [ 1 2 3 4 ]

Insert anything into report?

Yes. Table.

Filename

cmlwhos


Report Generator Components (Report Generator)

Report Generator Components

Report Generator components are general "utility" components.

Empty Component. This component does not insert anything into the report and can have any component as a child. It can be used to group components together so that the components can be moved or activated/deactivated easily, or it can create a blank space in a list.

Import File. This component can do one of the following:

  • Import plain text from a file and insert the text into the report.
  • Import a Doc Book SGML document from a file and insert it into the report.
Nest Setup File. This component inserts a setup file at the point where the Nest Setup File component is listed in the current setup file. The Nest Setup File component allows one setup file (.rpt) to run inside another.

The components of the inserted setup file enter the current setup file at the level of the Nest Setup File component. Thus, the inserted components have the same parent component as the Nest Setup File component. You must make sure that the inserted components can have this parent component.

Time/Date Stamp. This component inserts the time and date of report generation. The Time/Date Stamp component behaves like the Text component; it must be inside a paragraph or title.


Empty Component (Report Generator)

Empty Component

Component

Empty Component

Category

Report Generator

Description

The Empty Component does not insert anything into the report and can have any component as a child. You can use it to group components together so that the components can be moved or activated/deactivated easily, or to create a blank space in a list.

If the Report Generator does not recognize a component when loading a setup file, it replaces the unrecognized component with the Empty Component.

Attributes

This is the Empty Component attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Insert anything into report?

No.

Filename

crgempty


Import File (Report Generator)

Import File

Component

Import File

Category

Report Generator

Description

The Import File component imports an ASCII text file.

Attributes

This is the Import File attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

File to Import

Enter the name of the file to import in the text field in this section or use the browse button (...) to find the file. This component executes only if you enter a valid filename in this field.

Import file as:
  • Plain text (ignore line breaks): Select this option to import the file as plain text without any line breaks (no paragraphs). If you select this option, the Import File component acts like the Text component and should have the Paragraph component as its parent.

    In this example and subsequent examples, the following text is used as the input file:

          This is the first row of text from the imported file.
        The second row follows a line break in the first row.

    There is a blank line above the third row.

    With the Plain text (ignore line breaks) option, the following is produced.

  • Paragraphs defined by line breaks: Select this option to import the file as text contained in paragraphs defined by line breaks (hard returns or carriage returns).

    With the Paragraphs defined by line breaks option, the following is produced.

  • Paragraphs defined by empty rows: Select this option to import the file as text contained in paragraphs defined by empty rows (rows that do not contain text).

    With the Paragraphs defined by empty rows option, the following is produced.

  • Text (retain line breaks): Select this option to import the file as plain text, including line breaks .

    With the Text (retain line breaks) option, the following is produced.

  • Fixed-width text (retain line breaks): Select this option to import the file as fixed-width text (all letters have the same width or size) including line breaks. This option is best suited for importing M-files.

    With the Fixed-width text (retain line breaks) option, the following is produced.

  • DocBook SGML: Select this check box if the inserted text file is in an SGML source file. If you select this option, the format of the inserted SGML file is not changed.

File Content

This field displays the first few lines of the file to be imported.

Insert anything into report?

Yes. Inserts text if you select one of the following options:

  • Plain text (ignore line breaks)
  • Text (retain line breaks)
  • Fixed-width text (retain line breaks)
Inserts paragraphs if you select on the following options:

  • Paragraphs defined by line breaks
  • Paragraphs defined by empty rows
Inserts the contents of the SGML file if you select the DocBook SGML option. This can include text, paragraphs, tables, etc.

Filename

crg_import_file


Nest Setup File (Report Generator)

Nest Setup File

Component

Nest Setup File

Category

Report Generator

Description

The Nest Setup File component runs another setup file at the point where the Nest Setup File component is listed in the current setup file. The Nest Setup File component allows one setup file (.rpt) to run inside of another.

The components of the inserted setup file enter the current setup file at the level of the Nest Setup File component. Thus, the inserted components have the same parent component as the Nest Setup File component. Make sure that the inserted components can have this parent component.

Attributes

This is the Nest Setup File attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Setup File to Run

Enter the name of the setup file to import and run in this field or use the browse button (...) to find the file. This component executes only if you enter a valid filename in this field.

Run mode
Select one of the following report options:
  • Embed new setup file's report in current report - Select this option to insert the nested report at the place in the original report where this component is located.
  • Create a separate report (insert nothing in current report) - Select this option to create two separate reports, one with the original setup file and one with the nested setup file. Note that this option has the same result as specifying the following expression in the Evaluate MATLAB Expression component:
             report <SetupFileName>
Description of selected setup file
This field contains the text from the Description field in the attribute page of the Report component. See "Report Description" in Chapter 2 for a discussion of the Description field in the Report component.

Example

In the example shown below, the Embed new setup file's report in current report option was selected. Setup file R2.rpt is being nested in R1.rpt.

    [-] Report - R1.rpt                [-] Report - R2.rpt
 [ ] Chapter                              [ ] 1
      [-] B                               [ ] 2
         [ ] Nest Setfile - R2.rpt       [-] Chapter
         [ ] C                              [ ] 4
      [ ] D                                 [ ] 5
The report will execute as if the original setup file looked like this:

        [-] Report - R1.rpt
      [ ] Chapter
      [-] B
         [ ] 1
         [ ] 2
         [-] Section 1
           [ ] 4
           [ ] 5
         [ ] C
      [ ] D
Components that determine their behavior from their parents such as Chapter/Subsection will be affected by components in the parent setup file (as shown above). See the Chapter/Subsection reference page for more details on the Chapter/Subsection component.

Insert anything into report?

Yes, but only if you select the Embed new setup file's report in current report option.

Filename

crgnestset


Time/Date Stamp (Report Generator)

Time/Date Stamp

Component

Time/Date Stamp

Category

Report Generator

Description

The Time/Date Stamp component inserts the time and date of the report generation into your report as text. It must have the Paragraph or Chapter/Subsection component as its parent.

Attributes

This is the Time/Date Stamp attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Include text before stamp:
Select this option to include text before the time/date stamp and enter the text in the corresponding field.

Time Stamp Properties

Include current time in stamp
Select this option to insert the current time in the time/date stamp.
Time Separator
Use this option to select a separation marker between hours, minutes and seconds. The following options are available for the separator:
  • Blank space ( ) - e.g., Hour Minute Second
  • Colon (:) - e.g., Hour:Minute:Second
  • Period (.) - e.g., Hour.Minute.Second
  • None () - e.g., HourMinuteSecond
Time display
Use this option to select the appearance of the time display. The following options are available:
  • 12-hour
  • 24-hour
Include seconds in time stamp
Select this option to display seconds in the time/date stamp.

Date Stamp Properties

Include current date in stamp
Select this option to insert the current date in the time/date stamp.
Date Order
Use this option to select the order in which the day, month and year should appear. The following options are available for this order:
  • Day Month Year
  • Month Day Year
  • Year Month Day
Date Separator
Use this option to select a separation marker between day, month and year. The following options are available for the separator:
  • Blank space ( ) - e.g., Day Month Year
  • Colon (:) - e.g., Day:Month:Year
  • Slash (/) - e.g., Day/Month/Year
  • Period (.) - e.g., Day.Month.Year
  • None () - e.g., DayMonthYear
Month display
Use this option to select the appearance of the month display. The following options are available for the display:
  • Long (December)
  • Short (Dec)
  • Numeric (12)
Year display
Use this option to select the appearance of the year display. The following options are available for the display:
  • Long (1998)
  • Short (98)

Stamp Preview

This field displays the time/date stamp as it will appear in the report.

Insert anything into report?

Yes. Text.

Filename

crgtds


Simulink Components (Report Generator)

Simulink Components

You can use Simulink components to include information on Simulink models in your report. Simulink components can report at four different levels of a Simulink model: model, system, block, and signal.

Simulink components have the following parent/child relationships.

Block Execution Order. This component creates and inserts a list or table of all blocks in the model (displayed in order by their execution sequence) into the report. The Block Execution Order should have the Model Loop component as its parent. If you place this component inside the System Loop component, you will get same list over and over again.

Block Loop. This component specifies which blocks are to be included in the report. The Block Loop component can have either the Model Loop, System Loop, or Signal Loop component as its parent.

Block Property Table. This component inserts a property name/property value pair table for the block specifies by the Block Loop component. The Block Property Table component expects the Block Loop component as its parent.

Block Type Count. This component counts the number of each block type in a model or system. The Simulink Block Type Count component can have either the Model Loop or the System Loop as its parent.

Model Functions. This component inserts a table that lists all of the functions used by blocks that are reported on in the current model. The Model Functions component expects the Model Loop component as its parent.

Model Loop. This component specifies which models and systems are to be included in the report.

Model Property Table. This component creates and inserts a property name/property value table for the model specified by the Model Loop component. The Model Property Table component has the Model Loop component as its parent.

Model Simulation. This component simulates the current Simulink model. The Model Simulation component expects the Model Loop component as its parent.

Model Variables. This component inserts a table listing all workspace variables used by blocks that are reported on in the current model. The Model Variables component expects the Model Loop component as its parent.

Object Linking Anchor. This component acts like a link in a paragraph or title; when there is a link that is being followed, the Object Linking Anchor shows the Report Generator where the link should go. This component can have any Simulink looping component as its parent.

Object Name. This component inserts the name of the current system, model, block or signal, according to the option you specify. The Object Name component can have any Simulink looping component as its parent. This component behaves like the Text component.

Object Property. This component inserts a single property name/property value pair for a Simulink object as text. The Object Property component can have any Simulink looping component as its parent. This component behaves like the Text component.

Object Summary Table. This component inserts a table that lists several Simulink objects and their properties. The Object Summary Table component can have the Model Loop as its parent if you are creating the table for systems, blocks, or signals. If you are creating the table for blocks and signals, then the System Loop component can be its parent.

Scope Snapshot. This component inserts a snapshot of all scope blocks and XY plots in your report. The Scope Snapshot component can have any Simulink Looping component as its parent.

Signal Loop. This component runs its subcomponents for each signal in its parent loop. The Signal Loop component can have the Model Loop, System Loop, or Block Loop component as its parent.

Signal Property Table. This component inserts a property name/property value table for the signal defined by the Signal Loop component. The Signal Property Table component has the Signal Loop component as its parent.

System Filter. This component runs its children only if certain conditions are met by the current system. The System Filter component expects the System Loop component as its parent.

System Hierarchy. This component inserts a list of the names of parent and child systems in the current model; child systems are shown indented under the parent systems. The Hierarchy component can have either the Model Loop or System Loop component as its parent.

System Loop. This component runs it subcomponents for each system defined in the Model Loop component. The System Loop component must have the Model Loop component as its parent.

System Property Table. Inserts a property name/property value table for the model specified by the Model Loop component. The System Property Table component behaves like the Cell Table component. This component expects the Model Loop or System Loop component as its parent.

System Snapshot. This component inserts an picture of the current system into the report. The current system is defined by the System Loop component.The System Snapshot component should have the System Loop component as its parent.


Block Execution Order (Report Generator)

Block Execution Order

Component

Block Execution Order

Category

Simulink

Description

The Block Execution Order component creates a list or table of all nonvirtual blocks in the model, showing the order in which they are executed. See Using Simulink for a definition and a list of virtual and nonvirtual blocks.

You must have Real-Time Workshop to use this component. If you do not have Real-Time Workshop, then this component does not insert anything into the report.

Attributes

This is the Block Execution Order attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Report Options

Link to:
This option provides a hyperlink to another block or system in your report.
If you click on this link, it will take you to the location in the report where the block or system is reported on. If there is no such place in the report, then a hyperlink is not created during the report generation process, even if you choose this option.
  • Choose No linking if you do not want any hyperlinks.
  • Choose Link to block's parent system if you want the hyperlink to link to the block's parent system.
  • Choose Link to block if you want the hyperlink to link to the block.
Include block type information
Select this option if you want to include each block's BlockType property in the list or table.

Display Options

Present list as
Choose Numbered list to create a numbered list.
Choose Table to create a table.
For example, if you have the following Simulink model or system named Demo_System,

Numbered list creates the following list (note that this list includes block type information, since that option was selected for this example).

1. Demo_System/A (Sin)

2. Demo_System/B (Gain)

3. Demo_System/C (ToWorkspace)

Table creates the following table.

Note that the Include blocktype information option is selected for the examples above.

List/Table title
Enter a title in this field if you want to have a title for the table or list. If you have a title for a table, it is included in the List of Tables if the stylesheet you chose in the Report Options attribute page supports it. See "Report Format and Stylesheets" in Chapter 2 to find stylesheets that have a List of Tables.

Insert anything into report?

Yes. List or table.

Filename

cslsortblocklist


Block Loop (Report Generator)

Block Loop

Component

Block Loop

Category

Simulink

Description

The Block Loop component runs its subcomponents for each block contained in the current system, model, or signal.

Attributes

This is the Block Loop attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Report On

This frame describes what the block loop is operating on:
  • If the Block loop has the Model Loop as its parent, it loops on all blocks in the current model.
  • If the Block loop has the System Loop as its parent, it loops on all blocks in the current system.
  • If the Block Loop has the Signal Loop as a parent, it loops on all blocks connected to the current signal.
  • If the Block Loop does not have either the Model Loop, System Loop, or Signal Loop as its parent, it loops on all blocks in all models.

Sort blocks

Use this option to select how the blocks are sorted:
  • Select Alphabetically by block name to sort blocks alphabetically by their names.
  • Select Alphabetically by system name to sort systems alphabetically.

    In this option, the systems are sorted alphabetically, and blocks in each system are listed, but in no particular order.

  • Select By block type to sort blocks alphabetically by block type.
  • Select By block depth to sort blocks by their depth in the model.
  • Select By simulation order to sort blocks by execution order. This option requires Real-Time Workshop; if you do not have Real-Time Workshop, this option will not appear in the attributes page.

Insert anything into report?

No.

Filename

csl_blk_loop


Block Property Table (Report Generator)

Block Property Table

Component

Block Property Table

Category

Simulink

Description

The Block Property Table component inserts a table that reports on block-level property name/property value pairs.

Attributes

This is the Block Property Table attribute page.

The Block Property Table component is similar to the Handle Graphics Figure Property Table component. See the Handle Graphics Figure Property Table component reference page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Example

The table below is an example of a block property table. It is the Default preset table. This property table is reporting on the Transfer Fcn. 2 block in the Aircraft Dynamics Model in the f14 demo model.

BlockType | TransferFcn | dialogparameters | Numerator Denominator
Parent | f14/Aircraft Dynamics Model | InputSignalNames | <2641.00024>
Description |  | OutputSignalNames | <2640.00024>

Insert anything into report?

Yes. Table.

Filename

csl_blk_proptable


Block Type Count (Report Generator)

Block Type Count

Component

Block Type Count

Category

Simulink

Description

The Block Type Count component counts the number of each block type in the current model or system. See Using Simulink for a description of block type.

Attributes

This is the Block Type Count attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Count Block Types

This frame describes where block types are being counted.
  • If the Block Type Count has the Model Loop as its parent, it reports all block types in the current model.
    • Use the All blocks in model option to count block types in the entire model.
    • Use the All blocks in reported systems option to count block types only in systems that are included in the report.
  • If the Block Type Count has the System Loop as its parent, it reports all block types in the current system.
  • The Block Loop and the Signal Loop are not valid parents for the Block Type Count.

Table Content

Table title
Enter the title of the table in this field.
Show block names in table
Select this option to include block names in the table.
Sort table
To sort blocks alphabetically by block type, select Alphabetically by block type.
To sort by decreasing number of occurrences, select By number of blocks.

Insert anything into report?

Yes. Table.

Filename

csl_blockcount


Model Functions (Report Generator)

Model Functions

Component

Model Functions

Category

Simulink

Description

The Model Functions component shows all top-level functions used by reported blocks in a Simulink model and enters each function name in a table.

Attributes

This is the Model Functions attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Include Functions

This context-sensitive frame shows that this component is reporting on functions in reported blocks in the current model.

Table Columns

Display BLOCK in which function appears

Select this option to include the parent blocks that contain the function.
Display STRING from which function was called

Select this option to include the M-code line that calls the function.

Table Display

Table title:
Enter the title of the table in this field.
Display table border
Select this option to insert a border around the table.

Example

The table below is an example of a model function property table. This model function table is reporting on the Dryden Wind Gust Models in the F14 demo model.

Function Name | Parent Blocks | Calling string
pi | f14/Dryden Wind Gust Models/Q-gust model , f14/Dryden Wind Gust Models/Q-gust model | pi/(4*b)*[1 0] [1 pi*Vto/(4*b)]
sqrt | f14/Dryden Wind Gust Models/W-gust model | Swg/sqrt(a^3)*[sqrt(3)*a,1]

Insert anything into report?

Yes. Table.

Filename

csl_functions


Model Loop (Report Generator)

Model Loop

Component

Model Loop

Category

Simulink

Description

The Model Loop component runs its subcomponents for all selected Simulink models and systems. The Model Loop component can run its subcomponents for a specific model, such as the demo model F14, or it can run its subcomponents for all models or the current model.

Because Simulink components are context-sensitive, they should be parented by the Model Loop (although the Model Loop does not have to be the immediate parent of some Simulink components).

Attributes

This is the Model Loop attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Choosing Models to Report On

You can report on:

  • The current model
  • All models that are currently open
  • A custom set of models and systems
The Model to Report column shows you what models are reported.

Reporting on the Current Model
If you want to report on the current model, click on the Current button.

To find out what the current model is, type bdroot in the MATLAB command window.

Reporting on All Models

If you want to report on all models that are currently open, click on the All button.

Reporting on Custom Models

If you want to report on a custom set of models and systems, click on the Custom button.

The Model to Report column, which contains a list of reported models, is initially empty. Type the name of the model in this column. Press the Esc key when you are finished.

To add another model to the list, click on the New button; an empty row will appear.

The following table shows you which button you should use to move a model up or down in the list, or to add or delete a model.

Use this button: | To do this:
 | To move a model up in the list
 | To move a model down in the list
 | To remove a model from the list
 | To add a model to the list

Choosing Systems to Report On

For each of the model reporting options (Current, All and Custom), you can select the systems that will be included in the report for each model. You can select the systems that are reported from the Systems to Report column.

Use this button | To do this
 | To report on all systems in the current model
 | To report on the current system in a model and all of its subsystems
 | To report on the current system only
 | To report on the current system and all the systems above it

You can also select the reported system through the context menu. To invoke the content menu, click on the right mouse button. The options shown in the table above are available through Set loop type in the context menu.

Specifying the Current System for the Reported Model

You can specify the current system in the reported model for the following reported systems:

  • Current system only
  • Current system and all the systems above it
  • Current system in a model and all of its subsystems
How to specify the current system for:

  • The current model: You can choose to report on the Top System or the Current System when you are reporting on the current model. Click on Top System or Current System in the Systems to Report column to toggle between the two systems. You can also choose between the two options by using the context menu.
  • All models: The current system for the All Models option is always the top system.
  • A custom model: You can choose to report on the top system or any other system when you are reporting on a custom model. You can also choose multiple systems.
    • Choosing a system: To select the current system for a custom model, click in the Systems to Report column. The Select "Current" Systems window appears (shown in the example below). You can also invoke this window by using the context menu and choosing Select current system(s).

      Select the system you want to include and click on OK. The system you select is now displayed in the Systems to Report column.

      For example, choose the custom model option and click in the Model to Report column. Type f14 in the Model to Report column. Choose to report on the current system and all the systems above it by clicking on the button shown below.

      Click in the Systems to Report column. The Select "Current" Systems window, shown below, lists all of the systems in the f14 model.

      Select f14/Controller and then click on Ok. The Systems to Report column now has the following entry: (f14/Controller). F14 and F14/Controller are included in the report.

    • Choosing multiple systems: To select multiple systems, hold down the Shift key and select the systems you want to report on. Click on Ok when you are done. The Systems to Report column now has the following entry: (Multiple).

      If you choose to report on multiple systems, and you are reporting on the current system, then the systems you have selected are included in the report.

      If you choose to report on multiple systems, and you are reporting on the current system and all the systems above it, then all the systems you have selected and all the systems above them are included in the report.

      If you choose to report on multiple systems, and you are reporting on the current system and all of its subsystems, then all the systems you have selected and all their subsystems are included in the report. The subsystems that are included in the report depend on the options you choose for following library links and for looking under masks. These two options are discussed in the next two sections.

Following Library Links

Simulink blocks and systems can be linked to a library. See Using Simulink for more information about library links.

Invoke the context menu to toggle the Follow library links option on and off.

The following table shows the options for reporting on blocks or systems with library links. Select the option by clicking on the option letter until it changes to the letter of your choice. These options are available if you are reporting on one of the following:

  • All systems in a model
  • The current system in a model and all of its subsystems
The options shown in the table below are also available through Follow library links in the context menu.

Select this option | To report on these systems
Y | Systems with library links
N | Systems without library links
U | Systems with unique library links (if you have more than one system with the same library link, only one of them is included in the report)

Looking Under Masks

Simulink systems can have masks. The masks can be functional or graphical. See Using Simulink for more information about masks.

The following table shows the options for reporting on masked systems. Select the option by clicking on the option letter until it changes to the letter of your choice. These options are available if you are reporting on one of the following:

  • All systems in a model
  • The current system in a model and all of its subsystems
The options shown in the table below are also available through Look under masks in the context menu

Select this option | To report on these systems
N | Systems with no masks
G | Systems with graphical masks Systems with no masks
F | Systems with functional masks Systems with graphical masks Systems with no masks
A | All systems
.

Note
If you choose Y to report on systems with library links and N to report on systems with no masks, then the report will not include most library blocks, since most library blocks tend to be masked.

Insert anything into report?

No.

Filename

csl_mdl_loop


Model Property Table (Report Generator)

Model Property Table

Component

Model Property Table

Category

Simulink

Description

The Model Property Table component inserts a table which reports on model-level property-value pairs.

Attributes

This is the Model Property Table attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

The Model Property Table is similar to the Handle Graphics Figure Property Table. See the Handle Graphics Figure Property Table for reference.

Note that if you do not have Real-Time Workshop, Summary Properties (req RTW) will not be listed in this drop box, since summary properties require Real-Time Workshop. If you are using a setup file that contains a summary property, then the property name appears in the report, but the property value does not.

Example

The table below is an example of a model property table. It is the Simulation Parameters preset table. This property table is reporting the F14 demo model.

Solver ode45 | ZeroCross on | StartTime 0.0 StopTime 60
RelTol 1e-4 | AbsTol 1e-6 | Refine 1
InitialStep auto | FixedStep auto | MaxStep auto
LimitMaxRows off | MaxRows 1000 | Decimation 1

Insert anything into report?

Yes. Table.

Filename

csl_mdl_proptable


Model Simulation (Report Generator)

Model Simulation

Component

Model Simulation

Category

Simulink

Description

The Model Simulation component runs the current model using the simulation parameters specified in the attributes page. This component should have the Model Loop component as its parent.

Attributes

This is the Model Simulation attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Time and I/O Options

Use model's workspace I/O variable names
Select this option to use the names of the variables specified in the Workspace I/O tab in the Simulation Parameters dialog box. For a description of these variables, see Using Simulink.
The following options are available if you do not select the Use model's workspace I/O variable names option:
  • Time - Enter a new variable name for the Time parameter in this field.
  • States - Enter a new variable name for the States parameter in this field.
  • Output - Enter a new variable name for the Output parameter in this field.
Use model's timespan values
Select this option to use the model's Start time and Stop time values specified in the Solver tab in the Simulation Parameters dialog box. For a description of these variables, see Using Simulink.
The following options are available if you do not select the Use model's timespan values option:
  • Start - Enter a new simulation starting time in this field.
  • Stop - Enter a new simulation ending time in this field.
Note:
If your model's stop time is set to inf (infinity) in Simulink or on this component's attribute page, then the Report Generator will terminate the model simulation after 60 seconds to prevent the report from generating for an infinite amount of time.

Simulation Parameters

The list box in this section of the attributes page contains all of the model's simulation parameters. To use these parameters, select Use model's simulation setting.

If you do not want to use these parameters, make sure that the Use model's simulation setting check box is not checked. Then click on the parameter you want to edit and type in the new parameter value in the field below the list box and next to the Use model's simulation setting check box.

Insert anything into report?

No.

Filename

cslsim


Model Variables (Report Generator)

Model Variables

Component

Model Variables

Category

Simulink

Description

The Model Variables component creates a table that shows all workspace variables used by reported blocks in a Simulink model. The current model and systems in which the blocks appear are specified in the Model Loop component.

For example, a Simulink Gain block might have a string x instead of a number. Simulink looks for a variable x in the workspace. See Using Simulink for more information.

Attributes

This is the Model Variables attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Include Variables

This context-sensitive frame shows that this component is reporting on variables in reported blocks in the current model.

Include workspace I/O parameters
Select this option to report on variables that contain parameters with time vectors and state matrices. These parameters are set in the Workspace
I/O tab in the Simulation Parameters dialog box in a Simulink model (see Using Simulink for more information.
In the following table, if any of the entries in the first column are "on," the component will look for the variable listed in the second column in the workspace. If the component finds it, it includes the variable in the report.

LoadExternalInput
ExternalInput
SaveTime
TimeSaveName
SaveState
StateSaveName
SaveOutput
OutputSaveName
LoadInitialState
Initial State
SaveFinalState
FinalStateName

Table Columns

The options in this section specify the information included in the table. The first column is always Variable Name.

Block in which variable appears
Select this option to include the name of the block that contains the reported variable. The title of this column is Parent Blocks.
String from which variable was called
Select this option to include the piece of M-code that calls the reported variable. The title of this column is Calling String.
Size of variable (MxN)
Select this option to include the size of the reported variable. The title of this column is Size.
Memory requirements (bytes)
Select this option to include amount of memory bytes the reported variable needs. The title of this column is Bytes.
Class of variable (double, string, etc.)
Select this option to include the variable class to which the reported variable belongs. The title of this column is Class.
Value in Workspace
Select this option to include the actual value of the reported variable. The title of this column is Value. Note that very large arrays may display as [MxN CLASS]. For example, if you have a 300-by-200 double array, it will display in the report as [300x200 DOUBLE].
RTW Storage Class
Select this option to include the storage class of the reported variable. The title of this column is Storage Class.
This option looks at the model's TunableVars property to see if any of the model variables specify their storage class. If the storage class is specified, then the model variables table displays TunableVarsStorageClass and TunableVarsTypeQualifier in a table column. The column entries are TunableVarsStorageClass (TunableVarsTypeQualifier) if TunableVarsTypeQualifier is not empty. If TunableVarsTypeQualifier is empty, the column entry is TunableVarsStorageClass.
The values for TunableVarsStorageClass are:
  • Exported Global
  • Auto
  • ImportedExtern
  • ImportedExtern Pointer

Table Display

Table title:
Enter the title of the table in this field.
Display table border
Select this option if you want to have a border around the table.

Example

This is an example of a table created by the Model Variables component. This property table is reporting on the variables in the Controller in the F14 demo model.

Variable Name | Parent Blocks | Calling string | Value
Ka | f14/Controller/Gain3 | Ka | 0.677
Kf | f14/Controller/Gain | Kf | -1.746
Ki | f14/Controller/Proportional plus integral compensator | [Ki] | -3.864
Kq | f14/Controller/Gain2 | Kq | 0.8156

Insert anything into report?

Yes. Table.

Filename

csl_variables


Object Linking Anchor (Report Generator)

Object Linking Anchor

Component

Object Linking Anchor

Category

Simulink

Description

The Object Linking Anchor component designates a location to which other links point. This component should have either the Model Loop, System Loop, Block Loop, or Signal Loop component as its parent.

Attributes

This is the Object Linking Anchor attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Link from current:
This option sets the current model, system, block, or signal as the linking anchor:
  • Select Automatic to automatically select the appropriate model, system, block or signal as a linking anchor. If the Model Loop component is the parent component, then the linking anchor is set on the current model. Similarly, if the System Loop, Block Loop, or Signal Loop is the parent component, then the linking anchor is inserted for the current system, block, or signal, respectively.
  • Select Model to set the linking anchor to the current model.
  • Select System to set the linking anchor to the current system.
  • Select Block to set the linking anchor to the current block.
  • Select Signal to set the linking anchor to the current signal.
Insert text:
If you want text to appear after the linking anchor, enter the text in this field.
Note:
You should not use the Object Linking Anchor component to create an anchor for an object that is anchored in the object summary table. See the Object Summary Table component reference page.

Insert anything into report?

Yes. A link, and possibly text, depending on attribute choices.

Filename

csl_linktarget


Object Name (Report Generator)

Object Name

Component

Object Name

Category

Simulink

Description

The Object Name component inserts the name of a Simulink model, system, block or signal into the report.

This component can be used as the first subcomponent of a Chapter/Subsection component, which allows the current Simulink model, system block or signal name to be the chapter or section title.

Attributes

This is the Object Name attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Show name of current:
  • Select Automatic to automatically select the appropriate model, system, block, or signal name as the Simulink object name to include in the report. If the Model Loop component is the immediate parent component, then the object name is the current model name. Similarly, if the System Loop, Block Loop, or Signal Loop is the parent component, then the object name is the name of the current system, block, or signal, respectively.
  • Select Model to include the current model name in the report.
  • Select System to include the current system name in the report.
  • Select Block to include the current block name in the report.
  • Select Signal to include the current signal name in the report. If the signal name is empty, then the signal <handle> is included in the report. The signal handle is a unique numerical identifier to that signal.
Render name as
Select one of the options listed below to display the Simulink object name in the report:
  • Name - e.g., f14
  • Type Name - e.g., Model f14
  • Type - Name - e.g., Model - f14
  • Type: Name - e.g., Model: f14
Show full path name
Select this option to show the full path name for a system or block. For example, if you choose this option for a block, the Simulink block name will appear as: Model Name/System Name/Block Name. Note that this option is not available for models and signals.

Insert anything into report?

Yes. Text.

Filename

cslsysname


Object Property (Report Generator)

Object Property

Component

Object Property

Category

Simulink

Description

The Object Property component inserts a single property name/property value pair for the current Simulink model, system, block, or signal.

Attributes

This is the Object Property attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Object Type

Select a Simulink object on which to report:

  • Select Model to report on a property name/property value pair in the current model.
  • Select System to report on a property name/property value pair in the current system.
  • Select Block to report on a property name/property value pair in the current block.
  • Select Signal to report on a property name/property value pair in the current signal.

<Object> Property

This context-sensitive section contains a drop box that shows all the property types for the current Simulink model, system, block, or signal. Select the property type from this drop box. Note that if you do not have Real-Time Workshop, Summary Properties (req RTW) will not be listed in this drop box, since summary properties require Real-Time Workshop. If you are using a setup file that contains a summary property, then the property name appears in the report, but the property value does not.

This section also contains a list box that shows available property names for the property type you chose in the drop box. Select the property to include in the report from the list box.

Render As

Select one of the options listed below to display the Simulink object property name/property value pair in the report:

  • Value - displays the value of the property only (e.g., if the property is Name and the value is f14, only f14 is displayed).
  • Property: Value - e.g., Name: f14
  • PROPERTY Value - displays the name of the property in italics, followed by the value of the property (e.g., Name f14)

Insert anything into report?

Yes. Text.

Filename

cslproperty


Object Summary Table (Report Generator)

Object Summary Table

Component

Object Summary Table

Category

Simulink

Description

The Object Summary Table component shows properties or parameters of the selected Simulink models, systems, blocks, or signals in a table.

Attributes

This is the Object Summary Table attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Object List

Select a Simulink object:

  • Select Model to create a summary table on the current model.
  • Select System to create a summary table on the current system.
  • Select Block to create a summary table on the current block.
  • Select Signal to create a summary table on the current signal.
Sort
Select how the Simulink model, system, or block is sorted in this section of the attribute page:

  • Models can be only be sorted alphabetically.
  • Systems can be sorted:
    • By the number of blocks in the system
    • Alphabetically by system name
    • By system depth
  • Block can be sorted:
    • Alphabetically by block name
    • Alphabetically by system name
    • By block type
    • By block depth
    • By simulation order (requires Real-Time Workshop)
  • Signals can be sorted:
    • Alphabetically by signal name
    • Alphabetically by signal name (excludes signals with no name)
    • Alphabetically by system name
    • By signal depth

Object Properties

Select which object parameters are included in the report in this section of the attribute page.

Object Parameters

This list box shows all of the object parameters that are included in the report. To add a parameter to this list, select the parameter category from the drop box on the left, and then select parameters from the list box below it. Then click on the add button, shown in the table below.

With the buttons shown in the table below, you can:

  • Move a parameter up in the list
  • Move a parameter down in the list
  • Remove a parameter from the list
  • Add a parameter to the list

    Use this button
             To do this
    To move a parameter up in the list
    To move a parameter down in the list

            To remove a parameter from the list

            To add a parameter to the list
Note that if you do not have Real-Time Workshop, Summary Properties (req RTW) will not be listed in this drop box, since summary properties require Real-Time Workshop. If you are using a setup file that contains a summary property, then the property name appears in the report, but the property value does not.

Insert linking anchor for all <objects> in table
This context-sensitive option inserts a linking anchor for all blocks, signals, systems, or models that are listed in the table.
Note that you should use this option if you already have an Object Linking Anchor component that creates an anchor for an object in the object summary table.

The %<SplitDialogParameters> and the dialogparameters Properties

The %<SplitDialogParameters> property creates columns with the dialog parameter names as headings (one column for each parameter), and the dialog parameter values listed in the table cells below it. This property is valid for blocks only and creates multiple tables, one for each block type.

The dialogparameters property creates one column with dialogparameters as a heading and lists the dialog parameter names in the table cells below it.

For example, if your reported properties are Name and dialogparameters, then you will get the following object summary table

Name | dialogparameters
Gain1 | Gain
Gain2 | Gain
Sum3 | IconShape Inputs SaturateOnIntegerOverflow
T-Fcn1 | Numerator Denominator
.

If you choose to report on the same blocks summarized in the table above but choose Name and %<SplitDialogParameters> as your reported properties, then you will get the following three object summary tables, one for each blocktype.

Name | Gain
Gain1 | Mz
Gain2 | 5
Name | IconShape | Inputs | SaturdateOnIntegerOverflow
Sum3 | round | |++ | 0

Name | Numerator | Denominator
Sum3 | 1 | [1, -Mq]

Example

If you are reporting on the demo model F14, and you choose the following options, then summary table shown on the next page is generated:

  • Sort on systems by system depth
  • Name and Blocks are the System parameters to be included in the table

    Name
            Blocks
    f14
            u, Actuator Model, Aircraft Dynamics Model, Angle of Attack, Controller, Dryden Wind Gust Models, Gain, Gain1, Gain2, Gain5, More Info, More Info1, Nz pilot calculation, Pilot, Pilot G force Scope, Stick Input, Sum, Sum1, alpha (rad), Nz Pilot (g)
    Aircraft Dynamics Model
            Elevator Deflection d (deg), Vertical Gust wGust (ft/sec), Rotary Gust qGust (rad/sec), Gain3, Gain4, Gain5, Gain6, Sum1, Sum2, Transfer Fcn.1, Transfer Fcn.2, Vertical Velocity w (ft/sec), Pitch Rate q (rad/sec)
    Controller
            Stick Input (in), alpha (rad), q (rad/sec), Alpha-sensor Low-pass Filter, Gain, Gain2, Gain3, Pitch Rate Lead Filter, Proportional plus integral compensator, Stick Prefilter, Sum, Sum1, Sum2, Elevator Command (deg)
    Dryden Wind Gust Models
            Band-Limited White Noise, Q-gust model, W-gust model, Wg, Qg
    More Info

    More Info1

    Nz pilot calculation
            w, q, Constant, Derivative, Derivative1, Gain1, Gain2, Product, Sum1, Pilot g force (g)

Insert anything into report?

Yes. Table.

Filename

csl_summ_table


Scope Snapshot (Report Generator)

Scope Snapshot

Component

Scope Snapshot

Category

Simulink

Description

The Scope Snapshot component inserts an image of a Simulink scope and XY graphs. If the model has not been simulated, scopes will be empty. See the Model Simulation component attribute page.

Attributes

This is the Scope Snapshot attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Take Snapshots of

This frame describes what the Scope Snapshot component is operating on:

  • If the Scope Snapshot has the Model Loop as its parent or if it does not have any of the Simulink looping components as its parent, it includes all XY graphs and scopes in the current model.
  • If the Scope Snapshot has the System Loop as its parent, it includes all XY graphs and scopes in the current system.
  • If the Scope Snapshot has the Block Loop as a parent, it includes the current block if it is an XY graph or scope.
  • If the Scope Snapshot has the Signal Loop as its parent, it includes all XY graphs and scopes connected to the current signal.
  • If the Scope Snapshot does not have any of the Simulink looping components as its parent, it includes all XY graphs and scopes in all open models.
Include open scopes only
Select this option to take a snapshot of scopes that are currently open.
Include all scopes
Select this option to take a snapshot of all scopes in the model. This option forces closed scopes to open when the report is generating.

Snapshot Options

Image file format
Choose the image file format (e.g., JPEG, TIFF, etc.,) from this drop box. To automatically choose the format best suited for the output format that you chose in the Report component, select Automatic, which is the default option. Otherwise, make sure that you choose an image format that your output viewer can read.

Image Size

Specify the image size in the form wxh (width times height) in the Image Size field and the units in the corresponding drop box. The image size equal these dimensions.

If you change the units, the number in the image size field will automatically change to match the units.

Paper orientation
You can choose Landscape or Portrait as your paper orientation.
Use white background and black lines
Select this option to display the scope snapshot with a white background and black axes and traces. This is the best option if you are printing your output.

Insert anything into report?

Yes. Image.

Filename

cslscopesnap


Signal Loop (Report Generator)

Signal Loop

Component

Signal Loop

Category

Simulink

Description

The Signal Loop component runs its subcomponents for each signal contained in the current system, model, or block.

Attributes

This is the Signal Loop attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Report On

This context-sensitive frame describes what the system loop is operating on:

  • If the Signal Loop has the Model Loop as its parent, it loops on all signals in the current model.
  • If the Signal loop has the System Loop as its parent, it loops on all signals in the current system.
  • If the Signal Loop has the Block Loop as a parent, it loops on all signals connected to the current block.
  • If the Signal Loop does not have either the Model Loop, System Loop, or Block Loop as its parent, it loops on all signals in all models.

Sort Signals

Use this section to select how the signals are sorted:

  • Select Alphabetically by signal name to sort signals alphabetically by name.
  • Select Alphabetically by signal name (exclude empty) to sort signals alphabetically by name as long as the signals have names.
  • Select Alphabetically by system name to sort by parent systems. In this option, the systems are sorted alphabetically, and signals in each system are listed, but in no particular order.
  • Select By signal depth to sort signals by their depth in the model.

Insert anything into report?

No.

Filename

csl_sig_loop


Signal Property Table (Report Generator)

Signal Property Table

Component

Signal Property Table

Category

Simulink

Description

The Signal Property Table component inserts a table that reports on
signal-level property name/property value pairs into your report.

Attributes

This is the Signal Property Table attribute page.

The Signal Property Table component is similar to the Handle Graphics Figure Property Table component. See the Handle Graphics Figure Property Table component reference page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Example

The table below is an example of a signal property table. It is the Compiled Information preset table. This property table is reporting on signal w in the Aircraft Dynamics Model in the F14 demo model.

Name | w
CompiledPortDataType | auto
CompiledPortWidth | 1
CompiledPortComplexSignal | -1

Insert anything into report?

Yes. Table.

Filename

csl_sig_proptable


System Filter (Report Generator)

System Filter

Component

System Filter

Category

Simulink

Description

The System Filter component executes subcomponents only if the current systems meets the conditions specified in the attribute page.

Attributes

This is the System Filter attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Only execute subcomponents:
  • Enter a number in the if number of blocks in system >= field to execute subcomponents only if there are at least the specified number of blocks in the system. Note that if you enter 0, then there is no filtering; subcomponents are executed regardless of the number of blocks in the system.
  • Enter a number in the if number of subsystems >= field to execute subcomponents only if there are at least the specified number of subsystems in the system. Note that if you enter 0, then there is no filtering; subcomponents are executed regardless of the number of subsystems in the system.
if system is
Select one of the following reporting options:
  • Use the masked option to execute subcomponents only if the system is masked.
  • Use the unmasked option to execute subcomponents only if the system is unmasked.
  • Select the either masked or unmasked option to execute subcomponents regardless of whether the system is masked or unmasked.

Insert anything into report?

No.

Filename

cslfilter


System Hierarchy (Report Generator)

System Hierarchy

Component

System Hierarchy

Category

Simulink

Description

The System Hierarchy component creates a nested list that shows the hierarchy of the system specified in the attribute page. The list can display all systems in a model or it can show the parents and children of the current system.

Attributes

This is the System Hierarchy attribute page.

Note:
To view the component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Starting System

Build list for:
  • Choose Current system to create a hierarchy list for the current system.
  • Choose Current Model (Top-level system) to create a hierarchy list for the current model.
Emphasize current system
Select this option to display the name of the current system in an italicized font.

Display Systems

Show number of parents:
Use this field to specify the depth of parents that should be included in the hierarchy list. For example, if you specify 2 in this field and you are reporting on Throttle, which is a system in Throttle and Manifold, which is a system in the Simulink demo model Engine, then the hierarchy list contains:
        engine
        Throttle & Manifold
            Throttle
Note that the starting system, Throttle, is emphasized by italics.
Show children to depth:
Use this field to specify the depth of children that should be included in the hierarchy list. For example, if you are reporting on the demo model F14 and you enter 2 in this field, then you get the following hierarchy list:
        f14
        Aircraft Dynamics Model
        Controller
        Dryden Wind Gust Models
            Band-Limited White Noise
        More Info
        More Info1
        Nz pilot calculation
Note that the starting system, f14, is emphasized by italics.
Display peers of current system
Systems that have the same parent are peers. Use this option to display the peers of the current system. For example, if you are reporting on Dryden Wind Gust Models, and you select this option, then you get the following hierarchy list:
            Aircraft Dynamics Model
        Controller
        Dryden Wind Gust Models
            Band-Limited White Noise
        More Info
        More Info1
        Nz pilot calculation
If you do not select this option, then you get the following hierarchy list:
            Dryden Wind Gust Models
            Band-Limited White Noise
Note that the starting system, Dryden Wind Gust Models, is emphasized by italics.

Insert anything into report?

Yes. List.

Filename

cslsyslist


System Loop (Report Generator)

System Loop

Component

System Loop

Category

Simulink

Description

The System Loop component runs its subcomponents for each system defined by the Model Loop. The System Loop component must have the Model Loop component as its parent.

Attributes

This is the System Loop attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Report On

This context-sensitive frame describes what the system loop is operating on:

  • If the System Loop has the Model Loop as its parent, it loops on all systems in the current model.
  • If the System Loop has the System Loop as its parent, it loops on the current system.
  • If the System Loop has the Block Loop as a parent, it loops on the current block's parent system.
  • If the System Loop does not have either the Model Loop, System Loop, or Block Loop as its parent, it loops on all systems in all models.

Sort Systems

Use this section to select how the systems are sorted:

  • Select By number of blocks in system to sort systems by the number of blocks in the system. The list shows systems by decreasing number of blocks; i.e., the system with the largest number of blocks is listed first.
  • Select Alphabetically by system name to sort systems alphabetically by name.
  • Select By system depth to sort systems by their depth in the model.

Insert anything into report?

No.

Filename

csl_sys_loop


System Property Table (Report Generator)

System Property Table

Component

System Property Table

Category

Simulink

Description

The System Property Table component inserts a table that reports on system-level property name/property value pairs.

Attributes

This is the System Property Table attribute page.

The System Property Table is similar to the Handle Graphics Figure Property Table component. See the Handle Graphics Figure Property Table reference page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Example

The table below is an example of a system property table. It is the Default preset table. This property table is reporting on signal w in the Aircraft Dynamics Model in the F14 demo model.

Name | Aircraft Dynamics Model | Parent | f14
Description |  | Tag |
Blocks | Elevator Deflection d (deg), Vertical Gust wGust (ft/sec), Rotary Gust qGust (rad/sec), Gain3, Gain4, Gain5, Gain6, Sum1, Sum2, Transfer Fcn.1, Transfer Fcn.2, Vertical Velocity w (ft/sec), Pitch Rate q (rad/sec) | LinkStatus | none

Insert anything into report?

Yes. Table.

Filename

csl_sys_proptable


System Snapshot (Report Generator)

System Snapshot

Component

System Snapshot

Category

Simulink

Description

The System Snapshot component inserts a snapshot of the current system in your report.

Attributes

This is the System Snapshot attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Use printframe:
Choose this option to print a frame around the image. You can use the default Report Generator frame, rptdefaultframe.fig , or you can use the Frame Editor to build a custom frame.
To build a custom frame, type frameedit at the command line to invoke the Print Frame Editor. For help with the Print Frame Editor, select Print Frame Editor Help from the Help menu. See frameedit in the Simulink reference pages for a discussion of the frameedit command.
The default Report Generator frame is five inches wide and four inches high. It includes the name of the system and the model directory. This frame is optimized for use with a portrait paper orientation. The Aircraft Dynamics Model in the f14 Simulink demo model is shown below with the default Report Generator frame option.

Image file format
Choose the image file format (e.g., JPEG, TIFF, etc.,) from this drop box. To automatically choose the format best suited for the output format that you chose in the Report component, select Automatic, which is the default option. Otherwise, make sure that you choose an image format that your output viewer can read.
Paper orientation
You can choose Landscape or Portrait as your paper orientation, or you can choose the Use system orientation option. The Use system orientation option uses the PaperOrientation parameter in Simulink, which you can set as Landscape or Portrait.

Insert anything into report?

Yes. Image.

Filename

cslsnapshot


Stateflow Components (Report Generator)

Stateflow Components

You can use Stateflow components to include information on Stateflow models in your report.

Stateflow components have the following parent/child relationships.

Stateflow Loop. This component runs its children for each Stateflow object defined by its parent component. The Stateflow Loop component may have either the Simulink Model Loop, System Loop, or Block Loop component as its parent.

Stateflow Object Report. This component is a filter that runs its children only if the current object type (set by the parent Stateflow Loop matches the component's object type. The Stateflow Object Report component must have the Stateflow Loop component as its parent.

Stateflow Property Table. This component inserts a property name/property value table for a Stateflow object into the report. The Stateflow Property Table component must have the Stateflow Object Report component as its parent.

Stateflow Snapshot. This component inserts an image of a Stateflow object into the report. The Stateflow Snapshot component must have the Stateflow Object Report component as its parent and is only valid for certain object types.


Stateflow Loop (Report Generator)

Stateflow Loop

Component

Stateflow Loop

Category

Stateflow

Description

The Stateflow Loop component runs its children for the Simulink model, system, or block defined by its parent component. For example, if the Stateflow Loop is parented by the Simulink Model Loop, it will run its children for all Stateflow objects in the Simulink model. The Stateflow objects are specified by the Stateflow Object Report, which must be a child of the Stateflow Loop.

The Stateflow Loop component may have either the Model Loop, System Loop, or Block Loop component as its parent.

Attributes

This is the Stateflow Loop attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Include Stateflow Blocks

This context-sensitive frame describes what the Stateflow Loop component is operating on:

  • If the Stateflow Loop has the Model Loop as its parent, it includes all Stateflow blocks in the current model.
  • If the Stateflow Loop has the System Loop as its parent, it includes all Stateflow blocks in the current system.
  • If the Stateflow Loop has the Block Loop as a parent, it includes the current block if it is a Stateflow block.
  • If the Stateflow Loop has the Signal Loop as its parent, it includes all Stateflow block connected to the current signal.
  • If the Stateflow Loop does not have any of the Simulink looping components as its parent, it includes all Stateflow blocks in all models.
Minimum legible font size

Use this field to enter the minimum font size that can be used in an image. This attribute ensures that each reported Stateflow object with textual information has legible text in at least one generated image.
You can use this option to determine whether a certain Stateflow object will be reported on. If the font size in an object is smaller than the size you specify in this field, then that object will be included in the report.
To use this option for the Stateflow Snapshot component, choose the Attempt to shrink image to minimum legible font size (set in Stateflow Loop) option in the Stateflow Snaphot attribute page. The image is displayed as small as possible while keeping the font no smaller than the font size you specify in the Minimum legible font size option.
Report on Stateflow object types:

This list box shows all Stateflow object types that are included in the report. These object types are specified by child Stateflow Object Report components.
For example, if the Stateflow Loop has the following four Stateflow Object Report components as children:
  • Stateflow machine
  • Stateflow chart
  • Stateflow event
  • Stateflow data
then the Report on Stateflow object types: list box will list these Stateflow objects.

Insert anything into report?

No.

Filename

csf_hier_loop


Stateflow Object Report (Report Generator)

Stateflow Object Report

Component

Stateflow Object Report

Category

Stateflow

Description

The Stateflow Object Report component is a filter that runs its children only if the current object type (set by the parent Stateflow Loop) matches the selected object type. The Stateflow Object Report component must have the Stateflow Loop component as its parent.

Attributes

This is the Stateflow Object Report attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Object type
Select the Stateflow object type to include in the report. The current object type (set by the parent Stateflow Loop) must match this selected object type in order for the current object to be included in the report.
Run only if Stateflow object has at least the following number of Stateflow children:

Use this option to limit the number of Stateflow objects that are reported on. If you enter a number in this field, a Stateflow object will not be included in the report unless it has at least that number of children.

Insert anything into report?

No.

Filename

csf_obj_report


Stateflow Property Table (Report Generator)

Stateflow Property Table

Component

Stateflow Property Table

Category

Simulink

Description

The Stateflow Property Table component inserts a property table in your report (reports on property-value pairs). This component inserts a property-value table for a Stateflow object into the report. This object is defined by the Stateflow Object Report component, which must be the parent of the Stateflow Property Table.

Attributes

This is the Stateflow Property Table attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

The Stateflow Property Table is similar to the Handle Graphics Figure Property Table. See the Handle Graphics Figure Property Table for reference.

Note that available properties and preset tables depend on the Object Report parent component.

Insert anything into report?

Yes. Table.

Filename

csf_prop_table


Stateflow Snapshot (Report Generator)

Stateflow Snapshot

Component

Stateflow Snapshot

Category

Stateflow

Description

The Stateflow Snapshot component inserts a snapshot of a Stateflow object (defined by the Stateflow Object Report component) into the report. The Stateflow Snapshot component must have the Stateflow Object Report as its parent.

This component only executes if the selected object in the Stateflow Object Report is a graphical object. The following are graphical Stateflow objects:

  • Chart
  • State
  • Transition
  • Frame

Attributes

This is the Stateflow Snapshot attribute page.

Note:
To view a component attribute page in the Setup File Editor, select the component in the setup file outline on the left and click on the Options tab. If the component is not in the setup file outline, you must add it to the outline first. See Chapter 4 for a discussion on how to add a component to the outline.

Image file format
Choose the image file format (e.g., JPEG, TIFF, etc.,) from this drop box. To automatically choose the format best suited for the output format that you chose in the Report component, select Automatic, which is the default option. Otherwise, make sure that you choose an image format that your output viewer can read.
Run only if Stateflow object has at least the following number of children:

To run this component only when the current Stateflow object has at least a certain number of children, enter that number in this field. The current Stateflow object is specified by the Stateflow Object Report component. This option is not active unless the selected object in the Stateflow Object Report (the parent component) is a graphical object.
This option lets you decrease the size of the report by excluding certain images. You may want to use this option when you have a large model.

Image Size

To avoid excessively large images, choose the Attempt to shrink image to minimum legible font size (set in Stateflow Loop) option. The image is displayed as small as possible while keeping the font no smaller than the font size you specify in the Minimum legible font size option in the Stateflow Loop attribute page.

To specify an image size, choose the As specified (maintain aspect ratio) option. If you select this option, the image is displayed according to your specifications, while the aspect ratio is maintained. Thus, the image will fit at least one of the dimensions that you specify. The other dimension will change to keep the aspect ratio constant.

Specify the image size in the form wxh (width times height) in the Maximum Size field and the units in the corresponding drop box. The image size will not exceed these dimensions.

Insert anything into report?

Yes. Image.

Filename

csf_snapshot


Report Generator: Index

A

activating components
Add Components tab
adding components
Att. name field
Attribute data type
Attribute name
attribute UI control
attribute.m

B

Block Execution Order component
Block Loop component
Block Property Table component
Block Type Count component

C

Category ID field
Category name field
Cell Table component
ch1-tutorial
changing a previously created attribute
changing the outline string
Chapter/Subsection component
child components <1> <2>
component <1> <2> <3> <4>
component attributes
Component Attributes page
Component can contain subcomponents option
Component category list box
Component Category page
Component Creation Wizard <1> <2>
Component Function Name field
Component Methods page
Component Name page
compwiz command
Confirm Selections page
Control type drop box
Convert an SGML File UI
converting a generated report into another format
converting a report
copying a component
Create custom attributes method option
Create custom outlinestring method option
Create Log File option
creating components
creating log files
crp_randplot.m
cutting a component

D

Data type drop box
deactivating components
Default value field
deleting components
Description field
Display conversion status messages in command window option
displaying component attributes

E

Edit menu
Else component ({If} Else)
Elseif component ({If} Elseif)
Empty component
Evaluate MATLAB Expression component
execute.m <1> <2> <3> <4>

F

Fieldname field
figloop-tutorial
Figure "For" Loop component <1> <2>
figure loop tutorial
Figure Property Table component <1> <2>
File menu
Flow control looping component
For Loop component
Formatting components

G

Generate a Report UI
generating a report
Generation Status message priority level
Generation Status tab <1> <2> <3>
getinfo.m <1> <2>
Graphics Figure Snapshot component
Graphics Object Name component

H

halting report generation
Handle Graphics components
Handle Graphics Parameter component
HandleVisibility
Help menu

I

Image component
Import File component
inherited attribute page
Insert Variable component
invisible figure

L

Link component
List component
list of figures
list of tables
list of titles
log file <1> <2>
Logical and Flow components
Logical If component
looping component

M

MATLAB components
MATLAB Report Generator <1> <2> <3>
menu bar
message priority levels
Model Functions component
Model Loop component
Model Property Table component
Model Simulation component
Model Variables component
moving components

N

Name field
naming the report file
Nest Setup File component

O

Object Linking Anchor component
Object looping component
Object Name component
Object Property component
Object Summary Table component
Options tab <1> <2>
out.att.XXX
out.attx.XXX
outlinestring.m <1> <2>
output options

P

Paragraph component
parent component
Parent directory field
Print stylesheets
property table components

R

removing a component
report
report command
Report component <1> <2>
Report Conversion UI
Report Description field
Report Generator
Report Generator components
report output
report output format
report output format descriptions
rptcomponent
rptconvert command <1> <2>
rptlist command <1> <2>

S

Save setup file on generation option
Scope Snapshot component
setup file <1> <2> <3> <4>
Setup File Editor <1> <2> <3>
Setup File List <1> <2> <3>
setup file outline
SGML source filename
Show status updates drop box
Signal Loop component
Signal Property Table component
Simulink components
Simulink Report Generator <1> <2> <3>
specifying the directory for the report file
Stateflow components
Stateflow Loop component
Stateflow Object Report component
Stateflow Property Table component
Stateflow Snapshot component
stylesheet
stylesheet options
subasgn.m
subcomponent
subsref.m
System Filter component
System Hierarchy component
System Loop component
System Property Table component
System Snapshot component

T

tag
Text component
Then component ({If} Then)
Time/Date Stamp component
Title Page component

U

undo (Edit menu)
undoing an attribute edit
unreadable image files

V

Variable Table component
verifying component creation
View report after converting option
View report after generating option <1> <2>
viewing a report

W

Web stylesheets
While Loop component
Window menu


Report Generator: Table of Contents

Getting Started

What Is the Report Generator?

Two Report Generator Packages

Multiple Report Formats

Creating and Generating a Report

Setup File

Using a Standard Setup File

Generating and Viewing the Report

Report Contents

Comparing Components in the Setup File to the Report

Report Component

Paragraph Component

Evaluate MATLAB Expression Component

Graphics Figure Snapshot Component

Figure Property Table Component

Report Generator Overview

What's in This Manual

Generating a Report

Overview

Methods of Generating a Report

When to Use Each Method

Using the Command Line

Using the Setup File List

Using the Setup File Editor

Getting Started With the Setup File Editor

Elements of the Setup File Editor

Setup File Outline

Tab Dialog

Menu Bar

Generating a Report

Report Generation Cleanup

Halting Report Generation

Controlling Report Generation

Output Options

Other Options

Specifying the Report Output

Specifying the Directory for the Report File

Naming the Report File

Report Format and Stylesheets

Report Output Format Descriptions

Web Stylesheets

Print Stylesheets

Viewing and Printing Your Report

Autosaving the Setup File

Regenerating Images

Report Description

Setting the Generation Status Update Priority Level

Converting a Generated Report Into Another Format

Working with the Report Conversion UI

SGML Source File

Conversion Options

Converting the Report

How Unreadable Image Files Are Handled

Working from the Command Line

Creating Log Files

Editing Component Attributes

Introduction

Displaying and Editing Component Attributes

Undoing an Attribute Edit

The Figure "For" Loop Component

Using the Handle Graphics Figure "For" Loop: A Tutorial

Starting the Tutorial

Creating Handle Graphics Figures

Understanding Important Handle Graphics Concepts

Invisible Figures

HandleVisibility

Tags

Tutorial Figure Summary

Editing the Figure "For" Loop Component

Finding Out What Figures Are Looped On

Generating a Report

Choosing Figures to Loop On

Looping on the Current Figure

Looping on All Visible Figures

With HandleVisibility='on'

Looping on Figures With Certain Tags

Adding a Tag to the Tag List Box

Adding a Tag Manually

Removing a Tag From the Tag List Box

Tutorial Summary

Property Table Components

Selecting a Table

Preset Tables

Custom Tables

Choosing How a Property Name/Property Value Pair Is
Displayed

Split Property/Value Cells

Display Options

Justification Options

Putting Text in a Table Cell

Title

Adding, Replacing, and Deleting Properties to a Table Cell

Adding a Property

Replacing or Deleting Properties

Displaying or Hiding Table and Cell Borders

Adding and Deleting Columns and Rows

Resizing Columns

Zooming and Scrolling

Property Table Summary

Building and Editing the Setup File

Overview

Components

Building a Setup File

Setup File Outline

Adding a Component to the Setup File

Getting Help on a Component

Deleting a Component

Deactivating/Activating a Component

Deactivating a Component

Activating a Component

Moving Components

Up, Up and Out

Up

Up and Out

Down, Down and Out

Down

Down and Out

In

Up and In

Down and In

Cut, Copy, and Paste from Edit Menu

Removing (Cutting) a Component

Copying a Component

How to Create Your Own Components

Creating Components

Why Create Your Own?

What's Involved in Creating Components

Starting the Component Creation Wizard

Tutorial Overview

Entering Component Category Information

Choosing the Component Category

Tutorial Task

Specifying the Component Category ID

Tutorial Task

Specifying the Component Category Name

Tutorial Task

Looking at the New Component Category Page

Creating the Component Name

Naming the Component

Tutorial Task

Specifying the Component Function Name

Tutorial Task

Specifying the Parent Directory

Tutorial Task

Specifying the Component Description

Tutorial Task

Subcomponents

Looking at the New Component Name Page

Creating Component Attributes

Component Attribute Tutorial Task 1

Specifying the Field Name

Tutorial Task

Specifying the Data Type

Tutorial Task

Setting the Default Value

Tutorial Task

Setting the Control Type

Tutorial Task

Specifying the Attribute Name

Tutorial Task

Looking at the New Component Attributes Page

Creating Another Attribute

Component Attribute Tutorial Task 2

Creating Component Methods

Creating a Custom Attributes Method

Tutorial Task

Creating a Custom Outlinestring Method

Tutorial Task

Reviewing All Component Information

Creating and Verifying the Component

Creating the Component

Verifying Component Creation

Tutorial: Editing and Running the New Component

Editing a New Component

Editing the Execute Method

Editing execute.m to Insert Text Output into the Report

Using the New Component

Creating a New Attribute

Finding Attributes and Their Default Values

Adding a New Attribute and Default Value

Specifying Attribute Name, Data Type and UI Control

Creating Another Attribute

Changing a Previously Created Attribute

Changing the Outline String

Running the New Component

Editing execute.m to Insert a Figure into the Report

The Report Created by the Figure Random Plot Component

Summary

Component Reference

Introduction

What's In This Chapter

Report

Formatting Components

Formatting Components

Cell Table

Chapter/Subsection

Image

Link

List

Paragraph

Text

Title Page

Handle Graphics Components

Handle Graphics Components

Figure "For" Loop

Figure Property Table

Graphics Figure Snapshot

Graphics Object Name

Handle Graphics Parameter

Logical and Flow Components

Logical and Flow Components

<if> Else

<if> Elseif

For Loop

Logical If

<if> Then

While Loop

MATLAB Components

MATLAB Components

Evaluate MATLAB Expression

Insert Variable

Variable Table

Report Generator Components

Report Generator Components

Empty Component

Import File

Nest Setup File

Time/Date Stamp

Simulink Components

Simulink Components

Block Execution Order

Block Loop

Block Property Table

Block Type Count

Model Functions

Model Loop

Model Property Table

Model Simulation

Model Variables

Object Linking Anchor

Object Name

Object Property

Object Summary Table

Scope Snapshot

Signal Loop

Signal Property Table

System Filter

System Hierarchy

System Loop

System Property Table

System Snapshot

Stateflow Components

Stateflow Components

Stateflow Loop

Stateflow Object Report

Stateflow Property Table

Stateflow Snapshot