先进的功能
LibAppendToModelReferenceUserData(数据)
附加给定的数据对象的用户数据binfo
为模型文件目前正在建造。这个函数只是在构建呼吁模型参考目标。
请注意
数据参数不能被一个向量或矩阵。为了解决这个限制,创建一个包含向量或矩阵数据的记录和字段,通过记录到的功能。
看到LibAppendToModelReferenceUserData
在modelrefutil.tlc
。
LibBlockInputSignalBufferDstPort (portIdx)
返回输出端口对应的输入端口(portIdx
),共享相同的内存,否则返回(1)。您将需要使用LibBlockInputSignalBufferDstPort
当你指定portIdx ssSetInputPortOverWritable(年代,真的)
你的功能。
如果一个输入端口和输出端口的一个街区
不是测试点,
输入端口是overwritable
然后输出端口可以重用相同的缓冲区作为输入端口。在这种情况下,LibBlockInputSignalBufferDstPort
返回索引指定的输出端口,重用输入端口的缓冲。如果没有一个块的输出端口复用指定的输入端口的缓冲,然后LibBlockInputSignalBufferDstPort
返回1
。
LibBlockInputSignalBufferDstPort
TLC版本的模型吗金宝app®宏ssGetInputPortBufferDstPort
。
例子
假设您有一个块,有两个输入端口,这两个接收2-wide向量的复数。块输出两个复数的产物。
%分配u1r = LibBlockInputSignal(0,”“、”“0) %分配u1i = LibBlockInputSignal(0”、“1) %分配u2r = LibBlockInputSignal(1”“、”“0) %分配u2i = LibBlockInputSignal(1”“、”“1) %分配年= LibBlockOutputSignal(0,”“、”“0) %分配易= LibBlockOutputSignal(0”、“1) %如果(LibBlockInputSignalBufferDstPort(0) ! = 1) % %第一个输入将被你覆盖因此% %我们需要真正的部分保存在一个临时变量。{real_T tmpRe = % < u1r >;%分配u1r = " tmpRe”;% endif % <年> = % * % < u2r > < u1r > < u1i > * - % % < u2i >;< u1r > % <易> = % * % < u2i > + % * % < u2r > < u1i >;%如果(LibBlockInputSignalBufferDstPort (0) ! = 1)} % endif
注意,因为只存在一个输出端口,这个例子可以使用(LibBlockInputSignalBufferDstPort (0) = = 0)
布尔条件%如果
语句。
看到LibBlockInputSignalBufferDstPort
在blkiolib.tlc
。
LibBlockInputSignalStorageClass (portIdx sigIdx)
返回指定的存储类块输入端口的信号。存储类“汽车”
,“ExportedSignal”
,“ImportedExtern”
,或“ImportedExternPointer”
。
看到LibBlockInputSignalStorageClass
在blkiolib.tlc
。
LibBlockInputSignalStorageTypeQualifier
(portIdx sigIdx)
返回指定的块的存储类型限定符输入端口的信号。用户输入的类型限定符可以是任何东西,例如常量
。默认类型限定符“汽车”
,这就意味着默认动作。
看到LibBlockInputSignalStorageTypeQualifier
在blkiolib.tlc
。
LibBlockOutputSignalIsGlobal (portIdx)
返回1如果指定的块输出端口信号是宣布在全球范围,否则返回0
。
如果LibBlockOutputSignalIsGlobal
返回1
,那么变量持有这个信号在生成的代码从任何地方访问。例如,LibBlockOutputSignalIsGlobal
返回1
测试点的信号,外部或不变。
看到LibBlockOutputSignalIsGlobal
在blkiolib.tlc
。
LibBlockOutputSignalIsInBlockIO (portIdx)
返回1如果指定的块输出端口存在在全球块I / O数据结构。您可能需要使用这个如果指定portIdx ssSetOutputPortReusable(年代,真的)
你的功能。
看到LibBlockOutputSignalIsInBlockIO
在blkiolib.tlc
。
LibBlockOutputSignalIsValidLValue (portIdx)
返回1
如果指定的块输出端口信号可以作为一个有效的左侧参数(左值
)在一个赋值表达式,否则返回0
。例如,LibBlockOutputSignalIsValidLValue
返回1
如果块输出端口信号是读/写在内存中。
看到LibBlockOutputSignalIsValidLValue
在blkiolib.tlc
。
LibBlockOutputSignalStorageClass (portIdx)
返回指定的块存储类的输出信号。存储类“汽车”
,“ExportedSignal”
,“ImportedExtern”
,或“ImportedExternPointer”
。
看到LibBlockOutputSignalStorageClass
在blkiolib.tlc
。
LibBlockOutputSignalStorageTypeQualifier
(portIdx)
返回指定的块存储类型限定符的输出信号。用户输入的类型限定符可以是任何东西,例如常量
。默认类型限定符汽车
,这就意味着默认动作。
看到LibBlockOutputSignalStorageType
在blkiolib.tlc
。
LibBlockSrcSignalBlock (portIdx sigIdx)
返回一个引用的块指定块的输入端口元素的来源。返回参数是下列之一:
[systemIdx, blockIdx] |
如果块输出或状态是独一无二的 |
“ExternalInput” |
如果外部输入(根尺寸) |
“地面” |
如果无关或连接到地面 |
“FcnCall” |
如果函数调用输出 |
0 |
(即如果不是独一无二的。,source for a Merge block or a signal reused because of block I/O optimization) |
例子
下面的代码片段发现了第二块硬盘输入当前块的第一个端口上,然后分配块变量输入信号的来源y
:
%分配srcBlock = LibBlockSrcSignalBlock(0,1) % %确保源是一块%如果类型(srcBlock) = =“向量”%分配系统= srcBlock[0] %分配黑色= srcBlock[1] %分配块= CompiledModel.System(系统)。块与块(黑色)% %分配u = LibBlockInputSignal (0,”“、”“0) y = % < u >;% endwith % endif
看到LibBlockSrcSignalBlock
在blkiolib.tlc
。
LibBlockSrcSignalIsDiscrete (portIdx sigIdx)
返回1如果源信号对应于指定的块离散输入端口元素,否则返回0。
请注意,LibBlockSrcSignalIsDiscrete
也返回0,如果驱动块不能唯一地确定为合并或复用信号(即。源是一个合并块或信号被重用,因为优化)。
看到LibBlockSrcSignalIsDiscrete
在blkiolib.tlc
。
LibBlockSrcSignalIsGlobalAndModifiable
(portIdx sigIdx)
LibBlockSrcSignalIsGlobalAndModifiable
返回1如果源信号对应于指定的块输入端口元素满足以下三个条件:
到处都是可读的代码生成。
它可以引用的地址。
它的值可以改变(即。,这不是声明为一个
常量
)。
否则,LibBlockSrcSignalIsGlobalAndModifiable
返回0
。
看到LibBlockSrcSignalIsGlobalAndModifiable
在blkiolib.tlc
。
LibBlockSrcSignalIsInvariant (portIdx sigIdx)
返回1
如果源信号对应于指定的块输入端口元素不变(即。不改变信号)。
例如,一个源块与一个常数TID
(或等价于一个无限样本时间)将输出一个不变的信号。
看到LibBlockSrcSignalIsInvariant
在blkiolib.tlc
。
LibGetModelReferenceUserData (modelName)
获取用户数据为给定的模型。这返回一个向量和一个元素为每个时间LibAppendToUserData
就是在给定的模型。这个函数不能被称为在构建目标类型的SIM卡。
看到LibGetModelReferenceUserData
在modelrefutil.tlc
。
LibGetReferencedModelNames ()
得到模型的名称引用的模型,目前正在建设。返回的数据结构两个字段:
NumReferencedModels
:一个整数的数量模型的名字ReferencedModel
:一个结构数组,其中每个结构——有一个字段的名字
——包含引用模型的名称
看到LibGetReferencedModelNames
在modelrefutil.tlc
。
LibIsModelReferenceRTWTarget ()
返回true,如果构建过程模型参考目标的生成代码。
看到LibIsModelReferenceRTWTarget
在utillib.tlc
。
LibIsModelReferenceSimTarget ()
返回true,如果我们为模型生成代码参考仿真目标。
看到LibIsModelReferenceSimTarget
在utillib.tlc
。
LibIsModelReferenceTarget ()
返回true,如果我们为模型生成代码参考目标。
看到LibIsModelReferenceTarget
在utillib.tlc
。