Merge branch 'dfsg-orig'
[debian/gnuradio] / gr-qtgui / src / lib / qtgui.i
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2008,2009 Free Software Foundation, Inc.
4  * 
5  * This file is part of GNU Radio
6  * 
7  * GNU Radio is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 3, or (at your option)
10  * any later version.
11  * 
12  * GNU Radio is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  * 
17  * You should have received a copy of the GNU General Public License
18  * along with GNU Radio; see the file COPYING.  If not, write to
19  * the Free Software Foundation, Inc., 51 Franklin Street,
20  * Boston, MA 02110-1301, USA.
21  */
22
23 %include "gnuradio.i"
24
25 %{
26 #include "qtgui_sink_c.h"
27 #include "qtgui_sink_f.h"
28 %}
29
30 GR_SWIG_BLOCK_MAGIC(qtgui,sink_c)
31
32   qtgui_sink_c_sptr qtgui_make_sink_c (int fftsize, int wintype,
33                                        double fc=0, double bw=1.0,
34                                        const std::string &name="Display",
35                                        bool plotfreq=true, bool plotwaterfall=true,
36                                        bool plotwaterfall3d=true, bool plottime=true,
37                                        bool plotconst=true,
38                                        bool use_openGL=true,
39                                        QWidget *parent=NULL);
40
41 class qtgui_sink_c : public gr_block
42 {
43 private:
44   friend qtgui_sink_c_sptr qtgui_make_sink_c (int fftsize, int wintype,
45                                               double fc, double bw,
46                                               const std::string &name,
47                                               bool plotfreq, bool plotwaterfall,
48                                               bool plotwaterfall3d, bool plottime,
49                                               bool plotconst,
50                                               bool use_openGL,
51                                               QWidget *parent);
52   qtgui_sink_c (int fftsize, int wintype,
53                 double fc, double bw,
54                 const std::string &name,
55                 bool plotfreq, bool plotwaterfall,
56                 bool plotwaterfall3d, bool plottime,
57                 bool plotconst,
58                 bool use_openGL,
59                 QWidget *parent);
60
61 public:
62   void exec_();
63   PyObject* pyqwidget();
64
65   void set_frequency_range(const double centerfreq,
66                            const double bandwidth);
67   void set_time_domain_axis(double min, double max);
68   void set_constellation_axis(double xmin, double xmax,
69                               double ymin, double ymax);
70   void set_frequency_axis(double min, double max);
71   void set_constellation_pen_size(int size);
72 };
73
74
75
76 /*********************************************************************/
77
78
79 GR_SWIG_BLOCK_MAGIC(qtgui,sink_f)
80   
81 qtgui_sink_f_sptr qtgui_make_sink_f (int fftsize, int wintype,
82                                      double fc=0, double bw=0.0,
83                                      const std::string &name="Display",
84                                      bool plotfreq=true, bool plotwaterfall=true,
85                                      bool plotwaterfall3d=true, bool plottime=true,
86                                      bool plotconst=true,
87                                      bool use_openGL=true,
88                                      QWidget *parent=NULL);
89
90 class qtgui_sink_f : public gr_block
91 {
92 private:
93   friend qtgui_sink_f_sptr qtgui_make_sink_f (int fftsize, int wintype,
94                                               double fc, double bw,
95                                               const std::string &name,
96                                               bool plotfreq, bool plotwaterfall,
97                                               bool plotwaterfall3d, bool plottime,
98                                               bool plotconst,
99                                               bool use_openGL,
100                                               QWidget *parent);
101   qtgui_sink_f (int fftsize, int wintype,
102                 double fc, double bw,
103                 const std::string &name,
104                 bool plotfreq, bool plotwaterfall,
105                 bool plotwaterfall3d, bool plottime,
106                 bool plotconst,
107                 bool use_openGL,
108                 QWidget *parent);
109
110 public:
111   void exec_();
112   PyObject* pyqwidget();
113
114   void set_frequency_range(const double centerfreq,
115                            const double bandwidth);
116   void set_time_domain_axis(double min, double max);
117   void set_constellation_axis(double xmin, double xmax,
118                               double ymin, double ymax);
119   void set_frequency_axis(double min, double max);
120   void set_constellation_pen_size(int size);
121 };
122