Simulink® файл индивидуальной настройки sl_customization.m
- механизм, позволяющий использовать MATLAB® для настройки интерфейса процесса сборки. Программа Simulink считывает sl_customization.m
файл, если он присутствует в пути MATLAB, когда он запускается и индивидуальные настройки, указанные в файле, применяются к сеансу Simulink. Для получения дополнительной информации о sl_customization.m
файл индивидуальной настройки, см. Раздел «Регистрация индивидуальных настроек».
The sl_customization.m
файл может использоваться для регистрации специфичных для установки функций hook, которые будут вызываться в процессе сборки. Функции крюка, через которые вы регистрируете sl_customization.m
комплемент System Target File (STF) hooks (описан в разделе Настройка процесса сборки с помощью STF_make_rtw_hook File) и post-code generation commands (описан в разделе Настройка обработки сборки после генерации кода).
На следующем рисунке показана связь между крюками уровня установки и другими доступными механизмами настройки процесса сборки.
Чтобы зарегистрировать функции зацепления уровня установки, которые вызываются в процессе сборки, вы создаете функцию MATLAB, называемую sl_customization.m
и включить его в путь MATLAB установки Simulink, которую необходимо настроить. The sl_customization
функция принимает один аргумент: указатель на объект диспетчера индивидуальных настроек. Для примера,
function sl_customization(cm)
Как начальная точка для ваших индивидуальных настроек, sl_customization
функция должна сначала получить индивидуальные настройки по умолчанию (фабрика) с помощью следующего оператора назначения:
hObj = cm.RTWBuildCustomizer;
Затем активируются методы для регистрации индивидуальных настроек. Объект менеджера индивидуальной настройки включает следующий метод регистрации индивидуальных настроек крюка процесса сборки:
addUserHook(hObj, hookType, hook)
Регистрирует скрипт или функцию hook MATLAB, заданную hook
для стадии процесса сборки, представленной hookType
. Допустимые значения для hookType
являются 'entry'
, 'before_tlc'
, 'after_tlc'
, 'before_make'
, 'after_make'
, и 'exit'
.
Используйте этот метод для регистрации специфичных для установки функций крючка в вашем образце sl_customization
функция.
Программа Simulink считывает sl_customization.m
файл, когда он запускается. Если вы впоследствии измените файл, необходимо перезапустить сеанс Simulink или ввести следующую команду в Командном окне, чтобы включить изменения:
sl_refresh_customizations
Следующие переменные доступны для sl_customization.m
функции hook для использования:
modelName
- имя модели Simulink (действительно для всех этапов)
dependencyObject
- Объект, содержащий зависимости сгенерированного кода (действителен только для 'after_make'
этап)
Скрипт hook может непосредственно получить доступ к допустимым переменным. Функция hook может передать допустимые переменные в качестве аргументов в функцию. Для примера:
hObj.addUserHook('after_make', 'afterMakeFunction(modelName,dependencyObject);');
The sl_customization.m
файл, показанный в примере, sl_customization.m для индивидуальных настроек процесса сборки, использует addUserHook
метод, чтобы задать специфичные для установки соединительные крюки для процесса сборки, которые будут вызываться в 'entry'
и 'after_tlc'
этапы процесса сборки. Исходный код функции hook см. в примерах CustomRTWEntryHook.m и CustomRTWPostProcessHook.m.
function sl_customization(cm) % Register user customizations % Get default (factory) customizations hObj = cm.RTWBuildCustomizer; % Register build process hooks hObj.addUserHook('entry', 'CustomRTWEntryHook(modelName);'); hObj.addUserHook('after_tlc', 'CustomRTWPostProcessHook(modelName);'); end
function [str, status] = CustomRTWEntryHook(modelName) str =sprintf('Custom entry hook for model ''%s.''',modelName); disp(str) status =1;
function [str, status] = CustomRTWPostProcessHook(modelName) str =sprintf('Custom post process hook for model ''%s.''',modelName); disp(str) status =1;
Если в путь MATLAB установки Simulink, который необходимо настроить, включены три вышеуказанных файла, то закодированные сообщения о функции hook отображаются в отображаемом выходе для построений. Для примера, если вы открываете модель на основе ERT rtwdemo_udt
, откройте панель Code Generation диалогового окна Параметров конфигурации и нажмите Ctrl+B, чтобы инициировать сборку, отображаются следующие сообщения:
>> rtwdemo_udt ### Starting build procedure for model: rtwdemo_udt Custom entry hook for model 'rtwdemo_udt.' Custom post process hook for model 'rtwdemo_udt.' ### Successful completion of build procedure for model: rtwdemo_udt >>