0001 function txt = display(p)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015 txt = {};
0016
0017 for i=1:length(p)
0018 banner = sprintf('---- param %d ----', i);
0019 txt{end+1} = banner;
0020
0021
0022 name = get(p(i), 'key');
0023 v = get(p(i), 'val');
0024
0025
0026 if ischar(v)
0027 sval = v;
0028 elseif islogical(v)
0029 if v == true
0030 sval = 'true';
0031 else
0032 sval = 'false';
0033 end
0034 elseif isnumeric(v)
0035 sval = '';
0036 if size(v,1) == 1 || size(v,2) == 1
0037 for j=1:min(length(v), 10)
0038 sval = [sval sprintf('%g ', v(j))];
0039 end
0040 if length(v) > 10
0041 sval = [sval '...'];
0042 end
0043 else
0044 sval = sprintf('Matrix [%dx%d]', size(v,1), size(v,2));
0045 end
0046 elseif isa(v, 'specwin');
0047 sval = char(v);
0048 elseif isa(v, 'miir');
0049 sval = char(v);
0050 elseif isa(v, 'time') || isa(v, 'timespan') || isa(v, 'timeformat')
0051 sval = char(v);
0052 elseif isa(v, 'mfir');
0053 sval = char(v);
0054
0055
0056
0057
0058 elseif isstruct(v)
0059 sval = v.name;
0060 elseif isa(v, 'ao') || isa(v, 'fsdata') || isa(v, 'tsdata') || isa(v, 'cdata')
0061 vinfo = whos('v');
0062 sval = [vinfo.class '-object'];
0063 elseif isa(v, 'pole') || isa(v, 'zero') || isa(v, 'pzmodel')
0064 sval = '';
0065 for j=1:length(v)
0066 sval = [sval ' ' char(v(j))];
0067 end
0068 elseif iscell(v)
0069 sval = '';
0070 for ii = 1:length(v)
0071 sval = [sval '''' v{ii} ''' '];
0072 end
0073 else
0074 error('### parameter has unknown type')
0075 end
0076
0077
0078 txt{end+1} = sprintf('key: %s\nval: %s', name, deblank(sval));
0079
0080 banner_end(1:length(banner)) = '-';
0081 txt{end+1} = banner_end;
0082
0083 end
0084
0085 if nargout == 0
0086 for ii=1:length(txt)
0087 disp(txt{ii});
0088 end
0089 end
0090
0091
0092