структуризировано:

выделены отдельный файл для работы с wrapper и appwrapper
This commit is contained in:
2025-06-15 10:55:05 +03:00
parent 245592a821
commit edb22966ff
4 changed files with 272 additions and 226 deletions

72
McuLib/m/mainWrap.m Normal file
View File

@@ -0,0 +1,72 @@
classdef mainWrap
methods(Static)
function enableThreading()
block = gcb;
maskNames = get_param(block, 'MaskNames');
maskValues = get_param(block, 'MaskValues');
maskEnables = get_param(block, 'MaskEnables');
idxEnable = find(strcmp(maskNames, 'enableThreading'));
idxEdit = find(strcmp(maskNames, 'threadCycles'));
if isempty(idxEnable) || isempty(idxEdit)
error('Параметры enableThreading или threadCycles не найдены в маске');
end
val = maskValues{idxEnable};
if strcmp(val, 'on')
maskEnables{idxEdit} = 'on';
else
maskEnables{idxEdit} = 'off';
end
set_param(block, 'MaskEnables', maskEnables);
end
function enableDeinit()
block = gcb;
maskNames = get_param(block, 'MaskNames');
maskValues = get_param(block, 'MaskValues');
maskEnables = get_param(block, 'MaskEnables');
idxEnable = find(strcmp(maskNames, 'enableThreading'));
idxEdit = find(strcmp(maskNames, 'threadCycles'));
if isempty(idxEnable) || isempty(idxEdit)
error('Параметры enableThreading или threadCycles не найдены в маске');
end
val = maskValues{idxEnable};
if strcmp(val, 'on')
maskEnables{idxEdit} = 'on';
else
maskEnables{idxEdit} = 'off';
end
set_param(block, 'MaskEnables', maskEnables);
end
function extConsol()
block = gcb;
mask = Simulink.Mask.get(block);
fullOut = mask.getParameter('fullOutput');
extCons = mask.getParameter('extConsol');
if isempty(extCons) || isempty(fullOut)
error('Параметры fullOutput или extConsol не найдены в маске');
end
if(strcmp(extCons.Enabled, 'on'))
if strcmp(extCons.Value, 'on')
fullOut.Enabled = 'off';
fullOut.Value = 'on';
else
fullOut.Enabled = 'on';
end
else
fullOut.Enabled = 'on';
end
end
end
%% SPECIFIC TOOLS
methods(Static, Access = private)
end
end