Mercurial > hg > ishara
diff sequences/@data/buffer.m @ 0:672052bd81f8
Initial partial import.
author | samer |
---|---|
date | Wed, 19 Dec 2012 22:38:28 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sequences/@data/buffer.m Wed Dec 19 22:38:28 2012 +0000 @@ -0,0 +1,15 @@ +function o=buffer(source,n,m,varargin) +% BUFFER - Buffer abstract data object +% +% buffer :: (source:data, frame:natural, overlap:natural)->data +% Works exactly like the usual buffer function but when applied +% to a data object, returns a fndata object. + +args=[{n,m} varargin]; +o=fndata(@(z)buf(args,z),source,'charfn',@(o)charfn(n,n-m,o)); + +function x=buf(args,y) + x=buffer(y,args{:}); + +function s=charfn(n,m,o) + s=sprintf('%s >> buffer(%d/%d)',tostring(source(o)),n,m);