| 248 | } |
| 249 | |
| 250 | void FFT::run(const span<const fl::i16> &sample, Bins *out, |
| 251 | const Args &args) { |
| 252 | Args args2 = args; |
| 253 | args2.samples = sample.size(); |
| 254 | // Fetch cached impl (thread-safe), then run FFT outside the lock. |
| 255 | fl::shared_ptr<Impl> impl = globalCache().get_or_create(args2); |
| 256 | impl->run(sample, out); |
| 257 | } |
| 258 | |
| 259 | void FFT::clear() { globalCache().clear(); } |
| 260 |
no test coverage detected