view arrows/@aparallel/aparallel.m @ 6:0ce3c2070089

Removed duplicate code and fixed doc in timed_action.
author samer
date Mon, 14 Jan 2013 14:33:37 +0000
parents 672052bd81f8
children 5de03f77dae1
line wrap: on
line source
% aparallel - Parallel application of arrows to multiple inputs
%
% aparallel :: 
%    arrow( A1:arglist(N1), B1:arglist(M1), C1) ~'arrow with N1 inputs, M1 outputs',
%	  arrow( A2:arglist(N2), B2:arglist(M2), C2) ~'arrow with N2 inputs, M2 outputs',
% -> arrow( [A1,A2], [B1,B2],cell {C1,C2})      ~'arrow with N1+N2 ins, M1+M2 outs'.
%
% The list of inputs of the second arrow is concatenated to those
% of the first. Ditto the ouputs. State is cell array pair of
% states of the two component arrows.

function o=aparallel(a1,a2)
	s.a1=a1;
	s.a2=a2;
	o=class(s,'aparallel',arrow(nargin(a1)+nargin(a2),nargout(a1)+nargout(a2)));
end