X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=gnuradio-core%2Fsrc%2Flib%2Fgeneral%2Fgr_fft_vcc.h;h=2ab9241ec3364f059bd57eef12fa7a3f6427ef25;hb=ea29b08aeb54227e6628f655ccfdb96fe4d8c378;hp=b8bb0733fb52ab380bc272bac8e610b55626fca7;hpb=09a1e803a9e6587c78d20cdf16891e5295874668;p=debian%2Fgnuradio diff --git a/gnuradio-core/src/lib/general/gr_fft_vcc.h b/gnuradio-core/src/lib/general/gr_fft_vcc.h index b8bb0733..2ab9241e 100644 --- a/gnuradio-core/src/lib/general/gr_fft_vcc.h +++ b/gnuradio-core/src/lib/general/gr_fft_vcc.h @@ -1,6 +1,6 @@ /* -*- c++ -*- */ /* - * Copyright 2004 Free Software Foundation, Inc. + * Copyright 2004,2007,2008 Free Software Foundation, Inc. * * This file is part of GNU Radio * @@ -25,38 +25,36 @@ #include -class gri_fft_complex; - class gr_fft_vcc; typedef boost::shared_ptr gr_fft_vcc_sptr; gr_fft_vcc_sptr -gr_make_fft_vcc (int fft_size, bool forward, const std::vector window); +gr_make_fft_vcc (int fft_size, bool forward, const std::vector &window, bool shift=false); /*! * \brief Compute forward or reverse FFT. complex vector in / complex vector out. - * \ingroup block + * \ingroup dft_blk + * + * Abstract base class */ - class gr_fft_vcc : public gr_sync_block { +protected: friend gr_fft_vcc_sptr - gr_make_fft_vcc (int fft_size, bool forward, const std::vector window); + gr_make_fft_vcc (int fft_size, bool forward, const std::vector &window, bool shift); - unsigned int d_fft_size; + unsigned int d_fft_size; std::vector d_window; - gri_fft_complex *d_fft; + bool d_forward; + bool d_shift; - gr_fft_vcc (int fft_size, bool forward, const std::vector window); + gr_fft_vcc (const std::string &name, int fft_size, bool forward, + const std::vector &window, bool shift); public: ~gr_fft_vcc (); - int work (int noutput_items, - gr_vector_const_void_star &input_items, - gr_vector_void_star &output_items); - bool set_window(const std::vector window); + bool set_window(const std::vector &window); }; - #endif /* INCLUDED_GR_FFT_VCC_H */