Simulink.Parameter Trouble

1 view (last 30 days)
Michael Joslin
Michael Joslin on 28 Nov 2011
I have the following function
function CheckA2L(Signal)
%%%%%%Check to see if signal in a2l file
A = ehooks_get_msmtvariable_properties(Signal);
if isempty(A) && strcmp(const_value(1),'K')
Signal = Simulink.Parameter;
Signal.Value = 1;
Signal.StorageClass = 'ImportedExtern';
save('MissingCals','Signal','-append')
end
What I am trying to do is have a new Simulink.Parameter that has the same name as the input to the function then set some properties and save it to an mfile. The only PArameter being made is Signal because it is on the left of the equal sign. How do I create a Simulink parameter with the name of the function input?

Accepted Answer

Kaustubha Govind
Kaustubha Govind on 28 Nov 2011
Do you mean that you want to create a Simulink.Parameter object that has the same name as that of the input argument in its caller workspace? In other words, if I invoked your function using CheckA2L(someObj) from the base workspace, you need an object called "someObj" created? If yes, you can use the inputname function as follows:
function CheckA2L(Signal)
%%%%%%Check to see if signal in a2l file
A = ehooks_get_msmtvariable_properties(Signal);
if isempty(A) && strcmp(const_value(1),'K')
Signal = Simulink.Parameter;
Signal.Value = 1;
Signal.StorageClass = 'ImportedExtern';
eval([inputname(1) '=Signal;']);
save('MissingCals',inputname(1),'-append')
end

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!