0001 function p = fromxml(xml)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 p = param();
0015 sch = xml.getChildNodes;
0016 for c=1:sch.getLength
0017 x = sch.item(c-1);
0018 switch char(x.getNodeName)
0019 case 'version'
0020 p = set(p, 'version', char(x.getTextContent));
0021 case 'key'
0022 p = set(p, 'key', char(x.getTextContent));
0023 case 'value'
0024
0025
0026 mych = x.getChildNodes;
0027 if mych.getLength > 1
0028
0029 vobj = x.item(1);
0030 switch char(vobj.getNodeName)
0031 case 'specwin'
0032 p = set(p, 'val', specwin(vobj));
0033 case 'miir'
0034 p = set(p, 'val', miir(vobj));
0035 case 'mfir'
0036 p = set(p, 'val', mfir(vobj));
0037 case 'pole'
0038 p = set(p, 'val', pole(vobj));
0039 case 'zero'
0040 p = set(p, 'val', zero(vobj));
0041 case 'pzmodel'
0042 p = set(p, 'val', pzmodel(vobj));
0043 case 'time'
0044 p = set(p, 'val', time(vobj));
0045 case 'timespan'
0046 p = set(p, 'val', timespan(vobj));
0047 otherwise
0048 error('### Unknown object in parameter value.');
0049 end
0050 else
0051
0052 valstr = char(x.getTextContent);
0053 if ~isempty(str2num(valstr))
0054 p = set(p, 'val', str2num(valstr));
0055 else
0056 p = set(p, 'val', valstr);
0057 end
0058 end
0059 otherwise
0060 end
0061 end
0062
0063
0064
0065