Skip to content
Snippets Groups Projects
Commit 31f1f3c6 authored by Cristian Galperti's avatar Cristian Galperti
Browse files

ECRH RHVPS A and B made subsystem with tunparams

this eased a lot its configuration via the
init block of the main algo model, WIP

enum parameters loader class tested ok
parent eeea14cc
No related branches found
No related tags found
No related merge requests found
......@@ -12,8 +12,8 @@ classdef SCDclass_mdsparenum < SCDclass_mdspar
properties(Access=private)
enumclass
stringmap
intmap
valuemap
codemap
end
methods
......@@ -35,17 +35,17 @@ classdef SCDclass_mdsparenum < SCDclass_mdspar
% Enumeration map fill
obj=obj.initenummap();
% value search
found=false;
for ii=1:numel(obj.stringmap)
if strcmp(obj.value,char(obj.stringmap(ii)))
for ii=1:numel(obj.valuemap)
if strcmp(obj.value,char(obj.valuemap(ii)))
found = true;
break;
end
end
if ~found
warning('SCDclass_mdsparenum:actualize','No match between MDS and enum values, parameter not actualized');
warning('SCDclass_mdsparenum:actualize','No match between MDS and enum values, parameter %s not actualized', obj.assignvar);
return
end
......@@ -76,25 +76,23 @@ classdef SCDclass_mdsparenum < SCDclass_mdspar
enumval ='EnumVal = {';
enumcode ='EnumCode = {';
for ii=1:numel(obj.stringmap)
enumval=[enumval '"' char(obj.stringmap(ii)) '"'];
if ii~=numel(obj.stringmap)
for ii=1:numel(obj.valuemap)
enumval=[enumval '"' char(obj.valuemap(ii)) '"'];
if ii~=numel(obj.valuemap)
enumval=[enumval ','];
end
end
enumval=[enumval, '}'];
for ii=1:numel(obj.intmap)
enumcode=[enumcode num2str(obj.intmap(ii))];
if ii~=numel(obj.intmap)
for ii=1:numel(obj.codemap)
enumcode=[enumcode num2str(obj.codemap(ii))];
if ii~=numel(obj.codemap)
enumcode=[enumcode ','];
end
end
enumcode=[enumcode '}'];
enumcode=[enumcode '}'];
entrystring=[entrystring ' ' enumcode ' ' enumval '}'];
end
end
methods(Access = private)
......@@ -106,9 +104,9 @@ classdef SCDclass_mdsparenum < SCDclass_mdspar
basecmd = ['class(' obj.assignvar ');'];
obj.enumclass = evalin('base',basecmd);
basecmd = ['enumeration(' obj.assignvar ');'];
obj.stringmap = evalin('base',basecmd);
obj.valuemap = evalin('base',basecmd);
basecmd = ['uint16(enumeration(' obj.assignvar '));'];
obj.intmap = evalin('base',basecmd);
obj.codemap = evalin('base',basecmd);
end
end
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment