主要内容

生成的轮廓尺寸结构的类型和名称

获取生成的轮廓尺寸和外港结构类型和名称,使用描述符的代码API。代码生成器中存储这些信息DataImplementation对象字段DataInterface对象时,它生成的代码。

接口生成的代码与其他组件的应用程序,使用描述符的代码API。

开放和建立模型

打开模型。

open_system (“rtwdemo_sum”);

2021 - 07 - 14 - _9 - 50 - 51. png

构建的模型。

evalc (“slbuild (“rtwdemo_sum”)”);

生成的代码包含一个代表港口结构。

/ *外部输入(根尺寸信号与默认存储)* / ExtU rtU;

得到代码描述符和轮廓尺寸结构名称和类型

获取代码描述符对象。

codeDescObj = coder.getCodeDescriptor (“rtwdemo_sum”)
codeDescObj = CodeDescriptor属性:ModelName:“rtwdemo_sum”BuildDir:“/ tmp / Bdoc23a_2213998_2826381 / tp6e6acf5f simulinkcoder金宝app-ex78186698 / rtwdemo_sum_ert_rtw '

得到的数据接口类型列表生成的代码。

dataInterfaceTypes = codeDescObj.getDataInterfaceTypes ()
dataInterfaceTypes =2 x1细胞{“港口”}{外港的}

得到了DataInterface对象代表了港口。

港口= codeDescObj.getDataInterfaces (“港口”)
港口= 1 x2 DataInterface数组属性:类型SID GraphicalName VariantInfo实现计时单元范围

得到了实现对象,该对象代表了第一个尺寸。在这个例子中,港口都表示为一个StructExpression的一个子类DataImplementation

港口(1).Implementation impl =
impl = StructExpression属性:类型:[1 x1 coder.descriptor.types.Type] BaseRegion: [1 x1 coder.descriptor.TypedRegion] ElementIdentifier:“三机”变体:“

得到了类型第一个尺寸。的类型的尺寸是real_T

implType = impl.Type
implType =双重属性:标识符:“real_T”的名字:“双”只读的:0挥发性:0字:64 Signedness: 1

得到了BaseRegion第一个尺寸。BaseRegion代表结构包含轮廓尺寸。的BaseRegionrtU

baseRegion = impl.BaseRegion
baseRegion =变量属性:类型:[1 x1 coder.descriptor.types.Type]标识符:“rtU”VarOwner: rtwdemo_sum StorageSpecifier:”

得到了类型BaseRegion。的类型BaseRegionExtU

baseRegionType = baseRegion.Type
baseRegionType =结构与性质:标识符:“ExtU”的名字:“ExtU”只读的:0挥发性:0元素:[1 x2 coder.descriptor.types.AggregateElement序列]校验和:[1 x0整数序列)

关闭模式

bdclose (“rtwdemo_sum”);

相关的话题