Fftw::~Fftw()
{
- fftwf_destroy_plan(plan_f);
- fftwf_destroy_plan(plan_fw);
- fftwf_destroy_plan(plan_i_1ch);
+ if (plan_f) fftwf_destroy_plan(plan_f);
+ if (plan_fw) fftwf_destroy_plan(plan_fw);
+ if (plan_i_1ch) fftwf_destroy_plan(plan_i_1ch);
#ifdef BIG_BATCH
- fftwf_destroy_plan(plan_f_all_scales);
- fftwf_destroy_plan(plan_fw_all_scales);
- fftwf_destroy_plan(plan_i_all_scales);
+ if (plan_f_all_scales) fftwf_destroy_plan(plan_f_all_scales);
+ if (plan_fw_all_scales) fftwf_destroy_plan(plan_fw_all_scales);
+ if (plan_i_all_scales) fftwf_destroy_plan(plan_i_all_scales);
#endif
}
private:
cv::Mat m_window;
- fftwf_plan plan_f, plan_fw, plan_i_1ch;
+ fftwf_plan plan_f = 0, plan_fw = 0, plan_i_1ch = 0;
#ifdef BIG_BATCH
- fftwf_plan plan_f_all_scales, plan_fw_all_scales, plan_i_all_scales;
+ fftwf_plan plan_f_all_scales = 0, plan_fw_all_scales = 0, plan_i_all_scales = 0;
#endif
};