0001 function xml = xmladd(ds, xml, nodename, node)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 el = xml.docNode.createElement(nodename);
0012
0013 for j=1:length(ds)
0014
0015 d = ds(j);
0016
0017 elc = xml.docNode.createElement('fsdata');
0018
0019
0020 elcc = xml.docNode.createElement('name');
0021 elcc.appendChild(xml.docNode.createTextNode(d.name));
0022 elc.appendChild(elcc);
0023
0024
0025 elcc = xml.docNode.createElement('fs');
0026 elcc.appendChild(xml.docNode.createTextNode(ltpda_mat2str(d.fs)));
0027 elc.appendChild(elcc);
0028
0029
0030 elcc = xml.docNode.createElement('enbw');
0031 elcc.appendChild(xml.docNode.createTextNode(ltpda_mat2str(d.enbw)));
0032 elc.appendChild(elcc);
0033
0034
0035 elcc = xml.docNode.createElement('navs');
0036 elcc.appendChild(xml.docNode.createTextNode(ltpda_mat2str(d.navs)));
0037 elc.appendChild(elcc);
0038
0039
0040 elcc = xml.docNode.createElement('xunits');
0041 elcc.appendChild(xml.docNode.createTextNode(d.xunits));
0042 elc.appendChild(elcc);
0043
0044
0045 elcc = xml.docNode.createElement('yunits');
0046 elcc.appendChild(xml.docNode.createTextNode(d.yunits));
0047 elc.appendChild(elcc);
0048
0049
0050 elcc = xml.docNode.createElement('version');
0051 elcc.appendChild(xml.docNode.createTextNode(d.version));
0052 elc.appendChild(elcc);
0053
0054
0055 xml = xmladd(get(d, 'created'), xml, 'created', elc);
0056
0057 if isreal(d.y)
0058
0059 elcc = xml.docNode.createElement('dtype');
0060 elcc.appendChild(xml.docNode.createTextNode('real'));
0061 elc.appendChild(elcc);
0062
0063
0064 elcc = xml.docNode.createElement('data');
0065 x = d.y;
0066 nmin = getappdata(0, 'xmlsetsize');
0067 while ~isempty(x)
0068 elccc = xml.docNode.createElement('yset');
0069 n = min(length(x), nmin);
0070 elccc.appendChild(xml.docNode.createTextNode(ltpda_num2str(x(1:n))));
0071 x = x(n+1:end);
0072 elcc.appendChild(elccc);
0073 end
0074
0075 x = d.x;
0076 nmin = getappdata(0, 'xmlsetsize');
0077 while ~isempty(x)
0078 elccc = xml.docNode.createElement('xset');
0079 n = min(length(x), nmin);
0080 elccc.appendChild(xml.docNode.createTextNode(ltpda_num2str(x(1:n))));
0081 x = x(n+1:end);
0082 elcc.appendChild(elccc);
0083 end
0084 elc.appendChild(elcc);
0085 else
0086
0087 elcc = xml.docNode.createElement('dtype');
0088 elcc.appendChild(xml.docNode.createTextNode('complex'));
0089 elc.appendChild(elcc);
0090
0091
0092 elcc = xml.docNode.createElement('data');
0093 x = d.y;
0094 nmin = getappdata(0, 'xmlsetsize');
0095 while ~isempty(x)
0096 n = min(length(x), nmin);
0097 elccc = xml.docNode.createElement('ryset');
0098 elccc.appendChild(xml.docNode.createTextNode(ltpda_num2str(real(x(1:n)))));
0099 elcc.appendChild(elccc);
0100 elccc = xml.docNode.createElement('iyset');
0101 elccc.appendChild(xml.docNode.createTextNode(ltpda_num2str(imag(x(1:n)))));
0102 elcc.appendChild(elccc);
0103 x = x(n+1:end);
0104 end
0105
0106 x = d.x;
0107 nmin = getappdata(0, 'xmlsetsize');
0108 while ~isempty(x)
0109 elccc = xml.docNode.createElement('xset');
0110 n = min(length(x), nmin);
0111 elccc.appendChild(xml.docNode.createTextNode(ltpda_num2str(x(1:n))));
0112 x = x(n+1:end);
0113 elcc.appendChild(elccc);
0114 end
0115 elc.appendChild(elcc);
0116 end
0117
0118 el.appendChild(elc);
0119 end
0120
0121 node.appendChild(el);
0122
0123
0124