Moved baseband temporary buffers back into class member variables.

Significant performance hit when declaring on stack. C++ wants to initialize std::array or even raw array with element constructors, was resulting in ~7% CPU utilization, for a buffer that was immediately written over anyway.
This commit is contained in:
Jared Boone 2016-01-03 22:31:44 -08:00
parent 5547782f5a
commit d9017530c6
10 changed files with 42 additions and 45 deletions

View file

@ -47,6 +47,12 @@ public:
void execute(const buffer_c8_t& buffer) override;
private:
std::array<complex16_t, 512> dst;
const buffer_c16_t dst_buffer {
dst.data(),
dst.size()
};
dsp::decimate::FIRC8xR16x24FS4Decim8 decim_0;
dsp::decimate::FIRC16xR16x32Decim8 decim_1;
dsp::matched_filter::MatchedFilter mf { baseband::ais::rrc_taps_38k4_4t_p, 2 };