discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] Python report typeError of argument for my block


From: Alex Zhang
Subject: Re: [Discuss-gnuradio] Python report typeError of argument for my block
Date: Thu, 15 Nov 2012 21:39:14 -0600

Thanks Josh,

Just found that my C++ interface is using type of uint64_t while I passed the data of time_t in python. And the python/SWIG cannot convert the time_t to uint64_t automatically, unlike in C++...

Changed the C++ interface to time_t and make the type conversion within the C++ code. The constructor works in python now.

But we do need to pay attention when c++ types is not recognized in python, assuming your suggestion is a solution. I will try this later for possible case.


On Thu, Nov 15, 2012 at 9:20 PM, Josh Blum <address@hidden> wrote:


On 11/15/2012 06:44 PM, Alex Zhang wrote:
> Hello,
>
> I wrote a signal block whose constructor has an argument of type
> "uint64_t".  But when in python it is constructed, the error is reported
> as TypeErrorL in method 'myblock', argument 1 of type 'uint64_t'.
>
> Then I changed the uint64_t to unsigned long long in my C++ code, but the
> python still report  TypeError for 'unsigned long long'.
>
> I am thinking that SWIG can not recognize the uint64_t and unsigned long
> long, so I need to do something like type mapping , but not know how to do
> it.
> Is there any example that I can follow?
>

It should be possible. Try adding %include <stdint.i> at the top of your
swig file.

-josh

> Thanks
>
>
>
> _______________________________________________
> Discuss-gnuradio mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>

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



--

Alex,
Dreams can come true – just believe.


reply via email to

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