Home > classes > @xyzdata > set.m

set

PURPOSE ^

SET sets an xyzdata property.

SYNOPSIS ^

function xyz = set(xyz, varargin)

DESCRIPTION ^

 SET sets an xyzdata property.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

 DESCRIPTION: SET sets an xyzdata property.

 CALL: c = set(c, 'name',    'my_name');
       c = set(c, 'x',        X);
       c = set(c, 'x',       [1 2 3]);
       c = set(c, 'y',        Y);
       c = set(c, 'y',       [1 2 3]);
       c = set(c, 'z',        Z);
       c = set(c, 'z',       [1 2 3]);
       c = set(c, 'xunits',  's');
       c = set(c, 'yunits',  'Hz');
       c = set(c, 'zunits',  'V');
       c = set(c, 'created',  time());
       c = set(c, 'version', 'xyzdata/set.m,v 1.7...');

 VERSION: $Id: set.m,v 1.1 2007/12/24 19:47:06 hewitson Exp $

 HISTORY: 24-12-07 M Hewitson
             Creation

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function xyz = set(xyz, varargin)
0002 % SET sets an xyzdata property.
0003 %
0004 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0005 %
0006 % DESCRIPTION: SET sets an xyzdata property.
0007 %
0008 % CALL: c = set(c, 'name',    'my_name');
0009 %       c = set(c, 'x',        X);
0010 %       c = set(c, 'x',       [1 2 3]);
0011 %       c = set(c, 'y',        Y);
0012 %       c = set(c, 'y',       [1 2 3]);
0013 %       c = set(c, 'z',        Z);
0014 %       c = set(c, 'z',       [1 2 3]);
0015 %       c = set(c, 'xunits',  's');
0016 %       c = set(c, 'yunits',  'Hz');
0017 %       c = set(c, 'zunits',  'V');
0018 %       c = set(c, 'created',  time());
0019 %       c = set(c, 'version', 'xyzdata/set.m,v 1.7...');
0020 %
0021 % VERSION: $Id: set.m,v 1.1 2007/12/24 19:47:06 hewitson Exp $
0022 %
0023 % HISTORY: 24-12-07 M Hewitson
0024 %             Creation
0025 %
0026 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0027 
0028 VERSION  = '$Id: set.m,v 1.1 2007/12/24 19:47:06 hewitson Exp $';
0029 
0030 % Check if this is a call for parameters
0031 if nargin == 2
0032   if ischar(varargin{2})
0033     in = char(varargin{2});
0034     if strcmp(in, 'Params')
0035       xyz = plist;
0036       return
0037     elseif strcmp(in, 'Version')
0038       xyz = VERSION;
0039       return
0040     end
0041   end
0042 end
0043 
0044 if (nargout ~= 0)
0045 
0046   propArgin = varargin;
0047 
0048   while length(propArgin) >= 2
0049     prop = propArgin{1};
0050     val  = propArgin{2};
0051     propArgin = propArgin(3:end);
0052     switch prop
0053       case 'name'
0054         xyz.name = val;
0055       case 'created'
0056         xyz.created = val;
0057       case 'version'
0058         xyz.version = val;
0059       case 'z'
0060         xyz.z = val;
0061       case 'y'
0062         xyz.y = val;
0063       case 'x'
0064         xyz.x = val;
0065       case 'xunits'
0066         xyz.xunits = val;
0067       case 'yunits'
0068         xyz.yunits = val;
0069       case 'zunits'
0070         xyz.zunits = val;
0071       otherwise
0072         error([val, ' is not a property of xyzdata class']);
0073     end
0074   end
0075 
0076 else
0077   if ischar(varargin{2})
0078     error('### please use: %s = set(%s, ''%s'', ''%s'');', ...
0079                         inputname(1), ...
0080                         inputname(1), ...
0081                         varargin{1},  ...
0082                         varargin{2});
0083   elseif isnumeric(varargin{2})
0084     error('### please use: %s = set(%s, ''%s'', %d);', ...
0085                         inputname(1), ...
0086                         inputname(1), ...
0087                         varargin{1},  ...
0088                         varargin{2});
0089   else
0090     error('### please use: %s = set(%s, ''key'', ''value'');', ...
0091                         inputname(1), ...
0092                         inputname(1));
0093   end
0094 end

Generated on Tue 22-Jan-2008 10:39:13 by m2html © 2003