Home > classes > @param > private > fromxml.m

fromxml

PURPOSE ^

FROMXML read from part of an XML tree and create a param object.

SYNOPSIS ^

function p = fromxml(xml)

DESCRIPTION ^

 FROMXML read from part of an XML tree and create a param object.

 M Hewitson 28-08-07

 $Id:$

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function p = fromxml(xml)
0002 
0003 % FROMXML read from part of an XML tree and create a param object.
0004 %
0005 % M Hewitson 28-08-07
0006 %
0007 % $Id:$
0008 %
0009 
0010 % disp('---------------- param ------------------')
0011 % xml.getNodeName
0012 % disp('---------------- param ------------------')
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       % if this has children then there is probably an object
0025       % below this
0026       mych = x.getChildNodes;
0027       if mych.getLength > 1
0028         % get the object
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         % we have numeric or char parameter
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 % build plist
0064 
0065 % END

Generated on Mon 03-Sep-2007 12:12:34 by m2html © 2003