Fixes a lot of warnings by cleaning up namespace issues.
[debian/gnuradio] / gr-qtgui / src / lib / qtgui_sink_c.h
index 0b3ba99e27e124a242ae9fd6d0700df6d6f13ab5..9aee665031169d523bc13798f82af10ce260c89c 100644 (file)
 #ifndef INCLUDED_QTGUI_SINK_C_H
 #define INCLUDED_QTGUI_SINK_C_H
 
+#include <Python.h>
 #include <gr_block.h>
 #include <gr_firdes.h>
 #include <gri_fft.h>
 #include <qapplication.h>
 #include <qtgui.h>
-#include <Python.h>
 #include "SpectrumGUIClass.h"
 
 class qtgui_sink_c;
 typedef boost::shared_ptr<qtgui_sink_c> qtgui_sink_c_sptr;
 
 qtgui_sink_c_sptr qtgui_make_sink_c (int fftsize, int wintype,
-                                    float fmin=-0.5, float fmax=0.5,
+                                    double fc=0, double bandwidth=1.0,
                                     const std::string &name="Spectrum Display",
                                     bool plotfreq=true, bool plotwaterfall=true,
                                     bool plotwaterfall3d=true, bool plottime=true,
@@ -47,7 +47,7 @@ class qtgui_sink_c : public gr_block
 {
 private:
   friend qtgui_sink_c_sptr qtgui_make_sink_c (int fftsize, int wintype,
-                                             float fmin, float fmax,
+                                             double fc, double bw,
                                              const std::string &name,
                                              bool plotfreq, bool plotwaterfall,
                                              bool plotwaterfall3d, bool plottime,
@@ -55,7 +55,7 @@ private:
                                              bool use_openGL,
                                              QWidget *parent);
   qtgui_sink_c (int fftsize, int wintype,
-               float fmin, float fmax
+               double fc, double bw
                const std::string &name,
                bool plotfreq, bool plotwaterfall,
                bool plotwaterfall3d, bool plottime,
@@ -63,35 +63,38 @@ private:
                bool use_openGL,
                QWidget *parent);
 
+  void forecast(int noutput_items, gr_vector_int &ninput_items_required);
+
   // use opengl to force OpenGL on or off
   // this might be necessary for sessions over SSH
-  void initialize(const bool opengl);
+  void initialize(const bool opengl=true);
 
   int d_fftsize;
   gr_firdes::win_type d_wintype;
   std::vector<float> d_window;
-  float d_fmin;
-  float d_fmax;
+  double d_center_freq;
+  double d_bandwidth;
   std::string d_name;
   
   pthread_mutex_t d_pmutex;
 
   bool d_shift;
   gri_fft_complex *d_fft;
-  gr_complex *d_fftdata;
 
   int d_index;
   gr_complex *d_residbuf;
 
-  bool d_plotfreq, d_plotwaterfall, d_plotwaterfall3d, d_plottime, d_plotconst;
+  bool d_plotfreq, d_plotwaterfall, d_plottime, d_plotconst;
   
+  double d_update_time;
+
   QWidget *d_parent;
   SpectrumGUIClass *d_main_gui;
 
   void windowreset();
   void buildwindow();
   void fftresize();
-  void fft(const gr_complex *data_in, int size, gr_complex *data_out);
+  void fft(const gr_complex *data_in, int size);
   
 public:
   ~qtgui_sink_c();
@@ -102,14 +105,16 @@ public:
   PyObject* pyqwidget();
 
   void set_frequency_range(const double centerfreq,
-                          const double startfreq,
-                          const double stopfreq);
+                          const double bandwidth);
 
   void set_time_domain_axis(double min, double max);
   void set_constellation_axis(double xmin, double xmax,
                              double ymin, double ymax);
+  void set_constellation_pen_size(int size);
   void set_frequency_axis(double min, double max);
 
+  void set_update_time(double t);
+
   QApplication *d_qApplication;
   qtgui_obj *d_object;