39 |
* |
* |
40 |
*******************************************************************/ |
*******************************************************************/ |
41 |
#include <iostream> |
#include <iostream> |
42 |
|
#include <string.h> |
43 |
#include "discsignal.hh" |
#include "discsignal.hh" |
44 |
|
|
45 |
DiscSignal &DiscSignal::add ( DiscSignal &src1, DiscSignal &src2 ) |
DiscSignal &DiscSignal::add ( DiscSignal &src1, DiscSignal &src2 ) |
94 |
return *res; |
return *res; |
95 |
} |
} |
96 |
|
|
97 |
|
DiscSignal &DiscSignal::windowing( unsigned fst, unsigned snd ) const |
98 |
|
{ |
99 |
|
assert(fst > 0 && snd > 0 && snd > fst); |
100 |
|
|
101 |
|
if (snd > this->length()) |
102 |
|
snd = length(); |
103 |
|
double *dres = (double*) memcpy(dres, (this->get_data() + fst), snd - fst); |
104 |
|
DiscSignal *res = new DiscSignal(dres, snd - fst); |
105 |
|
return *res; |
106 |
|
} |
107 |
|
|
108 |
DiscSignal &DiscSignal::hamming (DiscSignal &src) |
DiscSignal &DiscSignal::hamming (DiscSignal &src) |
109 |
{ |
{ |
110 |
int it; |
int it; |