Table A-11: Model.rtw Block I/O Information
Variable/Record Name
|
Description
|
BlockOutputs {
|
List of block output signals in the block diagram.
|
BlockOutputDefaults {
|
|
RecordType
|
BlockOutput .
|
SigSrc
|
[]: The default source is non-existent indicating that signal reuse has caused this block output (memory location) to be written to by multiple sources.
|
Width
|
1: Signal width
|
MemoryMapIdx
|
[-1,-1,-1] : used to populate global data map record (GlobalMemoryMap) during code generation. Refer to
matlabroot /rtw/c/tlc/mw/globalmaplib.tlc for usage information on the MemoryMapIdx field.
|
HasObject
|
0: Indicates whether this signal has an associated Simulink.Signal object. Default is 0 indicating this signal output is not associated with a Simulink.Signal .
|
TestPoint
|
no : The default is that this signal has not been marked as a signal of interest in your model (see signal properties dialog).
|
ConstExpr
|
0: the default is this output is not a const expression.
|
StorageClass
|
Auto : The default value specifies that Real-Time Workshop decides where to declare this signal.
|
StorageTypeQualifier
|
"" : The default type qualifier is empty.
|
IdentiferScope
|
top-level : The default is to declare the block output signal in the global block I/O vector. The other option is fcn-level, which will explicitly appear below.
|
Invariant
|
no: The default is that this signal has a non-constant sample time and change during execution.
|
InitialValue
|
[]: The default initial value is empty for non-invariant signals.
|
DataTypeIdx
|
0: The default data type is real_T .
|
ComplexSignal
|
no: The default is a non-complex real valued signal.
|
SigLabel
|
"" : No signal label on the line.
|
SigConnected
|
all : All destination elements of the signal are connected to other nonvirtual blocks or root outports.
|
NumReusedBlockOuputs
|
0: Number of reused block outputs.
|
NumMergedBlockOutputs
|
0: Number of merged block outputs.
|
}
|
|
ReusedBlockOutputDefaults
|
{
|
RecordType
|
ReusedBlockOutput
|
SigLabel
|
"" : No signal label on the line.
|
SigConnected
|
all : All destination elements of signal are connected to other nonvirtual blocks or root outports.
|
}
|
|
MergedBlockOutputDefaults
|
{
|
RecordType
|
MergedBlockOutput
|
SigLabel
|
"" : No signal label on the line.
|
SigConnected
|
all : All destination elements of signal are connected to other nonvirtual blocks or root outports.
|
}
|
|
NumBlockOutputs
|
Number of data output port signals.
|
BlockOutput {
|
One record for each data output signal. Remark: If a block outputs buffer contains the output of a Merge block then you will have MergedBlockOutput sub-sub-records inside a ReusedBlockOutput sub-record inside this BlockOutput record.
|
Identifier
|
Unique variable name across all block outputs.
|
Width
|
Output signal width, only written if its greater than 1.
|
TestPoint
|
yes . Only written when this signal has been marked as a test point in the block diagram. Test point block outputs are always in the global scope (top-level ).
|
StorageClass
|
Only written if either ExportedGlobal, ImportedExtern , ImportedExternPointer or DefinedInTLC . This setting determines how this signal is declared.
|
StorageTypeQualifier
|
Only written if non-empty (e.g., const or something similar).
|
IdentifierScope
|
fcn-level : Only written when the output signal is local to a function. The default (above) is top-level .
|
Invariant
|
yes : Only written when this block output cannot change during execution. For example, the output of a Width block and the output of a Constant block is invariant if InlineParameters=1.
|
InitialValue
|
Non-empty vector that is only written when Invariant is yes and the data type of the block output signal is a built-in data type.
|
DataTypeIdx
|
Only written when data is non-real_T (i.e., non-zero). This is the index in to the data type table that identifies this signals data type.
|
ComplexSignal
|
yes : Only written if this signal is complex.
|
SigSrc
|
[ systemIdx , callSiteIdx , blockIdx , outputPortIdx ] . Note that callSiteIdx is an index into System[ systemIdx ].CallSites .
|
SigLabel
|
Signal label entered by user. Only written if non-empty ("" ).
|
SigConnected
|
Only written if one or more elements are not connected to destination non-virtual or root outport blocks. In this case it will be none if no elements are connected or a vector of length signal Width where each element is either a 1 or 0 indicating whether or not the corresponding output signal is connected.
|
NumMergedBlockOutputs
|
Number of MergedBlockOutput records. These occur when Merge blocks exist in your model. The number of these records will equal the number of merge block outputs in your model.
|
MergedBlockOutput {
|
Only written if the BlockOutput record corresponds to a Merge block. In this case, the number of MergedBlockOutput records is equal to the number of input ports on the Merge block.
|
Identifer
|
Unique variable name across all block outputs.
|
SigSrc
|
[ systemIdx , callSiteIdx, blockIdx , outputPortIdx ] . Note that callSiteIdx is an index into System[ systemIdx ].CallSites .
|
SigLabel
|
Signal label entered by user. Only written if nonempty ("" ).
|
}
|
|
NumReusedBlockOutputs
|
Number of ReusedBlockOutput records.
|
ReusedBlockOutput {
|
Only written when this BlockOutput record is being reused by multiple blocks. There is one record for each block output port that is reused by this BlockOutput record.
|
Identifer
|
Unique variable name across all block outputs.
|
SigSrc
|
[ systemIdx , callSiteIdx , blockIdx , outputPortIdx ] . Note that callSiteIdx is an index into System[ systemIdx ].CallSites .
|
SigLabel
|
Signal label entered by user. Only written if non-empty ("" ).
|
MergedBlockOutput {
|
Only written if this ReusedBlockOutput record corresponds to a Merge block. In this case, the number of MergedBlockOutput records is equal to the number of input ports on the Merge block. See above for contents of the MergedBlockOutput records.
|
}
|
|
}
|
|
HasObject
|
1: Indicates whether the output signal has an associated Simulink.Signal object. This only occurs when there is one source of this signal (i.e., not merged or reused).
|
Object{
|
Contents of Simulink.Signal Only written if HasObject=1 , (a Unified Data Repository object is attached to the output signal) and the output signal is not being reused.
|
...
|
Fields in the Object record depend upon the contents of the object.
|
}
|
|
}
|
|
}
|
|