diff options
Diffstat (limited to 'macros/stft.sci')
-rw-r--r-- | macros/stft.sci | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/macros/stft.sci b/macros/stft.sci new file mode 100644 index 0000000..01d8f9b --- /dev/null +++ b/macros/stft.sci @@ -0,0 +1,54 @@ +function [y,c]= stft(x, varargin) + +funcprot(0); +lhs= argn(1); +rhs= argn(2); + +if(rhs <1 | rhs>5) + error("Wrong number of input arguments"); +end + +if(lhs<1 | lhs>2) + error("Wrong number of output arguments"); +end + +select(rhs) + case 1 then + select(lhs) + case 1 then + y= callOctave("stft", x); + case 2 then + [y,c]= callOctave("stft", x); + end + case 2 then + select(lhs) + case 1 then + y= callOctave("stft", x,varargin(1)); + case 2 then + [y,c]= callOctave("stft", x, varargin(1)); + end + case 3 then + select(lhs) + case 1 then + y= callOctave("stft", x,varargin(1), varargin(2)); + case 2 then + [y,c]= callOctave("stft", x,varargin(1), varargin(2)); + end + case 4 then + select(lhs) + case 1 then + y= callOctave("stft", x,varargin(1), varargin(2), varargin(3)); + case 2 then + [y,c]= callOctave("stft", x,varargin(1), varargin(2), varargin(3)); + end + case 5 then + select(lhs) + case 1 then + y= callOctave("stft", x,varargin(1), varargin(2), varargin(3), varargin(4)); + case 2 then + [y,c]= callOctave("stft", x,varargin(1), varargin(2), varargin(3), varargin(4)); + end +end +endfunction + + |