1 % Copyright (C) 2013-2014 Czech Technical University in Prague
4 % - Michal Horn <hornmich@fel.cvut.cz>
6 % Permission is hereby granted, free of charge, to any person
7 % obtaining a copy of this software and associated documentation
8 % files (the "Software"), to deal in the Software without
9 % restriction, including without limitation the rights to use,
10 % copy, modify, merge, publish, distribute, sublicense, and/or sell
11 % copies of the Software, and to permit persons to whom the
12 % Software is furnished to do so, subject to the following
15 % The above copyright notice and this permission notice shall be
16 % included in all copies or substantial portions of the Software.
18 % THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19 % EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
20 % OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
21 % NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
22 % HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
23 % WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
24 % FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
25 % OTHER DEALINGS IN THE SOFTWARE.
27 % File : rpp_demos_set_tg.m
29 % Set target file for demo, preserving selected solver and
30 % continuous time support
33 % http://www.mathworks.com/help/matlab/ref/mex.html
34 % http://www.mathworks.com/help/matlab/matlab_external/custom-building-mex-files.html
37 function rpp_demos_set_tg(varargin)
38 d = fullfile(getpref('rpp', 'TargetRoot'), '..', 'demos');
42 reqTarget = varargin{1};
43 demos_set_tg(reqTarget, varargin)
45 error('Not enough arguments for the function.');
48 function demos_set_tg(reqTg, files)
49 for i=2:length(files),
50 disp(['Processing system: ', files{i}]);
51 load_system(files{i});
52 continuousTime = get_param(files{i}, 'SupportContinuousTime');
53 solver = get_param(files{i}, 'Solver');
54 disp([' Set SystemTargetFile to ', reqTg, ' with continuousTime ', continuousTime, ' and solver ', solver]);
55 set_param(files{i}, 'SystemTargetFile', reqTg);
56 set_param(files{i}, 'SupportContinuousTime', continuousTime);
57 set_param(files{i}, 'Solver', solver);
58 disp(' Saving and closing model.');
59 close_system(files{i}, 1);