Mercurial > hg > ishara
diff sched/timed_action.m @ 2:7357e1dc2ad6
Simplified scheduler library with new schedule representation.
author | samer |
---|---|
date | Sat, 22 Dec 2012 16:17:51 +0000 |
parents | 672052bd81f8 |
children | 0ce3c2070089 |
line wrap: on
line diff
--- a/sched/timed_action.m Wed Dec 19 22:46:05 2012 +0000 +++ b/sched/timed_action.m Sat Dec 22 16:17:51 2012 +0000 @@ -1,9 +1,20 @@ -function a0=timed_action(x) +% timed_action - return action function that checks the time +% +% timed_action :: +% (A1, A2, ... => B1, B2, ...) ~'some action', +% -> timed_action({A1,A2,...},{B1,B2,...}). +function a0=timed_action(x,varargin) + opts=prefs('print',0,'errorfn',@(t)nows-t,varargin{:}); + if opts.print, a0=@aa_print; else a0=@aa; end + errfn=opts.errorfn; - a0=@aa; - - function [a1,tt]=aa(t0,ta), - a1=x(t0); - tt=nows; + function varargout=aa_print(t0,varargin), + varargout{1}=errfn(t0); + [varargout{2:nargout}]=x(varargin{:}); + fprintf('timed_action: error=%g\n',varargout{1}); + end + function varargout=aa(t0,varargin), + varargout{1}=errfn(t0); + [varargout{2:nargout}]=x(varargin{:}); end end