switch source package format to 3.0 quilt
[debian/gnuradio] / gnuradio-core / src / lib / swig / gnuradio.i
index b8c58538cd4b55578cadaa1552b0c6ed64055b26..7d0241f1c237f22eccb83808cf4de7dc6c562e54 100644 (file)
@@ -1,12 +1,12 @@
 /* -*- c++ -*- */
 /*
- * Copyright 2003,2004 Free Software Foundation, Inc.
+ * Copyright 2003,2004,2009 Free Software Foundation, Inc.
  * 
  * This file is part of GNU Radio
  * 
  * GNU Radio is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2, or (at your option)
+ * the Free Software Foundation; either version 3, or (at your option)
  * any later version.
  * 
  * GNU Radio is distributed in the hope that it will be useful,
@@ -16,8 +16,8 @@
  * 
  * You should have received a copy of the GNU General Public License
  * along with GNU Radio; see the file COPYING.  If not, write to
- * the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * the Free Software Foundation, Inc., 51 Franklin Street,
+ * Boston, MA 02110-1301, USA.
  */
 
 ////////////////////////////////////////////////////////////////////////
 // SWIG interface definition
 ////////////////////////////////////////////////////////////////////////
 
-
-#ifndef SWIGIMPORTED
-// we set the module name on the command line (not any more)
-%module(directors="1") gnuradio_swig_python
-#endif
-
 ////////////////////////////////////////////////////////////////////////
 // Headers
 
-
 %{
+#include "gnuradio_swig_bug_workaround.h"      // mandatory bug fix
 #include <gr_types.h>
 #include <stddef.h>            // size_t
 %}
 
 %feature("autodoc","1");
 
-%include <shared_ptr.i>
+// local file
+%include <gr_shared_ptr.i>
+
+// non-local SWIG files
 %include <stl.i>
 %include <std_complex.i>
-
+%include <std_except.i>
 
 typedef std::complex<float>            gr_complex;
 typedef std::complex<double>           gr_complexd;
@@ -60,7 +57,15 @@ namespace std {
   %template()    vector<int>;
   %template()    vector<float>;
   %template()    vector<double>;
-  %template()    vector<std::complex<float> >;
+
+  %template()    vector< std::complex<float> >;
+  %template()     vector< std::vector< unsigned char > >;
+  %template()     vector< std::vector< char > >;
+  %template()     vector< std::vector< short > >;
+  %template()     vector< std::vector< int > >;
+  %template()     vector< std::vector< float > >;
+  %template()     vector< std::vector< double > >;
+  %template()     vector< std::vector< std::complex<float> > >;
 };
 
 ////////////////////////////////////////////////////////////////////////
@@ -74,11 +79,9 @@ namespace std {
 
 ////////////////////////////////////////////////////////////////////////
 
-%include <runtime.i>
-%include <general.i>
-%include <filter.i>
-%include <io.i>
-
-// %include <atsc.i>
+#ifndef SW_RUNTIME
+// import runtime.i for all but sw_runtime, since it needs to %include
+%import <runtime.i>
+#endif
 
 ////////////////////////////////////////////////////////////////////////