annotate arrows/@asink/construct.m @ 2:7357e1dc2ad6

Simplified scheduler library with new schedule representation.
author samer
date Sat, 22 Dec 2012 16:17:51 +0000
parents 672052bd81f8
children ae596261e75f
rev   line source
samer@0 1 function u=construct(s,sizes_in)
samer@0 2 u=mkunit(s);
samer@0 3 if sizes_in{1}(1)~=channels(s.sink)
samer@0 4 error('Number of rows in input does not match channels in sink');
samer@0 5 end
samer@0 6 snk=construct(s.sink);
samer@0 7
samer@0 8 if isempty(s.window),
samer@0 9 write=snk.writer(sizes_in{1}(2));
samer@0 10 u.process=@proc1;
samer@0 11 else
samer@0 12 WIN=s.window;
samer@0 13 write=snk.writer(length(WIN));
samer@0 14 u.process=@proc2;
samer@0 15 end
samer@0 16
samer@0 17 u.sizes_out = {};
samer@0 18 u.dispose = snk.dispose;
samer@0 19 u.starting = snk.start;
samer@0 20 u.stopping = snk.stop;
samer@0 21
samer@0 22 function proc1(x), write(x); end
samer@0 23 function proc2(x), write(x(:,WIN)); end
samer@0 24 end
samer@0 25