Why does SelectCallback run during model build?

2 ビュー (過去 30 日間)
MathWorks Support Team
MathWorks Support Team 2018 年 3 月 26 日
回答済み: MathWorks Support Team 2018 年 4 月 18 日
In a custom TLC file, we can specify a callback with "rtwgensettings.SelectCallback", which gets executed when the TLC file is selected. The documentation states:
"The SelectCallback function is triggered when the user selects a target with the System Target File browser."
However, this callback also executes when building the model. Is this expected behavior? If so, is there a way to prevent this callback from executing on model build?

採用された回答

MathWorks Support Team
MathWorks Support Team 2018 年 3 月 26 日
This is expected behavior for SelectCallback. As a workaround, you can use the "dbstack" function inside of the callback function to determine if code generation is occurring when the callback is being triggered. For example:
function mySelectCallback(hDlg, hSrc)
s = dbstack;
if ~ismember('build_target.p',{s.file})
disp('Running SelectCallback!!!\n');
% perform callback function logic as intended here
else
% do nothing if 'build_target.p' is in the callstack
end
end

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeCustom Software for Target Hardware についてさらに検索

製品


リリース

R2016b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by