CONJ overloads the conjugate operator for Analysis objects. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% DESCRIPTION: CONJ overloads the conjugate operator for Analysis objects. CALL: a_conj = conj VERSION: $Id: conj.m,v 1.23 2008/09/05 11:15:19 ingo Exp $ M-FILE INFO: Get information about this methods by calling >> ao.getInfo('conj') Get information about a specified set-plist by calling: >> ao.getInfo('conj', 'None') HISTORY: 12-03-07 M Hewitson Creation %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0001 % CONJ overloads the conjugate operator for Analysis objects. 0002 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0003 % 0004 % DESCRIPTION: CONJ overloads the conjugate operator for Analysis objects. 0005 % 0006 % CALL: a_conj = conj 0007 % 0008 % VERSION: $Id: conj.m,v 1.23 2008/09/05 11:15:19 ingo Exp $ 0009 % 0010 % M-FILE INFO: Get information about this methods by calling 0011 % >> ao.getInfo('conj') 0012 % 0013 % Get information about a specified set-plist by calling: 0014 % >> ao.getInfo('conj', 'None') 0015 % 0016 % HISTORY: 12-03-07 M Hewitson 0017 % Creation 0018 % 0019 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 0020 0021 function varargout = conj(varargin) 0022 0023 % Check if this is a call for parameters 0024 if utils.helper.isinfocall(varargin{:}) 0025 varargout{1} = getInfo(varargin{3}); 0026 return 0027 end 0028 0029 import utils.const.* 0030 utils.helper.msg(msg.MNAME, 'running %s/%s', mfilename('class'), mfilename); 0031 0032 % Collect input variable names 0033 in_names = cell(size(varargin)); 0034 for ii = 1:nargin,in_names{ii} = inputname(ii);end 0035 0036 % Collect all AOs and plists 0037 [as, ao_invars] = utils.helper.collect_objects(varargin(:), 'ao', in_names); 0038 [pl, pl_invars] = utils.helper.collect_objects(varargin(:), 'plist', in_names); 0039 0040 % Decide on a deep copy or a modify 0041 bs = copy(as, nargout); 0042 0043 % Combine plists 0044 pl = combine(pl, getDefaultPlist); 0045 0046 % Apply method to all AOs 0047 applymethod(bs, ao_invars, 'conj', pl, getDefaultPlist(), getInfo()); 0048 0049 % Reshape the ouput to the same size of the input 0050 if nargout > 0 0051 varargout{1} = bs; 0052 end 0053 end 0054 0055 %-------------------------------------------------------------------------- 0056 % Get Info Object 0057 %-------------------------------------------------------------------------- 0058 function ii = getInfo(varargin) 0059 if nargin == 1 && strcmpi(varargin{1}, 'None') 0060 sets = {}; 0061 pl = []; 0062 else 0063 sets = {'Default'}; 0064 pl = getDefaultPlist; 0065 end 0066 % Build info object 0067 ii = minfo(mfilename, 'ao', '', utils.const.categories.op, '$Id: conj.m,v 1.23 2008/09/05 11:15:19 ingo Exp $', sets, pl); 0068 end 0069 0070 %-------------------------------------------------------------------------- 0071 % Get Default Plist 0072 %-------------------------------------------------------------------------- 0073 function pl_default = getDefaultPlist() 0074 pl_default = plist('axis', 'y'); 0075 end 0076