discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] create uniform PMT vector from python


From: Tom Rondeau
Subject: Re: [Discuss-gnuradio] create uniform PMT vector from python
Date: Fri, 12 Apr 2013 19:28:12 -0400

On Thu, Apr 11, 2013 at 2:56 PM, Ben Reynwar <address@hidden> wrote:
> Just for the sake of anybody else who finds this mail thread when searching.
>
> Check out the file 'pmt_to_python.py' which resides at
> 'gnuradio-runtime/python/pmt/pmt_to_python.py' (the location pre-3.7
> is different).
>
> The two useful functions are:
> pmt.to_pmt - Converts a python object to a PMT object.
> pmt.python_to_pmt.python_to_pmt - Converts a PMT object to a python object.
>
> It can handle booleans, strings, integers, longs, floats, complex
> numbers, dictionaries, lists and tuples.
>
> I added a mention of these functions to the wiki.

Just FYI, the other way to do this is to use the "pmt.init_xxxvector"
call. It takes the number of items and list of items (as a Python
list) of the right data type as its arguments.

Tom


> On Thu, Apr 11, 2013 at 11:27 AM, Ben Reynwar <address@hidden> wrote:
>> Yes, that's perfect. Thanks.
>>
>> On Thu, Apr 11, 2013 at 10:58 AM, Martin Braun (CEL)
>> <address@hidden> wrote:
>>> Hi Ben,
>>>
>>> doesn't pmt.to_pmt(LIST) do what you want?
>>>
>>> Cheers,
>>> MB
>>>
>>> On Thu, Apr 11, 2013 at 10:03:21AM -0700, Ben Reynwar wrote:
>>>> Great, thanks.  I'm only using it for QA code so setting the elements
>>>> one by one like you suggest will work fine.
>>>>
>>>> On Thu, Apr 11, 2013 at 9:52 AM, Martin Luelf <address@hidden> wrote:
>>>> >> Hi all,
>>>> >>
>>>> >> Is there a way to create a uniform PMT vector from python?
>>>> >>
>>>> >> I can use, for example, 'pmt.make_c32vector(length, value)' to create
>>>> >> a vector where each element is 'value' but I don't see a way to modify
>>>> >> these values from python.
>>>> >>
>>>> >> If there isn't, are there any objections to overloading these
>>>> >> functions to take std::vectors as input so that we can pass in lists
>>>> >> from python?
>>>> >>
>>>> >> Cheers,
>>>> >> Ben
>>>> >
>>>> > Hi,
>>>> >
>>>> > I remember, I wasn't sure about the supposed way of doing that either for
>>>> > a u8vector. Finally I used the set method to set the individual elements
>>>> > like this:
>>>> > ------
>>>> > # elements as list
>>>> > values = (0xA1, ...)
>>>> >
>>>> > # create pmt vector with one default value for all elements
>>>> > pmtvector = pmt.pmt_make_u8vector(len(values), 0x00)
>>>> >
>>>> > # set the individual elements
>>>> > for i in xrange(len(values)) :
>>>> >         pmt.pmt_u8vector_set(pmtvector, i, values[i])
>>>> > ------
>>>> >
>>>> > Not nice, but it works for me. Although I agree that passing a list at
>>>> > construction would be very handy.
>>>> >
>>>> > Yours
>>>> > Martin
>>>> >
>>>> >
>>>> > _______________________________________________
>>>> > 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
>>>
>>> --
>>> Karlsruhe Institute of Technology (KIT)
>>> Communications Engineering Lab (CEL)
>>>
>>> Dipl.-Ing. Martin Braun
>>> Research Associate
>>>
>>> Kaiserstraße 12
>>> Building 05.01
>>> 76131 Karlsruhe
>>>
>>> Phone: +49 721 608-43790
>>> Fax: +49 721 608-46071
>>> www.cel.kit.edu
>>>
>>> KIT -- University of the State of Baden-Württemberg and
>>> National Laboratory of the Helmholtz Association
>>>
>>> _______________________________________________
>>> 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



reply via email to

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