discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] py_msg_queue__delete_head


From: Tom Rondeau
Subject: Re: [Discuss-gnuradio] py_msg_queue__delete_head
Date: Sun, 11 May 2014 10:17:30 -0400

On Sat, May 10, 2014 at 10:22 PM, chenjian <address@hidden> wrote:
Hi, All

I check the code in GNURadio 3.7.3,  gnuradio-3.7.3/gnuradio-runtime/swig/msg_queue.i

the code: 
 83 #ifdef SWIGPYTHON
 84 %inline %{
 85   gr::message::sptr py_msg_queue__delete_head(gr::msg_queue::sptr q) {
 86     gr::message::sptr msg;
 87     GR_PYTHON_BLOCKING_CODE(
 88         msg = q->delete_head();
 89     )
 90     return msg;
 91   }
 92
 93   void py_msg_queue__insert_tail(gr::msg_queue::sptr q, gr::message::sptr msg) {
 94     GR_PYTHON_BLOCKING_CODE(
 95         q->insert_tail(msg);
 96     )
 97   }
 98 %}

output is located in  "gnuradio-runtime/swig/runtime_swig.py"
the output is like: 
3791 def py_msg_queue__delete_head(*args, **kwargs):
3792   """py_msg_queue__delete_head(sptr q) -> sptr"""
3793   return _runtime_swig.py_msg_queue__delete_head(*args, **kwargs)
3794
3795 def py_msg_queue__insert_tail(*args, **kwargs):
3796   """py_msg_queue__insert_tail(sptr q, sptr msg)"""
3797   return _runtime_swig.py_msg_queue__insert_tail(*args, **kwargs)

Of course, the above in the gnuradio is work well.

I could not understand these swig output. so I write a small .i file to test this
  1 /* -*- c -*- */
  2 // swig2.0 -python *.i
  3 //swig2.0 -python -v -c++ *.i
  4
  5 %module(directors="1") util_swig
  6
  7 #ifdef SWIGPYTHON
  8 
  9
 10 %inline %{
 11   int fun1(int q) {
 12     return q;
 13   }
 14 %}
 15
 16 #endif

but there is one more line (see line 73  )  in the output file *.py 

 71 def fun1(*args):
 72   return _util_swig.fun1(*args)
 73 fun1 = _util_swig.fun1
 74 # This file is compatible with both classic and new-style classes.

Is it some configuration in other place lead the output to be different from the standard "swig command" ?

Thanks & Best Regards.

We are not meant to understand the workings of SWIG...

But seriously, this is a SWIG question and not a GNU Radio question. Best ask the SWIG developers.

Tom
 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]