Changeset 3094
- Timestamp:
- 03/12/07 15:16:57 (6 years ago)
- Location:
- SigProc/trunk/SigProc
- Files:
-
- 2 modified
-
SigProc.h (modified) (1 diff)
-
filters.cpp (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
SigProc/trunk/SigProc/SigProc.h
r3089 r3094 310 310 unsigned int h_len; 311 311 312 /// circular input buffer (header ptr)312 /// circular input buffer 313 313 short *v; 314 314 -
SigProc/trunk/SigProc/filters.cpp
r3089 r3094 197 197 // the correct length of each filter in the bank. 198 198 v = new short[h_len]; 199 200 // memset input buffer to zeros 201 ResetBuffer(); 199 202 200 203 } … … 218 221 219 222 v = new short[h_len]; 223 224 // memset input buffer to zeros 225 ResetBuffer(); 220 226 } 221 227 … … 274 280 for (unsigned int i=0; i<h_len; i++) 275 281 { 276 // Decrement read index277 i_read = (--i_read) % h_len;278 279 282 // Accumulate (apply filter) 280 283 yf += float( v[i_read] ) * H[B+i]; 281 284 285 // Increment read index 286 i_read++; 287 i_read = i_read % h_len; 282 288 } 283 289 … … 295 301 void SigProc::FIRPolyphaseFilterBank::ResetBuffer() 296 302 { 297 memset(v, 0, h_len); 303 // overwrite input buffer with zeros 304 memset(v, 0, sizeof(short) * h_len); 298 305 } 299 306