Mercurial > hg > ishara
annotate signals/@sigconst/sigconst.m @ 1:289445d368a7
import.
author | samer |
---|---|
date | Wed, 19 Dec 2012 22:46:05 +0000 |
parents | |
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 |