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 ...@@ -12,8 +12,8 @@ classdef SCDclass_mdsparenum < SCDclass_mdspar
properties(Access=private) properties(Access=private)
enumclass enumclass
stringmap valuemap
intmap codemap
end end
methods methods
...@@ -35,17 +35,17 @@ classdef SCDclass_mdsparenum < SCDclass_mdspar ...@@ -35,17 +35,17 @@ classdef SCDclass_mdsparenum < SCDclass_mdspar
% Enumeration map fill % Enumeration map fill
obj=obj.initenummap(); obj=obj.initenummap();
% value search
found=false; found=false;
for ii=1:numel(obj.stringmap) for ii=1:numel(obj.valuemap)
if strcmp(obj.value,char(obj.stringmap(ii))) if strcmp(obj.value,char(obj.valuemap(ii)))
found = true; found = true;
break; break;
end end
end end
if ~found 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 return
end end
...@@ -76,25 +76,23 @@ classdef SCDclass_mdsparenum < SCDclass_mdspar ...@@ -76,25 +76,23 @@ classdef SCDclass_mdsparenum < SCDclass_mdspar
enumval ='EnumVal = {'; enumval ='EnumVal = {';
enumcode ='EnumCode = {'; enumcode ='EnumCode = {';
for ii=1:numel(obj.stringmap) for ii=1:numel(obj.valuemap)
enumval=[enumval '"' char(obj.stringmap(ii)) '"']; enumval=[enumval '"' char(obj.valuemap(ii)) '"'];
if ii~=numel(obj.stringmap) if ii~=numel(obj.valuemap)
enumval=[enumval ',']; enumval=[enumval ','];
end end
end end
enumval=[enumval, '}']; enumval=[enumval, '}'];
for ii=1:numel(obj.intmap) for ii=1:numel(obj.codemap)
enumcode=[enumcode num2str(obj.intmap(ii))]; enumcode=[enumcode num2str(obj.codemap(ii))];
if ii~=numel(obj.intmap) if ii~=numel(obj.codemap)
enumcode=[enumcode ',']; enumcode=[enumcode ','];
end end
end end
enumcode=[enumcode '}']; enumcode=[enumcode '}'];
entrystring=[entrystring ' ' enumcode ' ' enumval '}']; entrystring=[entrystring ' ' enumcode ' ' enumval '}'];
end end
end end
methods(Access = private) methods(Access = private)
...@@ -106,9 +104,9 @@ classdef SCDclass_mdsparenum < SCDclass_mdspar ...@@ -106,9 +104,9 @@ classdef SCDclass_mdsparenum < SCDclass_mdspar
basecmd = ['class(' obj.assignvar ');']; basecmd = ['class(' obj.assignvar ');'];
obj.enumclass = evalin('base',basecmd); obj.enumclass = evalin('base',basecmd);
basecmd = ['enumeration(' obj.assignvar ');']; basecmd = ['enumeration(' obj.assignvar ');'];
obj.stringmap = evalin('base',basecmd); obj.valuemap = evalin('base',basecmd);
basecmd = ['uint16(enumeration(' obj.assignvar '));']; basecmd = ['uint16(enumeration(' obj.assignvar '));'];
obj.intmap = evalin('base',basecmd); obj.codemap = evalin('base',basecmd);
end end
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