的仿真软金宝app件®自定义文件sl_customization.m
是一种允许您使用MATLAB的机制®自定义构建过程接口。Simu金宝applink软件读取sl_customization.m
文件,如果存在于MATLAB路径中,当它启动时和文件中指定的自定义将应用于Simulink会话。金宝app有关的更多信息sl_customization.m
定制文件的更多信息,请参考注册自定义(金宝app模型)。
的sl_customization.m
文件可用于注册特定于安装的钩子函数,以便在构建过程中调用。您通过它注册的钩子函数sl_customization.m
补充系统目标文件(STF)挂钩(如中所述使用STF_make_rtw_hook文件自定义构建过程)和代码生成后命令(如中所述)自定义后代码生成生成处理).
下图显示了安装级钩子和其他可用机制之间的关系,这些机制用于自定义构建过程。
要注册在构建过程中调用的安装级钩子函数,需要创建一个MATLAB函数sl_customization.m
并将其包含在您想要定制的Simulink安装的MATLAB路径中。金宝app的sl_定制
函数接受一个参数:自定义管理器对象的句柄。例如,
函数sl_customization(厘米)
作为自定义的起点sl_定制
函数必须首先使用以下赋值语句获取默认(工厂)自定义设置:
hObj = cm.RTWBuildCustomizer;
然后调用方法来注册自定义。自定义管理器对象包括以下方法来注册构建进程钩子的自定义:
addUserHook(hObj、hookType、hook)
指定的MATLAB钩子脚本或函数钩
用于表示的构建过程阶段hookType
。的有效值hookType
是“进入”
,“before_tlc”
,“after_tlc”
,“before_make”
,“after_make”
,及“退出”
.
的实例中使用此方法注册与安装相关的钩子函数sl_定制
函数。
Simu金宝applink软件读取sl_customization.m
文件启动时。如果您随后更改了文件,您必须重新启动Simulink会话或在命令窗口中输入以下命令来启用更改:金宝app
sl_refresh_customizations
以下变量可用于sl_customization.m
要使用的钩子函数:
型号名称
- Simulink模型的名称(对所金宝app有阶段有效)
dependencyObject
-包含生成代码的依赖项的对象(仅对“after_make”
阶段)
钩子脚本可以直接访问有效的变量。钩子函数可以将有效变量作为参数传递给函数。例如:
hObj。addUserHook(“after_make”、“afterMakeFunction (modelName dependencyObject); ');
的sl_customization.m
示例中显示的文件,sl_customization.mfor Build Process Customizations,采用addUserHook
方法指定要在“进入”
和“after_tlc”
构建过程的各个阶段。有关钩子函数源代码,请参阅CustomRTWEntryHook.m和CustomRTWPostProcessHook.m的例子。
函数sl_customization(cm) %注册用户定制%获得默认(工厂)定制hObj = cm. rtwbuildcustomizer;%注册构建进程钩子addUserHook('entry', 'CustomRTWEntryHook(modelName);'); hObj.addUserHook('after_tlc', 'CustomRTWPostProcessHook(modelName);'); end
函数[str,status]=CustomRTWEntryHook(modelName)str=sprintf('model''%s.'',modelName的自定义条目挂钩);disp(str)状态=1;
function [str, status] = CustomRTWPostProcessHook(modelName) str =sprintf('自定义post process hook for model " %s. " ',modelName);disp (str)状态= 1;
如果您在想要自定义的Simulink安装的MATLAB路径中包含上述三个文件,那么代码钩子函数消息将出现在构建的显示输出中。金宝app例如,如果您打开基于ert的模型rtwdemo_udt
,打开代码生成窗格中,然后按Ctrl+B要启动构建,将显示以下消息:
>>rtwdemo_udt#######开始模型的构建过程:rtwdemo_udt模型“rtwdemo_udt”的自定义输入钩子。“rtwdemo#u udt”模型的自定义后期处理钩子。成功完成模型的构建过程:rtwdemo_udt>>