annotate signals/@sigconst/sigconst.m @ 61:eff6bddf82e3 tip

Finally implemented perceptual brightness thing.
author samer
date Sun, 11 Oct 2015 10:20:42 +0100
parents 289445d368a7
children
rev   line source
samer@1 1 classdef sigconst < signal
samer@1 2 properties (GetAccess=private, SetAccess=immutable)
samer@1 3 val
samer@1 4 fs
samer@1 5 end
samer@1 6 methods
samer@1 7 function s=sigconst(val,rate)
samer@1 8 if nargin<2, rate=nan; end
samer@1 9 s.val=reshape(val,size(val,1),1);
samer@1 10 s.fs=rate;
samer@1 11 end
samer@1 12
samer@1 13 function s=tostring(sig), s=sprintf('sigconst(%s)',mat2str(sig.val)); end
samer@1 14 function c=channels(s), c=size(s.val,1); end
samer@1 15 function c=rate(s), c=s.fs; end
samer@1 16 function s=construct(sig)
samer@1 17 s.start = @nop;
samer@1 18 s.stop = @nop;
samer@1 19 s.dispose = @nop;
samer@1 20 s.reader = @reader;
samer@1 21
samer@1 22 function r=reader(n)
samer@1 23 r = @next;
samer@1 24 buf=repmat(sig.val,1,double(n));
samer@1 25 function [x,rem]=next, x=buf; rem=0; end
samer@1 26 end
samer@1 27 end
samer@1 28 end
samer@1 29 end