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
|