Custom criteria in Test Manager- Is there any way to get signal by name?
1 次查看(过去 30 天)
显示 更早的评论
Now I am using the following code. In the following code I am using the index for getting the signal. Is there any method to get the index number or get signal by name? I have around 40 signals and the signal that I am checking at index 30. If I log more signals the index is changing. Is there any method to get the index number or get signal by name?
% Get the output Simulink.sdi.Run object
outobj = test.TestResult.getOutputRuns;
%Get object of type Simulink.sdi.Signal
sig = outobj.getSignalByIndex(1);
% return a struct containing data
data = sig.dataValues; % Contains both data and the time
assert(data.Data(end) == Test_Sequence1_Active_Step_Enum.Finish, 'Test Failed after %d seconds, last step in Test Sequence is : %s ',data.Time(end), data.Data(end));
0 个评论
采纳的回答
Mark McBroom
2018-4-28
I think you will have to loop through all signals in the run and look at property sig.Name to find the signal name of interest. outobj.signalCount will tell you the total number of signals in the run and would be the upper bound of your loop.
0 个评论
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!