Mercurial > hg > ishara
annotate arrows/@loop/construct.m @ 0:672052bd81f8
Initial partial import.
author | samer |
---|---|
date | Wed, 19 Dec 2012 22:38:28 +0000 |
parents | |
children |
rev | line source |
---|---|
samer@0 | 1 function u=construct(s,sizes_in) |
samer@0 | 2 u=mkunit(s); |
samer@0 | 3 state=s.s0(sizes_in{1}); fn=s.fn; |
samer@0 | 4 u.sizes_out = guess_sizes(fn,sizes_in,state); |
samer@0 | 5 u.get_state = @get_state; |
samer@0 | 6 u.set_state = @set_state; |
samer@0 | 7 u.process = @proc; |
samer@0 | 8 |
samer@0 | 9 function out=proc(in), [out,state]=fn(in,state); end |
samer@0 | 10 function s=get_state, s=state; end |
samer@0 | 11 function set_state(s), state=s; end |
samer@0 | 12 end |
samer@0 | 13 |
samer@0 | 14 function sz_out=guess_sizes(fn,sz_in,st) |
samer@0 | 15 [out,s1] = fn(zeros(sz_in{1}),st); |
samer@0 | 16 sz_out = {size(out)}; |
samer@0 | 17 end |
samer@0 | 18 |