annotate general/algo/iterate_sched.m @ 61:eff6bddf82e3 tip

Finally implemented perceptual brightness thing.
author samer
date Sun, 11 Oct 2015 10:20:42 +0100
parents e44f49929e56
children
rev   line source
samer@4 1 function tm=iterate_sched(nextfn,X,T,varargin)
samer@4 2 % iterate_sched - Iterate function under control of timer
samer@4 3 %
samer@4 4 % iterate_sched ::
samer@4 5 % (A=>A) ~'state transformer action',
samer@4 6 % A ~'initial state',
samer@4 7 % real ~'time between updates in seconds'
samer@4 8 % options {
samer@4 9 % drawnow :: {0,1} /0 ~'call drawnow after each iteration';
samer@4 10 % busy_mode :: {'queue','drop'} /'queue' ~'See TIMER';
samer@4 11 % its :: natural / inf ~'iteration limit'
samer@4 12 % -> timer.
samer@4 13
samer@4 14 opts=prefs('its',inf,'drawnow',0,'busy_mode','queue','props',{},varargin{:});
samer@4 15 if opts.drawnow, post=@drawnow; else post=@nop; end
samer@4 16
samer@4 17 tm=rsched(@action,nows,T,opts.its,iterdata(nextfn,X));
samer@4 18 function [err,s]=action(t_sched,dt,s)
samer@4 19 err=nows-t_sched;
samer@4 20 s=nextfn(s);
samer@4 21 post();
samer@4 22 end
samer@4 23 end
samer@4 24