samer@4: function f=pauser(varargin) samer@4: % pauser - Return function to pause or not depending on options samer@4: % samer@4: % pauser :: options { samer@4: % pause :: natural/0 ~'0 for no pause, 1 pause, >10 for ms pause'; samer@4: % drawnow :: {0,1}/1 ~'call drawnow to flush graphics' samer@4: % } -> (void => void) ~'function to pause or not'. samer@4: % samer@4: % pauser(opts) returns a function that does exactly what optpause(opts) samer@4: % does. samer@4: samer@37: opt=options(varargin{:}); samer@4: ps=getparam(opt,'pause',0); samer@4: dn=getparam(opt,'drawnow',1); samer@4: if ps, samer@4: if ps<10, f=@pause; samer@4: else wait=ps/1000; f=@()pause(wait); samer@4: end samer@4: elseif dn, f=@drawnow; samer@4: else f=@nop; samer@4: end