I am attempting to build modified versions of gr_file_source, and
gr_file_sink outside of gnuradio-core.  I have successfully built, and
used my version of file_source (called rad_wvfm_source). However, I
cannot get my version of file_sink (called rad_wvfm_sink) to build into
a module so that it is callable from python.  My python QA script fails
with an AttributeError: 'module' object has no attribute 'wvfm_sink'.

I've attached my swig files. Any help is appreciated.

Thanks,
 - Lee

P.S. 

You can browse all the code at http://svn.pattoncentral.org, just click
gr_radar. If it is easier, you can check out the code with

$] svn co http://svn.pattoncentral.org/gr_radar --username=anon

and empty password.
/* -*- c++ -*- */
/*
 * Copyright 2004 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)
 * any later version.
 * 
 * GNU Radio is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * 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.
 */

%feature("autodoc", "1");               // generate python docstrings

%include "exception.i"
%import "gnuradio.i"                    // the common stuff

%{
#include "gnuradio_swig_bug_workaround.h"       // mandatory bug fix
#include <stdexcept>
%}

%{
#include <rad_wvfm_sink.h>
#include <rad_wvfm_source.h>
%}

%include "rad_wvfm_sink.i"
%include "rad_wvfm_source.i"
GR_SWIG_BLOCK_MAGIC(rad,wvfm_sink)

rad_wvfm_sink_sptr 
gr_make_wvfm_sink (size_t itemsize, const char *filename);

class rad_wvfm_sink : public gr_sync_block
{
 protected:
  rad_wvfm_sink (size_t itemsize, const char *filename);

 public:
  ~rad_wvfm_sink ();

  /*! 
   * \brief open filename and begin output to it.
   */
  bool open(const char *filename);

  /*!
   * \brief close current output file.
   */
  void close();
};
%constant int SEEK_SET = 0;     /* Seek from beginning of file. */
%constant int SEEK_CUR = 1;     /* Seek from current position.  */
%constant int SEEK_END = 2;     /* Seek from end of file.       */

GR_SWIG_BLOCK_MAGIC(rad,wvfm_source)

rad_wvfm_source_sptr 
rad_make_wvfm_source (size_t itemsize, const char *filename, bool repeat=false);

class rad_wvfm_source : public gr_sync_block
{
 protected:
  rad_wvfm_source (size_t itemsize, const char *filename, bool repeat);

 public:
  ~rad_wvfm_source ();

  bool seek (long seek_point, int whence);
};

_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to