ISFIELD tests if the given field is one of the object properties. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% DESCRIPTION: ISFIELD tests if the given field is one of the object properties. CALL: isfield(a, 'field'); The following call returns a parameter list object that contains the default parameter values: >> pl = isfield(tsdata, 'Params') The following call returns the cvs version number: >> ver = isfield(tsdata, 'Version') The following call returns the category: >> category = isfield(ao, 'Category') VERSION: $Id: isfield.m,v 1.4 2008/02/15 16:27:16 mauro Exp $ HISTORY: 25-09-07 M Hewitson Creation %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0001 function varargout = isfield(varargin) 0002 % ISFIELD tests if the given field is one of the object properties. 0003 % 0004 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0005 % 0006 % DESCRIPTION: ISFIELD tests if the given field is one of the object 0007 % properties. 0008 % 0009 % CALL: isfield(a, 'field'); 0010 % 0011 % The following call returns a parameter list object that 0012 % contains the default parameter values: 0013 % >> pl = isfield(tsdata, 'Params') 0014 % 0015 % The following call returns the cvs version number: 0016 % >> ver = isfield(tsdata, 'Version') 0017 % 0018 % The following call returns the category: 0019 % >> category = isfield(ao, 'Category') 0020 % 0021 % VERSION: $Id: isfield.m,v 1.4 2008/02/15 16:27:16 mauro Exp $ 0022 % 0023 % HISTORY: 25-09-07 M Hewitson 0024 % Creation 0025 % 0026 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0027 0028 VERSION = '$Id: isfield.m,v 1.4 2008/02/15 16:27:16 mauro Exp $'; 0029 CATEGORY = 'Helper'; 0030 0031 % 'Params' Call 0032 if nargin == 2 && isa(varargin{1}, 'tsdata') && ischar(varargin{2}) 0033 in = char(varargin{2}); 0034 if strcmp(in, 'Params') 0035 varargout{1} = plist(); 0036 return 0037 elseif strcmp(in, 'Version') 0038 varargout{1} = VERSION; 0039 return 0040 elseif strcmp(in, 'Category') 0041 varargout{1} = CATEGORY; 0042 return 0043 end 0044 end 0045 0046 as = []; 0047 field = ''; 0048 for j=1:nargin 0049 if isa(varargin{j}, 'tsdata') 0050 as = [as varargin{j}]; 0051 end 0052 if ischar(varargin{j}) 0053 field = varargin{j}; 0054 end 0055 end 0056 0057 res = zeros(size(as)); 0058 for j=1:numel(as) 0059 try 0060 t = as(j).(field); 0061 res(j) = 1; 0062 catch 0063 res(j) = 0; 0064 end 0065 end 0066 0067 varargout{1} = res; 0068