Mercurial > hg > ltpda
diff m-toolbox/test/new_plot/collect_inputs.m @ 0:f0afece42f48
Import.
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Wed, 23 Nov 2011 19:22:13 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/m-toolbox/test/new_plot/collect_inputs.m Wed Nov 23 19:22:13 2011 +0100 @@ -0,0 +1,60 @@ +function [aos, pls, invars] = collect_inputs(varargin, in_names) +% COLLECT_INPUTS Collect the AOs and Plists. +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% DESCRIPTION: COLLECT_INPUTS Collect the AOs and Plists. +% +% CALL: [aos, pls, invars] = collect_inputs(varargin, in_names); +% +% INPUTS: varargin: A list of analysis objects (ao's) and +% parameter lists (plist's) +% in_names: Corresponding variable names of the contents in +% varargin +% +% OUTPUTS: aos: Collection of all analysis objects +% pls: Collection of parameter lists +% invars: Collection of the ao names of the corresponding ao. +% +% VERSION: $Id: collect_inputs.m,v 1.1 2007/12/24 19:51:00 hewitson Exp $ +% +% HISTORY: 08-05-07 Diepholz +% Creation +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +% dd1 = dbstack +% dd2 = dbstatus + +aos = []; +invars = {}; +pls = plist(); + +%% collect input ao's, plist's and ao variable names + +for j=1:numel(varargin) + + if isa(varargin{j}, 'ao') + aos = [aos varargin{j}]; + + ao_name = in_names{j}; + if isempty(ao_name) + ao_name = 'no_ao_name'; + end + + % Memorise the variable name of the corresponding analysis object. + % If the ao is an array or vector add the index to the variable name + if numel(varargin{j}) == 1 + invars{end+1} = ao_name; + else + for ii=1:numel(varargin{j}) + [I,J] = ind2sub(size(varargin{j}),ii); + invars{end+1} = sprintf('%s(%d,%d)', ao_name, I, J); + end + end + end + if isa(varargin{j}, 'plist') + pls = [pls varargin{j}]; + end +end