José Fonseca wrote on 2010-01-20 14:32:
> On Wed, 2010-01-20 at 03:55 -0800, michal wrote:
>   
>> Jose,
>>
>> How one can upload data to buffers in python state tracker?
>>
>> I am trying to do the following:
>>
>> +    cb0_data = [
>> +        0.0, 0.0, 0.0, 0.0,
>> +        0.0, 0.0, 0.0, 1.0,
>> +        1.0, 1.0, 1.0, 1.0,
>> +        2.0, 4.0, 8.0, 1.0,
>> +    ]
>> +
>> +    constbuf0 = dev.buffer_create(
>> +        16,
>> +        PIPE_BUFFER_USAGE_CONSTANT |
>> +          PIPE_BUFFER_USAGE_GPU_READ |
>> +          PIPE_BUFFER_USAGE_GPU_WRITE |
>> +          PIPE_BUFFER_USAGE_CPU_READ |
>> +          PIPE_BUFFER_USAGE_CPU_WRITE,
>> +        4 * 4 * 4)
>> +
>> +    constbuf0.write_(cb0_data, 4 * 4 * 4)
>>
>> But I can't find a way to convert a list of floats to (char *). Do have 
>> an idea how to do it?
>>     
>
> Hi Michal,
>
> The Gallium -> Python bindings are autogenerated by SWIG and there are
> several things which are not very "pythonic". Writing data into/out of
> the buffers is one of them.
>
> ATM the only way to do this is using the python struct module, and pack
> the floats into a string... That is:
>
>   import struct
>   data = ''
>   data += struct.pack('4f', 1.0, 2.0, 3.0, 4.0)
>   ...
>
>   
That's perfect. Thanks, Jose.

------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to