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 elseif isempty(v)
0044 sval = '[]';
0045 else
0046 sval = sprintf('Matrix [%dx%d]', size(v,1), size(v,2));
0047 end
0048 elseif isa(v, 'specwin');
0049 sval = char(v);
0050 elseif isa(v, 'miir');
0051 sval = char(v);
0052 elseif isa(v, 'time') || isa(v, 'timespan') || isa(v, 'timeformat')
0053 sval = char(v);
0054 elseif isa(v, 'mfir');
0055 sval = char(v);
0056
0057
0058
0059
0060 elseif isstruct(v)
0061 sval = v.name;
0062 elseif isa(v, 'ao') || isa(v, 'fsdata') || isa(v, 'tsdata') || isa(v, 'cdata')
0063 vinfo = whos('v');
0064 sval = [vinfo.class '-object'];
0065 elseif isa(v, 'pole') || isa(v, 'zero') || isa(v, 'pzmodel')
0066 sval = '';
0067 for j=1:length(v)
0068 sval = [sval ' ' char(v(j))];
0069 end
0070 elseif iscell(v)
0071 sval = '';
0072 for ii = 1:length(v)
0073 sval = [sval '''' v{ii} ''' '];
0074 end
0075 else
0076 error('### parameter has unknown type')
0077 end
0078
0079
0080 txt{end+1} = sprintf('key: %s\nval: %s', name, deblank(sval));
0081
0082 banner_end(1:length(banner)) = '-';
0083 txt{end+1} = banner_end;
0084
0085 end
0086
0087 if nargout == 0
0088 for ii=1:length(txt)
0089 disp(txt{ii});
0090 end
0091 end
0092
0093
0094