0001 function pl = plist(varargin)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 ALGONAME = mfilename;
0015 VERSION = '$Id: plist.html,v 1.2 2007/07/10 05:37:11 hewitson Exp $';
0016
0017 if nargin == 0
0018 pl.params = [];
0019 pl.version = VERSION;
0020 pl = class(pl, 'plist');
0021 elseif nargin == 1
0022 if isstruct(varargin{1})
0023 plstruct = varargin{1};
0024 pi = plstruct.params;
0025 params = [];
0026 for j=1:length(pi)
0027 if isstruct(pi(j))
0028 params = [params param(pi(j))];
0029 elseif isa(pi(j), 'param')
0030 params = [params pi(j)];
0031 else
0032 error ('### the parameter is not from class param.')
0033 end
0034 end
0035 pl.params = params;
0036 pl.version = plstruct.version;
0037 pl = class(pl, 'plist');
0038 else
0039 pl.params = varargin{1};
0040 pl.version = VERSION;
0041 pl = class(pl, 'plist');
0042 end
0043 else
0044 error('### Unknown number of constructor arguments.');
0045 end
0046
0047
0048
0049
0050